Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members
processManager Class Reference
Stores, servers and runs the algorithms and the multialgorithms.
More...
#include <processManager.h>
Inheritance diagram for processManager:
List of all members.
Detailed Description
Stores, servers and runs the algorithms and the multialgorithms.
ProcessManager stores the system and user declared algorithms.
ProcessManager returns the algorithms via the template method getAlgorithm()
.
General features:
- The user algorithms can declared in the class \ b userAlgorithms.
- The user can add algorithms via the method
addAlgorithm()
. - The method
getAlgorithm()
returns an algorithmVI called name from the protected server of algorithms. - In addition, the
run(name)
method will execute the run() method of the algorithm named. - A particular algorithm can be called application. In priciple, to run a full program.
runApplication()
method will execute the application.
Centella features:
- user can dinamically create multialgorithms and add them into the servers. The users can create algorithmTask, eventTask and algConditionalTask. All of them, are algorithms, and will be accesible via the
getAlgorithm()
method. - processManager has a protected server (serverVI) of eventTask. An eventTask is a multialgorithms with a collection of algorithms to be run for every event. The algorithms are clasified into generation, reconstruction and analysis parts. Proprely: an eventTask is an eventComposite algorithm with services provided by serviceI. These services An eventTask allows an external user (optionManager) to add algorithms to the generation, reconstruction and analysis part of the eventVI or add a new eventTask into another one.
- processManager has a protected server (serverVI) of algorithmTask. An algorithmTask is a multialgorithm. Properly An algorithmTask is an algorithmComposite with system services provided by serviceI. These services allow the possibility of an external user (most likely optionManager) to add algorithms to the algorithmComposite (see algorithmTask for more information).
- There is a fourth server with algConditionalTask. A conditionalTask is a angorithmConditional, an algorithm that runs if a condition of cutVI is fulfill. Properly: An algConditionalTask is an algorithmConditional with the services of serviceI. The user can create new algConditionalTask an add them into the server via the optionVI. Using the system services, an external user (again optionManager) can set the algorithm to run and the cut that needs to be fulfill.
- The Centella implementation of processManager has two already created algorithmTask named "iniOfRun" and "endOfRun", which should contain algorithms to be run at the start and end of the RUN.
- This implementation also has a main eventTask called "runEvent" where the eventTask defined by the user can be add to. The "runEvent" is the process called by the runEventAlg algorithm that executes one event.
- Note that either eventTask, algorithmTask and algConditionalTask are algorithmVI themselves, and can be retrieved using the
getAlgorithm()
method.
Definition at line 64 of file processManager.h.
Constructor & Destructor Documentation
processManager::processManager ( ) |
|
constructor - creates the algorithmUserServer.
Definition at line 9 of file processManager.cpp.
processManager::~processManager ( ) [inline, virtual] |
|
Member Function Documentation
void processManager::addAlgorithm (
|
std::string name, |
|
algorithmVI * alg ) |
|
void processManager::addAlgorithmTask (
|
std::string name, |
|
algorithmTask * alg ) |
|
void processManager::addEventTask (
|
std::string name, |
|
eventTask * evt ) |
|
void processManager::defineOption ( ) [inline, protected, virtual] |
|
algorithmVI * processManager::getAlgorithm (
|
std::string name ) const |
|
algorithmTask * processManager::getAlgorithmTask (
|
std::string name ) const |
|
eventTask * processManager::getEventTask (
|
std::string name ) const |
|
processManager * processManager::instance ( ) [inline, static] |
|
void processManager::run (
|
std::string name ) const [inline] |
|
void processManager::runApplication ( ) const [inline] |
|
void processManager::setOption (
|
std::string type, |
|
std::string name ) [inline, protected, virtual] |
|
create and include the evtProcess and endRunProcess that the User wants to execute.
create and add into the server the user defined algorithms
Reimplemented from optionVI.
Definition at line 48 of file processManager.cpp.
void processManager::writeOut ( ) const [inline, virtual] |
|
write the information of this class.
define "application" to set the name of the application algoritm
Reimplemented from messageVI.
Definition at line 168 of file processManager.cpp.
Member Data Documentation
std::string processManager::m_algConditionalTaskName [private] |
|
dummy - name of the conditionalTask to create.
Definition at line 134 of file processManager.h.
std::string processManager::m_algorithmTaskName [private] |
|
std::string processManager::m_applicationName [private] |
|
std::string processManager::m_eventTaskName [private] |
|
processManager * processManager::m_instance = 0 [static, private] |
|
The documentation for this class was generated from the following files:
Generated at Fri Aug 18 12:57:41 2000 for centella framework by
1.1.3 written by Dimitri van Heesch,
© 1997-2000