bes  Updated for version 3.20.6
CmdApp Class Reference
Collaboration diagram for CmdApp:
Collaboration graph

Public Member Functions

std::string appName (void) const
 Returns the name of the application. More...
 
CmdClientclient ()
 
virtual void dump (std::ostream &strm) const
 dumps information about this object More...
 
virtual int initialize (int argC, char **argV)
 Initialize the application using the passed argc and argv values. More...
 
virtual int main (int argC, char **argV)
 main routine, the main entry point for any BES applications. More...
 
virtual int run ()
 The body of the application, implementing the primary functionality of the BES application. More...
 
virtual int terminate (int sig=0)
 Clean up after the application. More...
 

Static Public Member Functions

static void signalBrokenPipe (int sig)
 
static void signalCannotConnect (int sig)
 
static void signalInterrupt (int sig)
 
static void signalTerminate (int sig)
 
static BESAppTheApplication (void)
 Returns the BESApp application object for this application. More...
 

Protected Attributes

std::string _appName
 
bool _debug
 
bool _isInitialized
 

Static Protected Attributes

static BESApp_theApplication = 0
 

Detailed Description

Definition at line 39 of file CmdApp.h.

Member Function Documentation

◆ appName()

std::string BESApp::appName ( void  ) const
inlineinherited

Returns the name of the application.

The name of the application is typically argv[0] passed into the main function. But could be passed into the application or derived in a different way.

Returns
name of the application

Definition at line 128 of file BESApp.h.

◆ dump()

void CmdApp::dump ( std::ostream &  strm) const
virtual

dumps information about this object

Displays the pointer value of this instance

Parameters
strmC++ i/o stream to dump the information to

Implements BESApp.

Definition at line 417 of file CmdApp.cc.

◆ initialize()

int CmdApp::initialize ( int  argC,
char **  argV 
)
virtual

Initialize the application using the passed argc and argv values.

initialize the BES application

It is up to the derived classes of BESApp to implement the initialize method.

Parameters
argCnumber of arguments passed to the application, which is argc passed to the main function.
argVarguments passed to the application, which is argv passed to the main function.
Returns
0 if successful and not 0 otherwise
Parameters
argCargc value passed to the main function
argVargv value passed to the main function
Exceptions
BESErrorif any exceptions or errors are encountered

Reimplemented from BESApp.

Definition at line 199 of file CmdApp.cc.

◆ main()

int BESApp::main ( int  argC,
char **  argV 
)
virtualinherited

main routine, the main entry point for any BES applications.

main method of the BES application

It is up to the derived classes of BESApp to implement the main routine. However, the main method should call initialize, run and terminate in that order and should pass to the initialize routine the arguments argc and argv passed to the main function.

Parameters
argCnumber of arguments passed to the application, which is argc passed to the main function.
argVarguments passed to the application, which is argv passed to the main function.

sets the appName to argv[0], then calls initialize, run, and terminate in that order. Exceptions should be caught in the individual methods initialize, run and terminate and handled there.

Returns
0 if successful and not 0 otherwise
Parameters
argCargc value passed to the main function
argVargv value passed to the main function

Definition at line 54 of file BESApp.cc.

◆ run()

int CmdApp::run ( )
virtual

The body of the application, implementing the primary functionality of the BES application.

the applications functionality is implemented in the run method

It is up to the derived classes of BESApp to implement the run method.

It is up to the derived class to implement this method.

Returns
0 if successful and not 0 otherwise
Exceptions
BESErrorif the derived class does not implement this method

Reimplemented from BESApp.

Definition at line 330 of file CmdApp.cc.

◆ terminate()

int BESApp::terminate ( int  sig = 0)
virtualinherited

Clean up after the application.

clean up after the application

It is up to the derived classes of BESApp to implement the terminate method. Memory cleanup, file descriptor cleanup, etc... might go in this method.

Parameters
sigif the applicaiton is terminating due to a signal, pass the signal to terminate routine.

Cleans up any global variables registered with BESGlobalIQ

Returns
0 if successful and not 0 otherwise
Parameters
sigif the application is terminating due to a signal, otherwise 0 is passed.
See also
BESGlobalIQ

Reimplemented in BESModuleApp, ServerApp, and StandAloneApp.

Definition at line 102 of file BESApp.cc.

◆ TheApplication()

static BESApp* BESApp::TheApplication ( void  )
inlinestaticinherited

Returns the BESApp application object for this application.

Returns
The application object

Definition at line 137 of file BESApp.h.


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