 |
Belle II Software
release-05-02-19
|
14 #ifndef TRGCDCFitter3D_FLAG_
15 #define TRGCDCFitter3D_FLAG_
23 #ifdef TRGCDC_SHORT_NAMES
24 #define TCFitter3D TRGCDCFitter3D
35 class TRGCDCSegmentHit;
38 class TRGCDCJSignalData;
47 const std::string& rootFitter3DFile,
49 const std::map<std::string, bool>& flags);
61 int doit(std::vector<TRGCDCTrack*>& trackList);
64 int doitComplex(std::vector<TRGCDCTrack*>& trackList);
70 std::map<std::string, double>& m_mDouble_in, std::map<std::string, std::vector<double> >& m_mVector_in);
91 static int do2DFit(
TRGCDCTrack& aTrack, std::map<std::string, bool>& m_mBool_in, std::map<std::string, double>& m_mConstD_in,
92 std::map<std::string, std::vector<double> >& m_mConstV_in, std::map<std::string, double>& m_mDouble_in,
93 std::map<std::string, std::vector<double> >& m_mVector_in);
107 std::string
name(
void)
const;
109 std::string
version(
void)
const;
112 static void getStereoGeometry(std::map<std::string, std::vector<double> >& stGeometry);
115 static void getStereoXt(std::vector<double>
const& stPriorityLayer, std::vector<std::vector<double> >& stXts,
bool isSimple = 0);
118 static void getConstants(std::map<std::string, double>& mConstD, std::map<std::string, std::vector<double> >& mConstV,
119 bool isXtSimple = 0);
std::map< std::string, TRGCDCJSignal > m_mSignalStorage
Map to hold JSignals.
TFile * m_fileFitter3D
Tfile for Fitter3D root file.
TTree * m_treeConstantsFitter3D
TTree for constants of fitter3D.
static void getMCValues(const TRGCDC &m_cdc_in, TRGCDCTrack *aTrack, std::map< std::string, double > &m_mConstD_in, std::map< std::string, double > &m_mDouble_in, std::map< std::string, std::vector< double > > &m_mVector_in)
Function for mc debugging.
int doitComplex(std::vector< TRGCDCTrack * > &trackList)
Does track fitting using JSignals.
std::map< std::string, TRGCDCJLUT * > m_mLutStorage
Map to hold JLuts.
std::map< std::string, std::vector< double > > m_mVector
Map to hold vector values for Fitter3D.
std::map< std::string, TVectorD * > m_mTVectorD
TVectorD map for saving values to root file.
static void getStereoGeometry(std::map< std::string, std::vector< double > > &stGeometry)
Get stereo geometry.
void saveAllSignals()
Saves all signals for debugging.
void terminate()
Termination.
static void selectAxialTSs(TRGCDCTrack &aTrack, std::vector< int > &bestTSIndex)
Selects priority TSs when there are multiple candidate TSs for a superlayer.
std::string name(void) const
Gets name of class.
TRGCDCJSignalData * m_commonData
For VHDL code.
static void getConstants(std::map< std::string, double > &mConstD, std::map< std::string, std::vector< double > > &mConstV, bool isXtSimple=0)
Get constants for firmwareFit.
std::map< std::string, TClonesArray * > m_mTClonesArray
TClonesArray map for saving values to root file.
static void getStereoXt(std::vector< double > const &stPriorityLayer, std::vector< std::vector< double > > &stXts, bool isSimple=0)
Get stereo Xt.
std::map< std::string, std::vector< signed long long > > m_mSavedIoSignals
Array of I/O signals.
std::map< std::string, std::vector< double > > m_mConstV
Map to hold constant vectcors for Fitter3D.
static int do2DFit(TRGCDCTrack &aTrack, std::map< std::string, bool > &m_mBool_in, std::map< std::string, double > &m_mConstD_in, std::map< std::string, std::vector< double > > &m_mConstV_in, std::map< std::string, double > &m_mDouble_in, std::map< std::string, std::vector< double > > &m_mVector_in)
Does 2D fit. Returns 0 if fit is done successfully. m_mBool should have fIsPrintError,...
A class to hold common data for JSignals.
std::map< std::string, std::vector< signed long long > > m_mSavedSignals
Array of saved signals.
bool isAxialTrackFull(TRGCDCTrack &aTrack)
Checks if axial track has 5 TSs. One per each superlayer.
Abstract base class for different kinds of events.
static double calPhi(TRGCDCSegmentHit const *segmentHit, double eventTime)
Utility functions.
int doit(std::vector< TRGCDCTrack * > &trackList)
Does track fitting.
A class to represent a track segment hit in CDC.
virtual ~TRGCDCFitter3D()
Destructor.
static void findHitAxialSuperlayers(TRGCDCTrack &aTrack, std::vector< double > &useAxSL, bool printError)
Finds which axial superlayers has TSs. useAxSL array indicating hit superlayers.
std::string version(void) const
Gets version of class.
The instance of TRGCDC is a singleton.
std::map< std::string, bool > m_mBool
Map to hold input options.
const TRGCDC & m_cdc
CDCTRG.
bool isStereoTrackFull(TRGCDCTrack &aTrack)
Checks if stereo track has 4 TSs. One per each superlayer.
static void findHitStereoSuperlayers(TRGCDCTrack &aTrack, std::vector< double > &useStSL, bool printError)
Finds which stereo superlayers has TSs. useStSL array indicating hit superlayers.
A class to represent a reconstructed charged track in TRGCDC.
void removeImpossibleStereoSuperlayers(std::vector< double > &useStSL)
Removes TSs that are not possible with track Pt.
std::map< std::string, double > m_mConstD
Map to hold constant values for Fitter3D.
const std::string m_name
Name.
std::map< std::string, double > m_mDouble
Map to hold double values for Fitter3D.
TTree * m_treeTrackFitter3D
TTree for tracks of fitter3D.
std::string m_rootFitter3DFileName
Members for saving.
A class to fit tracks in 3D.
TRGCDCFitter3D(const std::string &name, const std::string &rootFitter3DFile, const TRGCDC &, const std::map< std::string, bool > &flags)
Constructor.
void print3DInformation(int iTrack)
Print's information for debugging 3D.
void saveIoSignals()
Saves all I/O signals for debugging.
void initialize()
Initialization.
void saveVhdlAndCoe()
Functions for saving.