FRIBParallelanalysis  1.0
FrameworkforMPIParalleldataanalysisatFRIB
Public Member Functions | List of all members
CTCLStdioCommander Class Reference

#include <CTCLStdioCommander.h>

Inheritance diagram for CTCLStdioCommander:
Inheritance graph
[legend]
Collaboration diagram for CTCLStdioCommander:
Collaboration graph
[legend]

Public Member Functions

 CTCLStdioCommander (CTCLInterpreter *pInterp)
 
virtual ~CTCLStdioCommander ()
 
- Public Member Functions inherited from CTCLChannelCommander
 CTCLChannelCommander (CTCLInterpreter *interp, Tcl_Channel channel)
 
virtual ~CTCLChannelCommander ()
 
virtual void start ()
 
virtual void stop ()
 
Tcl_Channel getChannel () const
 
virtual void onInput ()
 
virtual void onInputException ()
 
virtual void onEndFile ()
 
virtual void onCommand ()
 
virtual void prompt1 ()
 
virtual void prompt2 ()
 
bool stopped () const
 

Additional Inherited Members

- Static Public Member Functions inherited from CTCLChannelCommander
static void inputRelay (ClientData pData, int mask)
 
- Protected Member Functions inherited from CTCLChannelCommander
std::string prompt1String ()
 
std::string prompt2String ()
 
std::string getPromptString (const char *scriptVariable, const char *defaultValue)
 
- Protected Attributes inherited from CTCLChannelCommander
CTCLInterpreterm_pInterp
 
Tcl_Channel m_channel
 
std::string m_command
 
bool m_active
 

Detailed Description

STDIO channel commander is a channel commander that prompts on stdout, and accepts commands on stdin. Registering this in the event loop, and then entering the event loop yields a powerful result, tcl with an event loop running but still accepting commands on stdin (event loop without the vwait command).

See also CTCLLiveEventLoop which is a class that can set this all up and contains the event loop code itself.

Constructor & Destructor Documentation

◆ CTCLStdioCommander()

CTCLStdioCommander::CTCLStdioCommander ( CTCLInterpreter pInterp)

Construction requires

  • Base class construction with the stdin channel
  • Initialization of the m_stdOut channel member data:

These can be determined using Tcl_GetStdChannel so we don't need the caller's help to get all this going:

Parameters
pInterp- Pointer to the interpreter object to which commands will be submitted.

◆ ~CTCLStdioCommander()

CTCLStdioCommander::~CTCLStdioCommander ( )
virtual

Destruction is a placeholder to ensure base class destruction is done.. that's where the action is.


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