torque Torque Game Engine Documentation
TGE Version 1.5.2

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
BreakpointmBreakpoints
bool mProgramPaused
bool mBreakOnNextStatement
S32 mStackPopBreakIndex

Data Structures

struct  Breakpoint


Member Enumeration Documentation

anonymous enum [private]

Enumerator:
Version 
PasswordMaxLength 
MaxCommandSize 

enum TelnetDebugger::State [private]

Enumerator:
NotConnected 
PasswordTry 
Initialize 
Connected 


Constructor & Destructor Documentation

TelnetDebugger::TelnetDebugger (  )  [private]

TelnetDebugger::~TelnetDebugger (  )  [private]


Member Function Documentation

Breakpoint** TelnetDebugger::findBreakpoint ( StringTableEntry  fileName,
S32  lineNumber 
) [private]

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 (  ) 

void TelnetDebugger::addAllBreakpoints ( CodeBlock code  ) 

void TelnetDebugger::clearCodeBlockPointers ( CodeBlock code  ) 

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

char TelnetDebugger::mDebuggerPassword[PasswordMaxLength+1] [private]

char TelnetDebugger::mLineBuffer[MaxCommandSize] [private]




All Rights Reserved GarageGames.com, Inc. 1999-2005
Auto-magically Generated with Doxygen