CbmRoot
|
Creates CbmLitMCTrack objects. More...
#include <CbmLitMCTrackCreator.h>
Public Member Functions | |
virtual | ~CbmLitMCTrackCreator () |
Destructor. | |
void | Create (Int_t eventNum) |
Creates array of CbmLitMCTracks for current event. | |
bool | TrackExists (int mcEventId, int mcId) const |
Check whether a track exists in the array. | |
const CbmLitMCTrack & | GetTrack (int mcEventId, int mcId) const |
Return CbmLitMCTrack by its index. | |
Int_t | GetNofTracks () const |
Return number of tracks. | |
Static Public Member Functions | |
static CbmLitMCTrackCreator * | Instance () |
Singleton instance. | |
Private Member Functions | |
CbmLitMCTrackCreator () | |
Constructor. | |
void | ReadDataBranches () |
Read data branches. | |
void | AddPoints (ECbmModuleId detId, CbmMCDataArray *array, Int_t iEvent) |
Add MC points from a certain detector. | |
void | AddRichHits (Int_t iEvent) |
Calculate and set number of RICH hits for MC track. | |
void | AddRingParameters (Int_t iEvent) |
Fit Rich MC points using ellipse fitter and fill ellipse parameters. | |
void | FairMCPointToLitMCPoint (const FairMCPoint *fairPoint, CbmLitMCPoint *litPoint, int eventId, int refId, int stationId) |
Convert FairMCPoint to CbmLitMCPoint. | |
void | FillStationMaps (Int_t iEvent) |
Fill maps for MC points to station id. | |
void | FairMCPointCoordinatesAndMomentumToLitMCPoint (const FairMCPoint *fairPoint, CbmLitMCPoint *litPoint) |
void | MvdPointCoordinatesAndMomentumToLitMCPoint (const CbmMvdPoint *mvdPoint, CbmLitMCPoint *litPoint) |
void | StsPointCoordinatesAndMomentumToLitMCPoint (const CbmStsPoint *stsPoint, CbmLitMCPoint *litPoint) |
void | TrdPointCoordinatesAndMomentumToLitMCPoint (const CbmTrdPoint *trdPoint, CbmLitMCPoint *litPoint) |
void | MuchPointCoordinatesAndMomentumToLitMCPoint (const CbmMuchPoint *muchPoint, CbmLitMCPoint *litPoint) |
CbmLitMCTrackCreator (const CbmLitMCTrackCreator &) | |
CbmLitMCTrackCreator | operator= (const CbmLitMCTrackCreator &) |
Private Attributes | |
CbmMCDataArray * | fMCTracks |
CbmMCDataArray * | fMvdPoints |
CbmMCDataArray * | fStsPoints |
CbmMCDataArray * | fTrdPoints |
CbmMCDataArray * | fMuchPoints |
CbmMCDataArray * | fTofPoints |
CbmMCDataArray * | fRichPoints |
TClonesArray * | fRichHits |
CbmDigiManager * | fDigiMan |
std::map< std::pair< int, int >, CbmLitMCTrack > | fLitMCTracks |
std::map< std::pair< int, int >, int > | fMvdStationsMap |
std::map< std::pair< int, int >, int > | fStsStationsMap |
std::map< std::pair< int, int >, int > | fTrdStationsMap |
std::map< std::pair< int, int >, int > | fMuchStationsMap |
CbmRichRingFitterEllipseTau * | fTauFit |
|
private |
Constructor.
Definition at line 44 of file CbmLitMCTrackCreator.cxx.
References fTauFit, and ReadDataBranches().
|
virtual |
Destructor.
Definition at line 66 of file CbmLitMCTrackCreator.cxx.
|
private |
|
private |
Add MC points from a certain detector.
[in] | detId | Detector identificator. |
[in] | array | Array of FairMCPoint. |
[in] | iEvent | Event index |
Definition at line 129 of file CbmLitMCTrackCreator.cxx.
References FairMCPointCoordinatesAndMomentumToLitMCPoint(), FairMCPointToLitMCPoint(), fLitMCTracks, fMCTracks, fMuchStationsMap, fMvdStationsMap, fStsStationsMap, fTrdStationsMap, CbmMCDataArray::Get(), CbmMCTrack::GetMotherId(), kMuch, kMvd, kRich, kSts, kTof, kTrd, MuchPointCoordinatesAndMomentumToLitMCPoint(), MvdPointCoordinatesAndMomentumToLitMCPoint(), CbmMCDataArray::Size(), StsPointCoordinatesAndMomentumToLitMCPoint(), and TrdPointCoordinatesAndMomentumToLitMCPoint().
Referenced by Create().
|
private |
Calculate and set number of RICH hits for MC track.
Definition at line 176 of file CbmLitMCTrackCreator.cxx.
References fDigiMan, fLitMCTracks, fMCTracks, fRichHits, fRichPoints, and CbmMatchRecoToMC::GetMcTrackMotherIdsForRichHit().
Referenced by Create().
|
private |
Fit Rich MC points using ellipse fitter and fill ellipse parameters.
Definition at line 197 of file CbmLitMCTrackCreator.cxx.
References CbmRichRingFitterEllipseTau::DoFit(), fLitMCTracks, fMCTracks, fRichPoints, fTauFit, CbmMCDataArray::Get(), CbmRichRingLight::GetAaxis(), CbmRichRingLight::GetBaxis(), CbmRichRingLight::GetCenterX(), CbmRichRingLight::GetCenterY(), CbmRichGeoManager::GetInstance(), CbmMCTrack::GetMotherId(), CbmRichGeoManager::RotatePoint(), and CbmMCDataArray::Size().
Referenced by Create().
void CbmLitMCTrackCreator::Create | ( | Int_t | eventNum | ) |
Creates array of CbmLitMCTracks for current event.
Definition at line 74 of file CbmLitMCTrackCreator.cxx.
References AddPoints(), AddRichHits(), AddRingParameters(), FillStationMaps(), fLitMCTracks, fMuchPoints, fMvdPoints, fRichPoints, fStsPoints, fTofPoints, fTrdPoints, kMuch, kMvd, kRich, kSts, kTof, and kTrd.
Referenced by CbmLitFitQa::Exec(), and CbmLitTrackingQa::Exec().
|
private |
Definition at line 249 of file CbmLitMCTrackCreator.cxx.
References CbmLitMCPoint::SetPxIn(), CbmLitMCPoint::SetPxOut(), CbmLitMCPoint::SetPyIn(), CbmLitMCPoint::SetPyOut(), CbmLitMCPoint::SetPzIn(), CbmLitMCPoint::SetPzOut(), CbmLitMCPoint::SetXIn(), CbmLitMCPoint::SetXOut(), CbmLitMCPoint::SetYIn(), CbmLitMCPoint::SetYOut(), CbmLitMCPoint::SetZIn(), and CbmLitMCPoint::SetZOut().
Referenced by AddPoints().
|
private |
Convert FairMCPoint to CbmLitMCPoint.
[in] | fairPoint | Pointer to FairMCPoint to be converted. |
[out] | litPoint | Pointer to output CbmLitMCPoint. |
[in] | refId | Reference index of the MC point. |
Definition at line 235 of file CbmLitMCTrackCreator.cxx.
References fMCTracks, CbmMCDataArray::Get(), CbmMCTrack::GetPdgCode(), CbmLitMCPoint::SetQ(), CbmLitMCPoint::SetRefId(), and CbmLitMCPoint::SetStationId().
Referenced by AddPoints().
|
private |
Fill maps for MC points to station id.
Definition at line 339 of file CbmLitMCTrackCreator.cxx.
References fMuchPoints, fMuchStationsMap, fMvdPoints, fMvdStationsMap, fStsPoints, fStsStationsMap, fTrdPoints, fTrdStationsMap, CbmMCDataArray::Get(), CbmTrdAddress::GetLayerId(), CbmMuchGeoScheme::GetLayerIndex(), CbmMuchGeoScheme::GetLayerSideIndex(), CbmMuchGeoScheme::GetStationIndex(), CbmMvdPoint::GetStationNr(), CbmStsSetup::GetStationNumber(), CbmStsSetup::Instance(), and CbmMCDataArray::Size().
Referenced by Create().
|
inline |
Return number of tracks.
Definition at line 90 of file CbmLitMCTrackCreator.h.
References fLitMCTracks.
|
inline |
Return CbmLitMCTrack by its index.
[in] | mcId | MC index of track. |
Definition at line 80 of file CbmLitMCTrackCreator.h.
References fLitMCTracks, and TrackExists().
Referenced by LmvmTask::CalculateNofTopologyPairs(), CbmLitTrackingQa::FillGlobalReconstructionHistosRich(), CbmLitTrackingQa::ProcessMcTracks(), CbmLitFitQa::ProcessMuchTrack(), CbmLitFitQa::ProcessStsTrack(), and CbmLitFitQa::ProcessTrdTrack().
|
static |
Singleton instance.
Definition at line 68 of file CbmLitMCTrackCreator.cxx.
Referenced by LmvmTask::CalculateNofTopologyPairs(), CbmLitFitQa::Init(), CbmLitTrackingQa::Init(), and LmvmTask::Init().
|
private |
Definition at line 321 of file CbmLitMCTrackCreator.cxx.
References CbmMuchPoint::GetPxOut(), CbmMuchPoint::GetPyOut(), CbmMuchPoint::GetPzOut(), CbmMuchPoint::GetXIn(), CbmMuchPoint::GetXOut(), CbmMuchPoint::GetYIn(), CbmMuchPoint::GetYOut(), CbmMuchPoint::GetZIn(), CbmMuchPoint::GetZOut(), CbmLitMCPoint::SetPxIn(), CbmLitMCPoint::SetPxOut(), CbmLitMCPoint::SetPyIn(), CbmLitMCPoint::SetPyOut(), CbmLitMCPoint::SetPzIn(), CbmLitMCPoint::SetPzOut(), CbmLitMCPoint::SetXIn(), CbmLitMCPoint::SetXOut(), CbmLitMCPoint::SetYIn(), CbmLitMCPoint::SetYOut(), CbmLitMCPoint::SetZIn(), and CbmLitMCPoint::SetZOut().
Referenced by AddPoints().
|
private |
Definition at line 267 of file CbmLitMCTrackCreator.cxx.
References CbmMvdPoint::GetPxOut(), CbmMvdPoint::GetPyOut(), CbmMvdPoint::GetPzOut(), CbmMvdPoint::GetXOut(), CbmMvdPoint::GetYOut(), CbmMvdPoint::GetZOut(), CbmLitMCPoint::SetPxIn(), CbmLitMCPoint::SetPxOut(), CbmLitMCPoint::SetPyIn(), CbmLitMCPoint::SetPyOut(), CbmLitMCPoint::SetPzIn(), CbmLitMCPoint::SetPzOut(), CbmLitMCPoint::SetXIn(), CbmLitMCPoint::SetXOut(), CbmLitMCPoint::SetYIn(), CbmLitMCPoint::SetYOut(), CbmLitMCPoint::SetZIn(), and CbmLitMCPoint::SetZOut().
Referenced by AddPoints().
|
private |
|
private |
Read data branches.
Definition at line 109 of file CbmLitMCTrackCreator.cxx.
References fDigiMan, fMCTracks, fMuchPoints, fMvdPoints, fRichHits, fRichPoints, fStsPoints, fTofPoints, fTrdPoints, CbmMCDataManager::GetObject(), CbmDigiManager::Init(), CbmMCDataManager::InitBranch(), and CbmDigiManager::Instance().
Referenced by CbmLitMCTrackCreator().
|
private |
Definition at line 285 of file CbmLitMCTrackCreator.cxx.
References CbmStsPoint::GetPxOut(), CbmStsPoint::GetPyOut(), CbmStsPoint::GetPzOut(), CbmStsPoint::GetXIn(), CbmStsPoint::GetXOut(), CbmStsPoint::GetYIn(), CbmStsPoint::GetYOut(), CbmStsPoint::GetZIn(), CbmStsPoint::GetZOut(), CbmLitMCPoint::SetPxIn(), CbmLitMCPoint::SetPxOut(), CbmLitMCPoint::SetPyIn(), CbmLitMCPoint::SetPyOut(), CbmLitMCPoint::SetPzIn(), CbmLitMCPoint::SetPzOut(), CbmLitMCPoint::SetXIn(), CbmLitMCPoint::SetXOut(), CbmLitMCPoint::SetYIn(), CbmLitMCPoint::SetYOut(), CbmLitMCPoint::SetZIn(), and CbmLitMCPoint::SetZOut().
Referenced by AddPoints().
|
inline |
Check whether a track exists in the array.
[in] | mcId | MC index of track. |
Definition at line 70 of file CbmLitMCTrackCreator.h.
References fLitMCTracks.
Referenced by GetTrack(), and CbmLitTrackingQa::ProcessMcTracks().
|
private |
Definition at line 303 of file CbmLitMCTrackCreator.cxx.
References CbmTrdPoint::GetPxIn(), CbmTrdPoint::GetPxOut(), CbmTrdPoint::GetPyIn(), CbmTrdPoint::GetPyOut(), CbmTrdPoint::GetPzIn(), CbmTrdPoint::GetPzOut(), CbmTrdPoint::GetXIn(), CbmTrdPoint::GetXOut(), CbmTrdPoint::GetYIn(), CbmTrdPoint::GetYOut(), CbmTrdPoint::GetZIn(), CbmTrdPoint::GetZOut(), CbmLitMCPoint::SetPxIn(), CbmLitMCPoint::SetPxOut(), CbmLitMCPoint::SetPyIn(), CbmLitMCPoint::SetPyOut(), CbmLitMCPoint::SetPzIn(), CbmLitMCPoint::SetPzOut(), CbmLitMCPoint::SetXIn(), CbmLitMCPoint::SetXOut(), CbmLitMCPoint::SetYIn(), CbmLitMCPoint::SetYOut(), CbmLitMCPoint::SetZIn(), and CbmLitMCPoint::SetZOut().
Referenced by AddPoints().
|
private |
Definition at line 149 of file CbmLitMCTrackCreator.h.
Referenced by AddRichHits(), and ReadDataBranches().
|
private |
Definition at line 153 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), AddRichHits(), AddRingParameters(), Create(), GetNofTracks(), GetTrack(), and TrackExists().
|
private |
Definition at line 141 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), AddRichHits(), AddRingParameters(), FairMCPointToLitMCPoint(), and ReadDataBranches().
|
private |
Definition at line 145 of file CbmLitMCTrackCreator.h.
Referenced by Create(), FillStationMaps(), and ReadDataBranches().
|
private |
Definition at line 159 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), and FillStationMaps().
|
private |
Definition at line 142 of file CbmLitMCTrackCreator.h.
Referenced by Create(), FillStationMaps(), and ReadDataBranches().
|
private |
Definition at line 156 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), and FillStationMaps().
|
private |
Definition at line 148 of file CbmLitMCTrackCreator.h.
Referenced by AddRichHits(), and ReadDataBranches().
|
private |
Definition at line 147 of file CbmLitMCTrackCreator.h.
Referenced by AddRichHits(), AddRingParameters(), Create(), and ReadDataBranches().
|
private |
Definition at line 143 of file CbmLitMCTrackCreator.h.
Referenced by Create(), FillStationMaps(), and ReadDataBranches().
|
private |
Definition at line 157 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), and FillStationMaps().
|
private |
Definition at line 161 of file CbmLitMCTrackCreator.h.
Referenced by AddRingParameters(), and CbmLitMCTrackCreator().
|
private |
Definition at line 146 of file CbmLitMCTrackCreator.h.
Referenced by Create(), and ReadDataBranches().
|
private |
Definition at line 144 of file CbmLitMCTrackCreator.h.
Referenced by Create(), FillStationMaps(), and ReadDataBranches().
|
private |
Definition at line 158 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), and FillStationMaps().