Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
DebugIONet Class Reference

#include <internal_io.h>

Inherits DebugIOInterface.

Public Member Functions

 DebugIONet (void)
 
virtual ~DebugIONet ()
 
virtual int Read (char *buf, int maxchar)
 Retrieves up to the given number of characters from a command input source.
 
virtual void Write (StringType type, const char *src, const char *str)
 Write out some characters differentiated by the log string type.
 
virtual void EmergencyFlush (void)
 Emergency shutdown function.
 
virtual void Execute (class Debug &dbg, const char *cmd, bool structuredCmd, unsigned argn, const char *const *argv)
 I/O class specific command.
 
virtual void Delete (void)
 Destroys the current I/O class instance.
 
- Public Member Functions inherited from DebugIOInterface
 DebugIOInterface (void)
 

Static Public Member Functions

static DebugIOInterfaceCreate (void)
 

Additional Inherited Members

- Public Types inherited from DebugIOInterface
enum  StringType {
  Assert = 0 , Check , Log , Crash ,
  Exception , CmdReply , StructuredCmdReply , Other ,
  MAX
}
 List of possible log string types. More...
 
- Protected Member Functions inherited from DebugIOInterface
virtual ~DebugIOInterface ()
 I/O class destructor.
 

Detailed Description

Definition at line 225 of file internal_io.h.

Constructor & Destructor Documentation

◆ DebugIONet()

DebugIONet::DebugIONet ( void )
explicit

Definition at line 32 of file debug_io_net.cpp.

◆ ~DebugIONet()

DebugIONet::~DebugIONet ( )
virtual

Definition at line 36 of file debug_io_net.cpp.

Member Function Documentation

◆ Create()

DebugIOInterface * DebugIONet::Create ( void )
static

Definition at line 119 of file debug_io_net.cpp.

◆ Delete()

void DebugIONet::Delete ( void )
virtual

Destroys the current I/O class instance.

Use this function instead of just delete'ing the instance.

Implements DebugIOInterface.

Definition at line 124 of file debug_io_net.cpp.

◆ EmergencyFlush()

void DebugIONet::EmergencyFlush ( void )
virtual

Emergency shutdown function.

This function gets called during an exception and should perform the absolute bare minimum (e.g. just flushing and closing the output file).

Implements DebugIOInterface.

Definition at line 79 of file debug_io_net.cpp.

◆ Execute()

void DebugIONet::Execute ( class Debug & dbg,
const char * cmd,
bool structuredCmd,
unsigned argn,
const char *const * argv )
virtual

I/O class specific command.

All io <class> commands are passed into this function, with the exception of remove which results in simply calling the class destructor.

Parameters
dbgdebug instance
cmdcommand issued
structuredCmdtrue if structured command reply, false if not
argnnumber of additional arguments passed in
argvargument list

Implements DebugIOInterface.

Definition at line 83 of file debug_io_net.cpp.

◆ Read()

int DebugIONet::Read ( char * buf,
int maxchar )
virtual

Retrieves up to the given number of characters from a command input source.

This source can be e.g. keyboard or a network pipe. This function must not block.

Parameters
bufbuffer to place read characters in
maxcharmaximum number of characters to return
Returns
numbers of characters written to buffer
Note
There is no terminating NUL char written to the buffer

Implements DebugIOInterface.

Definition at line 42 of file debug_io_net.cpp.

◆ Write()

void DebugIONet::Write ( StringType type,
const char * src,
const char * str )
virtual

Write out some characters differentiated by the log string type.

Parameters
typepossible string type
srcstring source, may be NULL, content depends on type:
typesrc
Assertfile(line)
Checkfile(line)
Loglog group
Crashfile(line)
ExceptionNULL
CmdReplygroup.command
StructuredCmdReplygroup.command
OtherNULL
strstring to output, NUL delimited, if NULL then simply flush output (if applicable)

Implements DebugIOInterface.

Definition at line 59 of file debug_io_net.cpp.


The documentation for this class was generated from the following files: