1 #ifndef MarlinKalTest_h
2 #define MarlinKalTest_h
4 #include "MarlinTrk/IMarlinTrkSystem.h"
6 #ifdef MARLINTRK_DIAGNOSTICS_ON
7 #include "MarlinTrk/DiagnosticsController.h"
10 #include "gear/GearMgr.h"
14 #include "UTIL/BitField64.h"
15 #include "UTIL/LCTOOLS.h"
16 #include <LCRTRelations.h>
18 #include "streamlog/streamlog.h"
20 #include "TObjArray.h"
32 class ILDCylinderMeasLayer;
49 static const bool FitBackward = kIterBackward ;
50 static const bool FitForward = kIterForward ;
51 static const bool OrderOutgoing = true ;
52 static const bool OrderIncoming = false ;
65 virtual std::string
name() {
return "KalTest" ; }
92 const ILDVMeasLayer* findMeasLayer( EVENT::TrackerHit * trkhit)
const ;
94 const ILDVMeasLayer* findMeasLayer(
int detElementID,
const TVector3& point)
const ;
97 const ILDVMeasLayer* getLastMeasLayer(THelicalTrack
const& helix, TVector3
const& point)
const ;
99 const ILDCylinderMeasLayer* getIPLayer()
const {
return _ipLayer; }
101 const ILDCylinderMeasLayer* _ipLayer ;
103 const gear::GearMgr* _gearMgr ;
105 TKalDetCradle* _det ;
107 std::multimap< int,const ILDVMeasLayer *> _active_measurement_modules;
109 std::multimap< int,const ILDVMeasLayer *> _active_measurement_modules_by_layer;
112 #ifdef MARLINTRK_DIAGNOSTICS_ON
115 MarlinTrk::DiagnosticsController _diagnostics;
121 virtual void * getDiagnositicsPointer() {
return &_diagnostics ; }
Definition: MarlinKalTestTrack.h:39
Interface to KaltTest Kalman fitter - instantiates and holds the detector geometry.
Definition: MarlinKalTest.h:42
~MarlinKalTest()
d'tor
Definition: MarlinKalTest.cc:60
void includeEnergyLoss(bool on)
take energy loss into account during the fit
Definition: MarlinKalTest.cc:249
void init()
initialise track fitter system
Definition: MarlinKalTest.cc:70
void includeMultipleScattering(bool on)
take multiple scattering into account during the fit
Definition: MarlinKalTest.cc:238
Interface for generic tracks in MarlinTrk.
Definition: IMarlinTrack.h:28
void storeActiveMeasurementModuleIDs(TVKalDetector *detector)
Store active measurement module IDs for a given TVKalDetector needed for navigation.
Definition: MarlinKalTest.cc:322
void getSensitiveMeasurementModulesForLayer(int layerID, std::vector< const ILDVMeasLayer * > &measmodules) const
Store active measurement module IDs needed for navigation.
Definition: MarlinKalTest.cc:260
MarlinTrk::IMarlinTrack * createTrack()
instantiate its implementation of the IMarlinTrack
Definition: MarlinKalTest.cc:224
void getSensitiveMeasurementModules(int detElementID, std::vector< const ILDVMeasLayer * > &measmodules) const
Store active measurement module IDs needed for navigation.
Definition: MarlinKalTest.cc:299
Base class for tracking system implementations in MarlinTrk.
Definition: IMarlinTrkSystem.h:45
virtual std::string name()
the name of the implementation
Definition: MarlinKalTest.h:65
MarlinKalTest(const gear::GearMgr &gearMgr)
Default c'tor, initializes the geometry from GEAR.
Definition: MarlinKalTest.cc:42