TelnetDebugger Class Reference#include <telnetDebugger.h>
Detailed Description
Telnet debug service implementation.
This is the C++ side of the built-in Torque debugger.
To use the debugger, use dbgSetParameters(port, password); in the console of the server to enable debugger connections. Then on some other system, start up the app (you don't have to start a game or connect to the server) and exec("common/debugger/debugger.cs"); in the console. Then use the debugger GUI to connect to the server with the right port and password.
- See also:
- http://www.planettribes.com/tribes2/editing.shtml for more thorough discussion.
|
Public Member Functions |
void | disconnect () |
bool | isConnected () const |
void | process () |
void | popStackFrame () |
void | pushStackFrame () |
void | addAllBreakpoints (CodeBlock *code) |
void | clearCodeBlockPointers (CodeBlock *code) |
virtual void | executionStopped (CodeBlock *code, U32 lineNumber) |
void | send (const char *s) |
void | setDebugParameters (S32 port, const char *password, bool waitForClient) |
void | processConsoleLine (const char *consoleLine) |
Static Public Member Functions |
static void | create () |
static void | destroy () |
Private Types |
enum | {
Version = 2,
PasswordMaxLength = 32,
MaxCommandSize = 2048
} |
enum | State {
NotConnected,
PasswordTry,
Initialize,
Connected
} |
Private Member Functions |
| TelnetDebugger () |
| ~TelnetDebugger () |
Breakpoint ** | findBreakpoint (StringTableEntry fileName, S32 lineNumber) |
void | addVariableBreakpoint (const char *varName, S32 passCount, const char *evalString) |
void | removeVariableBreakpoint (const char *varName) |
void | addBreakpoint (const char *fileName, S32 line, bool clear, S32 passCount, const char *evalString) |
void | removeBreakpoint (const char *fileName, S32 line) |
void | removeAllBreakpoints () |
void | debugBreakNext () |
void | debugContinue () |
void | debugStepIn () |
void | debugStepOver () |
void | debugStepOut () |
void | evaluateExpression (const char *tag, S32 frame, const char *evalBuffer) |
void | dumpFileList () |
void | dumpBreakableList (const char *fileName) |
void | removeBreakpointsFromCode (CodeBlock *code) |
void | sendBreak () |
void | checkDebugRecv () |
void | processLineBuffer (S32) |
void | breakProcess () |
void | setBreakOnNextStatement (bool enabled) |
Private Attributes |
S32 | mAcceptPort |
NetSocket | mAcceptSocket |
NetSocket | mDebugSocket |
char | mDebuggerPassword [PasswordMaxLength+1] |
S32 | mState |
char | mLineBuffer [MaxCommandSize] |
S32 | mCurPos |
bool | mWaitForClient |
Breakpoint * | mBreakpoints |
bool | mProgramPaused |
bool | mBreakOnNextStatement |
S32 | mStackPopBreakIndex |
Data Structures |
struct | Breakpoint |
Member Enumeration Documentation
- Enumerator:
-
Version |
|
PasswordMaxLength |
|
MaxCommandSize |
|
- Enumerator:
-
NotConnected |
|
PasswordTry |
|
Initialize |
|
Connected |
|
Constructor & Destructor Documentation
TelnetDebugger::TelnetDebugger |
( |
|
) |
[private] |
TelnetDebugger::~TelnetDebugger |
( |
|
) |
[private] |
Member Function Documentation
void TelnetDebugger::addVariableBreakpoint |
( |
const char * |
varName, |
|
|
S32 |
passCount, |
|
|
const char * |
evalString | |
|
) |
| | [private] |
void TelnetDebugger::removeVariableBreakpoint |
( |
const char * |
varName |
) |
[private] |
void TelnetDebugger::addBreakpoint |
( |
const char * |
fileName, |
|
|
S32 |
line, |
|
|
bool |
clear, |
|
|
S32 |
passCount, |
|
|
const char * |
evalString | |
|
) |
| | [private] |
void TelnetDebugger::removeBreakpoint |
( |
const char * |
fileName, |
|
|
S32 |
line | |
|
) |
| | [private] |
void TelnetDebugger::removeAllBreakpoints |
( |
|
) |
[private] |
void TelnetDebugger::debugBreakNext |
( |
|
) |
[private] |
void TelnetDebugger::debugContinue |
( |
|
) |
[private] |
void TelnetDebugger::debugStepIn |
( |
|
) |
[private] |
void TelnetDebugger::debugStepOver |
( |
|
) |
[private] |
void TelnetDebugger::debugStepOut |
( |
|
) |
[private] |
void TelnetDebugger::evaluateExpression |
( |
const char * |
tag, |
|
|
S32 |
frame, |
|
|
const char * |
evalBuffer | |
|
) |
| | [private] |
void TelnetDebugger::dumpFileList |
( |
|
) |
[private] |
void TelnetDebugger::dumpBreakableList |
( |
const char * |
fileName |
) |
[private] |
void TelnetDebugger::removeBreakpointsFromCode |
( |
CodeBlock * |
code |
) |
[private] |
void TelnetDebugger::sendBreak |
( |
|
) |
[private] |
void TelnetDebugger::checkDebugRecv |
( |
|
) |
[private] |
void TelnetDebugger::processLineBuffer |
( |
S32 |
|
) |
[private] |
void TelnetDebugger::breakProcess |
( |
|
) |
[private] |
void TelnetDebugger::setBreakOnNextStatement |
( |
bool |
enabled |
) |
[private] |
static void TelnetDebugger::create |
( |
|
) |
[static] |
static void TelnetDebugger::destroy |
( |
|
) |
[static] |
void TelnetDebugger::disconnect |
( |
|
) |
|
bool TelnetDebugger::isConnected |
( |
|
) |
const [inline] |
void TelnetDebugger::process |
( |
|
) |
|
void TelnetDebugger::popStackFrame |
( |
|
) |
|
void TelnetDebugger::pushStackFrame |
( |
|
) |
|
virtual void TelnetDebugger::executionStopped |
( |
CodeBlock * |
code, |
|
|
U32 |
lineNumber | |
|
) |
| | [virtual] |
void TelnetDebugger::send |
( |
const char * |
s |
) |
|
void TelnetDebugger::setDebugParameters |
( |
S32 |
port, |
|
|
const char * |
password, |
|
|
bool |
waitForClient | |
|
) |
| | |
void TelnetDebugger::processConsoleLine |
( |
const char * |
consoleLine |
) |
|
Field Documentation
|