Nymph
v1.5.2
Flow-Based Data Processing Framework
|
Interface for the command-line handler and the configurator. More...
#include <KTApplication.hh>
Public Member Functions | |
KTApplication () | |
KTApplication (int argC, char **argV, bool requireArgs=true, const scarab::param_node &defaultConfig=scarab::param_node()) | |
Constructor to use with command-line options; includes parsing of the command line by KTCommandLineHandler (except for config-file-dependent options) More... | |
virtual | ~KTApplication () |
virtual bool | Configure (const scarab::param_node &node) |
Should perform parameter store and command-line configurations. More... | |
KTCommandLineHandler * | GetCommandLineHandler () const |
const KTConfigurator * | GetConfigurator () const |
const std::string & | GetConfigFilename () const |
void | AddEventLoop (KTEventLoop *loop) |
void | RemoveEventLoop (KTEventLoop *loop) |
Adds loop to the set of event loops overseen by KTApplication. Does NOT assume ownership of an event loop. More... | |
![]() | |
KTConfigurable (const std::string &name="default-name") | |
virtual | ~KTConfigurable () |
bool | Configure (const std::string &config) |
Implement the option for calling Configure without passing a parameter store node. More... | |
const std::string & | GetConfigName () const |
void | SetConfigName (const std::string &name) |
Protected Attributes | |
KTCommandLineHandler * | fCLHandler |
Removes loop from the set of event loops overseen by KTApplication. Does not stop the loop. More... | |
KTConfigurator * | fConfigurator |
std::string | fConfigFilename |
std::set< KTEventLoop *> | fEventLoops |
![]() | |
KTCommandLineHandler * | fCLHandler |
std::string | fConfigName |
Private Member Functions | |
void | AddConfigOptionsToCLHandler (const scarab::param ¶m, const std::string &rootName) |
Interface for the command-line handler and the configurator.
The interface implemented here is meant to simplify the use of the command line and parameter store.
The basic format for the command line arguments are as follows:
When creating an application, the user would perform the following steps:
Event Loops: KTApplication can oversee the running of event loops. It takes a very light-handed approach to that oversight. In the event that the KTApplication object is deleted, all loops it knows about will be stopped. Event loops are not deleted. If an event loop is going out of scope before the KTApplication object, the user should make sure to remove it from KTApplication's oversight.
Definition at line 56 of file KTApplication.hh.
KTApplication | ( | ) |
Definition at line 25 of file KTApplication.cc.
KTApplication | ( | int | argC, |
char ** | argV, | ||
bool | requireArgs = true , |
||
const scarab::param_node & | defaultConfig = scarab::param_node() |
||
) |
Constructor to use with command-line options; includes parsing of the command line by KTCommandLineHandler (except for config-file-dependent options)
Definition at line 33 of file KTApplication.cc.
|
virtual |
Definition at line 111 of file KTApplication.cc.
|
private |
Definition at line 120 of file KTApplication.cc.
void AddEventLoop | ( | KTEventLoop * | loop | ) |
Definition at line 162 of file KTApplication.cc.
|
virtual |
Should perform parameter store and command-line configurations.
Implements KTConfigurable.
Definition at line 157 of file KTApplication.cc.
|
inline |
Definition at line 89 of file KTApplication.hh.
|
inline |
Definition at line 99 of file KTApplication.hh.
|
inline |
Definition at line 94 of file KTApplication.hh.
void RemoveEventLoop | ( | KTEventLoop * | loop | ) |
Adds loop to the set of event loops overseen by KTApplication. Does NOT assume ownership of an event loop.
Definition at line 168 of file KTApplication.cc.
|
protected |
Removes loop from the set of event loops overseen by KTApplication. Does not stop the loop.
Definition at line 80 of file KTApplication.hh.
|
protected |
Definition at line 83 of file KTApplication.hh.
|
protected |
Definition at line 81 of file KTApplication.hh.
|
protected |
Definition at line 85 of file KTApplication.hh.