SctAnalysis::AnalysisAlgorithmMap Class Reference

AnalysisAlgorithmMap maps Tests to AnalysisAlgorithms. More...

#include <AnalysisAlgorithmMap.h>


Public Member Functions

shared_ptr< AnalysisAlgorithmgetAlgorithm (shared_ptr< const TestData > testData, const string &moduleName) const throw (Sct::InvalidArgument)
bool setAlgorithm (const string testName, auto_ptr< AnalysisAlgorithm > alg) throw ()
 Sets the algorithm for a given Test name.
string getStatus (string testName)
 Gets a status string for a given type of test.
string getAllStatus ()
 Gets the status for all test types.
std::list< std::string > listAlgorithms ()
 get a list of the names of all algorithms.

Static Public Member Functions

static AnalysisAlgorithmMapinstance ()
 Get the singleton instance.

Private Member Functions

 AnalysisAlgorithmMap ()

Private Attributes

map< string, shared_ptr< AnalysisAlgorithm > > algMap
 The map.


Detailed Description

AnalysisAlgorithmMap maps Tests to AnalysisAlgorithms.

It is currently done using the Test name.

Author:
Matthew Palmer
Date:
11 June 2003

Definition at line 27 of file AnalysisAlgorithmMap.h.


Member Function Documentation

shared_ptr< AnalysisAlgorithm > SctAnalysis::AnalysisAlgorithmMap::getAlgorithm shared_ptr< const TestData testData,
const string &  moduleName
const throw (Sct::InvalidArgument)
 

Parameters:
test The name of the test to analyze
Returns:
An AnalysisAlgorithm of the type registered for test
Exceptions:
InvalidArgument if test is not in the map

Definition at line 17 of file AnalysisAlgorithmMap.cpp.

Referenced by SctAnalysis::AnalysisWorkerGroup::TestAlgs::addAlgorithm().

string SctAnalysis::AnalysisAlgorithmMap::getAllStatus  ) 
 

Gets the status for all test types.

Note:
Nothrow

Definition at line 51 of file AnalysisAlgorithmMap.cpp.

References algMap.

Referenced by SctAnalysis::AnalysisService::status().

string SctAnalysis::AnalysisAlgorithmMap::getStatus string  testName  ) 
 

Gets a status string for a given type of test.

Note:
Nothrow

Definition at line 44 of file AnalysisAlgorithmMap.cpp.

References algMap.

AnalysisAlgorithmMap & SctAnalysis::AnalysisAlgorithmMap::instance  )  [static]
 

Get the singleton instance.

Definition at line 12 of file AnalysisAlgorithmMap.cpp.

References AnalysisAlgorithmMap().

Referenced by SctAnalysis::AnalysisWorkerGroup::TestAlgs::addAlgorithm(), SctAnalysis::AnalysisService::listAlgorithms(), and SctAnalysis::AnalysisService::status().

Here is the call graph for this function:

std::list< std::string > SctAnalysis::AnalysisAlgorithmMap::listAlgorithms  ) 
 

get a list of the names of all algorithms.

These can be used in TestRequest s.

Definition at line 59 of file AnalysisAlgorithmMap.cpp.

References algMap.

Referenced by SctAnalysis::AnalysisService::listAlgorithms().

bool SctAnalysis::AnalysisAlgorithmMap::setAlgorithm const string  testName,
auto_ptr< AnalysisAlgorithm alg
throw ()
 

Sets the algorithm for a given Test name.

May only be called prior to multi-threading! I.e. at static initialization time.

Parameters:
testName the name of the Test
alg the AnalysisAlgorithm that can analyze them
Returns:
true if successful

Definition at line 38 of file AnalysisAlgorithmMap.cpp.


Field Documentation

map<string, shared_ptr<AnalysisAlgorithm> > SctAnalysis::AnalysisAlgorithmMap::algMap [private]
 

The map.

Definition at line 70 of file AnalysisAlgorithmMap.h.

Referenced by getAllStatus(), getStatus(), and listAlgorithms().


The documentation for this class was generated from the following files:
Generated on Mon Feb 6 14:03:37 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6