MarlinTrk
2.2.0
|
Factory methods for creating the MarlinTrkSystem of a certain type: KalTest, DDKalTest, aidaTT,...
Currently implemented: KalTest, DDKalTest.
More...
#include <Factory.h>
Static Public Member Functions | |
static IMarlinTrkSystem * | createMarlinTrkSystem (const std::string &systemType, const gear::GearMgr *gearMgr, const std::string &options) |
Create the MarlinTrkSystem instance of the specified type: KalTest, DDKalTest, aidaTT,... Returns 0 if type not implemented... More... | |
static IMarlinTrkSystem * | getMarlinTrkSystem (const std::string &systemType) |
Return the MarlinTrkSystem of the given type - only valid after a preceeding call to createMarlinTrkSystem() for that type, otherwise an exception is thrown. More... | |
static IMarlinTrkSystem * | getCurrentMarlinTrkSystem () |
Return the current MarlinTrkSystem, i.e. More... | |
static Factory * | instance () |
Protected Types | |
typedef std::map< std::string, IMarlinTrkSystem * > | TrkSystemMap |
Protected Attributes | |
IMarlinTrkSystem * | _currentTrkSystem |
TrkSystemMap | _map |
Factory methods for creating the MarlinTrkSystem of a certain type: KalTest, DDKalTest, aidaTT,...
Currently implemented: KalTest, DDKalTest.
The returned instance for a given type is cached, thus:
DO NOT DELETE THE POINTER at the end of your software module (Marlin processor) !
|
static |
Create the MarlinTrkSystem instance of the specified type:
KalTest, DDKalTest, aidaTT,...
Returns 0 if type not implemented...
DO NOT DELETE THE POINTER at the end of your software module (Marlin processor) !
For now only KalTest or DDKalTest.
|
static |
Return the current MarlinTrkSystem, i.e.
the one returned in the last call to createMarlinTrkSystem() or getMarlinTrkSystem() preceeding this call. To be used in cases where the concrete type of the tracking system does not matter - or when it is savely initialized in the enclosing software module (e.e. the Marlin processor).
DO NOT DELETE THE POINTER at the end of your software module (Marlin processor) !
Referenced by MarlinTrk::finaliseLCIOTrack().
|
static |
Return the MarlinTrkSystem of the given type - only valid after a preceeding call to createMarlinTrkSystem() for that type, otherwise an exception is thrown.
This is useful for several modules (e.g. Marlin processors) using the same IMarlinTrkSystem. It is the users responsibility to make sure one module has created it.
DO NOT DELETE THE POINTER at the end of your software module (Marlin processor) !