DebugProgramControl::DebugProgramControl Class Referenceabstract

Class implementing DebugProgram control using commands. More...

Inherits DebugProgram, and AbstractDebugControl.

## Public Member Functions

abstract | broadcastDataImpl (auto data)
| send data to all clients
| connectionRegistered (hash cx)
| send welcome message
| constructor (string serverName)
| creates the object
Program | createProgram (string fileName, *hash opts, list args, *string script)
| Create new program.
| destructor ()
| resumes any blocked threads and destroys the object
list | getConnectionIds ()
| get list of connection ids More...
*hash | processCommand (hash cx, hash receiveData)
| process message in debugging thread, if message is related to debugged thread then put it in particular queue
| registerConnection (hash cx)
| register context for new connection
abstract | sendDataImpl (hash cx, auto data)
| send data to particular client
| shutdown ()
| resume any blocked threads
| unregisterAllConnections ()
| unregister all connections
| unregisterConnection (hash cx)
| unregister a connection context

## Public Attributes

const | DEFAULT_LINES_AFTER = 3
| default number of lines listed after current code position
const | DEFAULT_LINES_BEFORE = 3
| default number of lines listed before current code position

## Protected Member Functions

*int | runAndDetach (Program pgm)
| run and remove program from debugging
Qore::Thread::RWLock | rwlConnection ()
| lock for ctxConnection access
Qore::Thread::RWLock | rwlThread ()
| lock for ctxThread access

## Protected Attributes

hash | ctxConnection
| data pool for data related to cx.id
hash | ctxThread
| data pool related to suspended thread, key is threadId
const | frameOffset = 2
| number of frames related to DebugProgramControl library when handleInterrupt() is invoked
string | serverName
| server name
string | sourceSearchPath = ""
| source file search path

## Detailed Description

Class implementing DebugProgram control using commands.

## Member Function Documentation

## getConnectionIds()

list DebugProgramControl::DebugProgramControl::getConnectionIds | ( |  | ) |

get list of connection ids

Note: Calling party should consider threads calling class register/unregister methods