1 //===-- StringExtractorGDBRemote.h ------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef utility_StringExtractorGDBRemote_h_
11 #define utility_StringExtractorGDBRemote_h_
16 // Other libraries and framework includes
18 #include "Utility/StringExtractor.h"
20 class StringExtractorGDBRemote : public StringExtractor
24 StringExtractorGDBRemote() :
29 StringExtractorGDBRemote(const char *cstr) :
30 StringExtractor (cstr)
33 StringExtractorGDBRemote(const StringExtractorGDBRemote& rhs) :
38 virtual ~StringExtractorGDBRemote()
44 eServerPacketType_nack = 0,
45 eServerPacketType_ack,
46 eServerPacketType_invalid,
47 eServerPacketType_unimplemented,
48 eServerPacketType_interrupt, // CTRL+c packet or "\x03"
49 eServerPacketType_A, // Program arguments packet
50 eServerPacketType_qfProcessInfo,
51 eServerPacketType_qsProcessInfo,
53 eServerPacketType_qGroupName,
54 eServerPacketType_qHostInfo,
55 eServerPacketType_qLaunchGDBServer,
56 eServerPacketType_qLaunchSuccess,
57 eServerPacketType_qProcessInfoPID,
58 eServerPacketType_qSpeedTest,
59 eServerPacketType_qUserName,
60 eServerPacketType_QEnvironment,
61 eServerPacketType_QSetDisableASLR,
62 eServerPacketType_QSetSTDIN,
63 eServerPacketType_QSetSTDOUT,
64 eServerPacketType_QSetSTDERR,
65 eServerPacketType_QSetWorkingDir,
66 eServerPacketType_QStartNoAckMode
70 GetServerPacketType () const;
83 GetResponseType () const;
89 IsUnsupportedResponse() const;
92 IsNormalResponse () const;
95 IsErrorResponse() const;
97 // Returns zero if the packet isn't a EXX packet where XX are two hex
98 // digits. Otherwise the error encoded in XX is returned.
103 #endif // utility_StringExtractorGDBRemote_h_