 |
Belle II Software
release-05-02-19
|
1 #ifndef CDCTRIGGER3DFITTERModule_H
2 #define CDCTRIGGER3DFITTERModule_H
4 #include "framework/core/Module.h"
7 #include <framework/datastore/StoreArray.h>
8 #include <framework/datastore/StoreObjPtr.h>
9 #include <trg/cdc/dataobjects/CDCTriggerSegmentHit.h>
10 #include <trg/cdc/dataobjects/CDCTriggerTrack.h>
11 #include <framework/dataobjects/BinnedEventT0.h>
21 class TRGCDCJSignalData;
38 virtual void event()
override;
48 void finder(
int charge,
double rho,
double phi,
49 std::vector<int>& bestTSIndex, std::vector<double>& bestTSPhi);
60 void fitter(std::vector<int>& bestTSIndex, std::vector<double>& bestTSPhi,
61 int charge,
double rho,
double phi,
62 double& z0,
double& cot,
double& chi2);
85 std::vector<double>
rr = {};
93 std::vector<std::vector<double>>
xtTables = {};
98 std::vector<std::vector<double> >
m_stXts;
124 #endif // CDCTrigger3DFitterModule_H
unsigned m_minHits
Minimal number of hits required for fitting.
std::map< std::string, double > m_mConstD
Constants for firmware simulation.
CDCTrigger3DFitterModule()
Constructor, for setting module description and parameters.
StoreArray< CDCTriggerTrack > m_tracks2D
list of 2D input tracks
std::vector< int > nShift
geometry constants: wire shift of stereo layers
StoreArray< CDCTriggerTrack > m_tracks3D
list of 3D output tracks
unsigned m_fitterMode
Fitter mode: 1: fast, 2: firmware.
std::map< std::string, std::vector< double > > m_mConstV
Constants for firmware simulation.
std::vector< double > nWires
geometry constants: number of wires per super layer
virtual ~CDCTrigger3DFitterModule()
Destructor.
StoreArray< CDCTriggerSegmentHit > m_hits
list of track segment hits
Module for the 3D Fitter of the CDC trigger.
std::vector< double > rr
geometry constants: radius of priority layers
void finder(int charge, double rho, double phi, std::vector< int > &bestTSIndex, std::vector< double > &bestTSPhi)
Select stereo hits.
A class to hold common data for JSignals.
std::string m_inputCollectionName
Name of the StoreArray containing the input tracks from the 2D fitter.
Belle2::TRGCDCJSignalData * m_commonData
Datastore for firmware simulation.
Abstract base class for different kinds of events.
Type-safe access to single objects in the data store.
std::map< std::string, Belle2::TRGCDCJLUT * > m_mLutStorage
Lutstore for firmware simulation.
StoreObjPtr< BinnedEventT0 > m_eventTime
StoreObjPtr containing the event time.
bool m_xtSimple
Switch between nominal drift velocity and xt table.
std::string m_outputCollectionName
Name of the StoreArray containing the resulting 3D tracks.
std::string m_EventTimeName
name of the event time StoreObjPtr
std::vector< std::vector< double > > m_stXts
stereo xt tables
void fitter(std::vector< int > &bestTSIndex, std::vector< double > &bestTSPhi, int charge, double rho, double phi, double &z0, double &cot, double &chi2)
Perform the 3D fit.
std::vector< std::vector< double > > xtTables
geometry constants: drift length - drift time relation
std::map< std::string, Belle2::TRGCDCJSignal > m_mSignalStorage
Signalstore for firmware simulation.
virtual void event() override
Run the 3D fitter for an event.
std::vector< double > angleSt
geometry constants: stereo angle
std::map< std::string, std::vector< double > > m_stGeometry
map of geometry constants
std::vector< double > zToStraw
geometry constants: backward z of priority layers
Accessor to arrays stored in the data store.
virtual void initialize() override
Initialize the module and register DataStore arrays.
std::string m_hitCollectionName
Name of the StoreArray containing the input track segment hits.
bool m_isVerbose
Switch printing detail information.