10#include <tracking/trackFitting/measurementCreator/adder/MeasurementAdder.h>
11#include <framework/gearbox/Const.h>
12#include <framework/core/Environment.h>
13#include <tracking/dbobjects/DAFParameters.h>
14#include <tracking/dbobjects/DAFConfiguration.h>
152 const std::string& storeArrayNameOfPXDHits =
"",
153 const std::string& storeArrayNameOfSVDHits =
"",
154 const std::string& storeArrayNameOfCDCHits =
"",
155 const std::string& storeArrayNameOfBKLMHits =
"",
156 const std::string& storeArrayNameOfEKLMHits =
"",
157 const bool initializeCDCTranslators =
true,
158 bool fromTrackCreator =
false):
159 m_measurementAdder(storeArrayNameOfPXDHits, storeArrayNameOfSVDHits, storeArrayNameOfCDCHits,
160 storeArrayNameOfBKLMHits, storeArrayNameOfEKLMHits, initializeCDCTranslators, fromTrackCreator)
180 void resetFitter(
const std::shared_ptr<genfit::AbsFitter>& fitter);
220 bool fit(
RecoTrack& recoTrack, genfit::AbsTrackRep* trackRepresentation,
bool resortHits =
false)
const;
243 bool fit(
RecoTrack& recoTrack,
const int pdgCode,
bool resortHits =
false)
const;
261 bool fit(
RecoTrack& recoTrack,
bool resortHits =
false)
const;
283 const std::vector<std::shared_ptr<PXDBaseMeasurementCreator>>& pxdMeasurementCreators,
284 const std::vector<std::shared_ptr<SVDBaseMeasurementCreator>>& svdMeasurementCreators,
285 const std::vector<std::shared_ptr<CDCBaseMeasurementCreator>>& cdcMeasurementCreators,
286 const std::vector<std::shared_ptr<BKLMBaseMeasurementCreator>>& bklmMeasurementCreators,
287 const std::vector<std::shared_ptr<EKLMBaseMeasurementCreator>>& eklmMeasurementCreators,
288 const std::vector<std::shared_ptr<BaseMeasurementCreator>>& additionalMeasurementCreators)
291 svdMeasurementCreators,
292 cdcMeasurementCreators,
293 bklmMeasurementCreators,
294 eklmMeasurementCreators,
295 additionalMeasurementCreators);
316 const std::map<std::string, std::map<std::string, std::string>>& pxdMeasurementCreators,
317 const std::map<std::string, std::map<std::string, std::string>>& svdMeasurementCreators,
318 const std::map<std::string, std::map<std::string, std::string>>& cdcMeasurementCreators,
319 const std::map<std::string, std::map<std::string, std::string>>& bklmMeasurementCreators,
320 const std::map<std::string, std::map<std::string, std::string>>& eklmMeasurementCreators,
321 const std::map<std::string, std::map<std::string, std::string>>& additionalMeasurementCreators)
324 svdMeasurementCreators,
325 cdcMeasurementCreators,
326 bklmMeasurementCreators,
327 eklmMeasurementCreators,
328 additionalMeasurementCreators);
365 bool fitWithoutCheck(
RecoTrack& recoTrack,
const genfit::AbsTrackRep& trackRepresentation,
bool resortHits =
false)
const;
Provides a type-safe way to pass members of the chargedStableSet set.
ETrackFitType
Enum for identifying the type of track fit algorythm ( or cosmic)
@ c_Default
default configuration
The payload containing the DAF parameters.
Class for accessing objects in the database.
static Environment & Instance()
Static method to get a reference to the Environment instance.
Algorithm class to translate the added detector hits (e.g.
This is the Reconstruction Event-Data Model Track.
void resetMeasurementCreatorsUsingFactories(const std::map< std::string, std::map< std::string, std::string > > &pxdMeasurementCreators, const std::map< std::string, std::map< std::string, std::string > > &svdMeasurementCreators, const std::map< std::string, std::map< std::string, std::string > > &cdcMeasurementCreators, const std::map< std::string, std::map< std::string, std::string > > &bklmMeasurementCreators, const std::map< std::string, std::map< std::string, std::string > > &eklmMeasurementCreators, const std::map< std::string, std::map< std::string, std::string > > &additionalMeasurementCreators)
If you want to use non-default settings for the store arrays, you can create your own instances of th...
static int createCorrectPDGCodeForChargedStable(const Const::ChargedStable &particleType, const RecoTrack &recoTrack)
Helper function to multiply the PDG code of a charged stable with the charge of the reco track (if ne...
void resetMeasurementCreators(const std::vector< std::shared_ptr< PXDBaseMeasurementCreator > > &pxdMeasurementCreators, const std::vector< std::shared_ptr< SVDBaseMeasurementCreator > > &svdMeasurementCreators, const std::vector< std::shared_ptr< CDCBaseMeasurementCreator > > &cdcMeasurementCreators, const std::vector< std::shared_ptr< BKLMBaseMeasurementCreator > > &bklmMeasurementCreators, const std::vector< std::shared_ptr< EKLMBaseMeasurementCreator > > &eklmMeasurementCreators, const std::vector< std::shared_ptr< BaseMeasurementCreator > > &additionalMeasurementCreators)
If you want to use non-default settings for the store arrays, you can create your own instances of th...
static constexpr double s_defaultProbCut
Default probCut for the default DAF fitter.
DBObjPtr< DAFConfiguration > m_DAFConfiguration
DAF configuration Database OjbPtr.
void setgErrorIgnoreLevel(Int_t errorIgnoreLevel)
Set the gErrorIgnoreLevel for the fitter.
Int_t getgErrorIgnoreLevel()
Return the currently set gErrorIgnoreLevel for the fitter.
void resetMeasurementCreatorsToDefaultSettings()
Reset the internal measurement creator storage to the default settings.
bool fitWithoutCheck(RecoTrack &recoTrack, const genfit::AbsTrackRep &trackRepresentation, bool resortHits=false) const
Helper function to do the fit.
static constexpr double s_defaultDeltaPValue
Default deltaPValue for the default DAF fitter.
void resetFitterToDBSettings(const DAFConfiguration::ETrackFitType trackFitType=DAFConfiguration::c_Default)
Use the DB settings of the fitter to fit the reco tracks.
bool fit(RecoTrack &recoTrack, genfit::AbsTrackRep *trackRepresentation, bool resortHits=false) const
Fit a reco track with a given non-default track representation.
void resetFitter(const std::shared_ptr< genfit::AbsFitter > &fitter)
Set the internal storage of the fitter to a provided one, if you want to use non-default settings.
MeasurementAdder m_measurementAdder
The measurement adder algorithm class.
Int_t m_gErrorIgnoreLevel
Control the output level of the ROOT functions used by the GenFit fitter. Default is increased from k...
static constexpr unsigned int s_defaultMaxFailedHits
Default maxFailedHits for the default DAF fitter.
std::shared_ptr< genfit::AbsFitter > m_fitter
The internal storage of the used fitting algorithms.
bool m_skipDirtyCheck
Flag to skip the dirty flag check which is needed when using non-default fitters.
TrackFitter(const DAFConfiguration::ETrackFitType trackFitType=DAFConfiguration::c_Default, const std::string &storeArrayNameOfPXDHits="", const std::string &storeArrayNameOfSVDHits="", const std::string &storeArrayNameOfCDCHits="", const std::string &storeArrayNameOfBKLMHits="", const std::string &storeArrayNameOfEKLMHits="", const bool initializeCDCTranslators=true, bool fromTrackCreator=false)
Create a new fitter instance.
void resetFitterToUserSettings(DAFParameters *DAFParams)
Use the user settings of the fitter to fit the reco tracks.
void resetFitterToCosmicsSettings()
Use the settings of the fitter to fit the reco tracks for cosmics data.
Abstract base class for different kinds of events.