CbmRoot
|
Creates CbmLitMCTrack objects. More...
#include <CbmLitMCTrackCreator.h>
Public Member Functions | |
virtual | ~CbmLitMCTrackCreator () |
Destructor. More... | |
void | Create (Int_t eventNum) |
Creates array of CbmLitMCTracks for current event. More... | |
bool | TrackExists (int mcEventId, int mcId) const |
Check whether a track exists in the array. More... | |
const CbmLitMCTrack & | GetTrack (int mcEventId, int mcId) const |
Return CbmLitMCTrack by its index. More... | |
Int_t | GetNofTracks () const |
Return number of tracks. More... | |
Static Public Member Functions | |
static CbmLitMCTrackCreator * | Instance () |
Singleton instance. More... | |
Private Member Functions | |
CbmLitMCTrackCreator () | |
Constructor. More... | |
void | ReadDataBranches () |
Read data branches. More... | |
void | AddPoints (ECbmModuleId detId, CbmMCDataArray *array, Int_t iEvent) |
Add MC points from a certain detector. More... | |
void | AddRichHits (Int_t iEvent) |
Calculate and set number of RICH hits for MC track. More... | |
void | AddRingParameters (Int_t iEvent) |
Fit Rich MC points using ellipse fitter and fill ellipse parameters. More... | |
void | FairMCPointToLitMCPoint (const FairMCPoint *fairPoint, CbmLitMCPoint *litPoint, int eventId, int refId, int stationId) |
Convert FairMCPoint to CbmLitMCPoint. More... | |
void | FillStationMaps (Int_t iEvent) |
Fill maps for MC points to station id. More... | |
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 40 of file CbmLitMCTrackCreator.cxx.
References fTauFit, and ReadDataBranches().
|
virtual |
Destructor.
Definition at line 61 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 125 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 175 of file CbmLitMCTrackCreator.cxx.
References fDigiMan, fLitMCTracks, fMCTracks, fRichHits, fRichPoints, CbmMatchRecoToMC::GetMcTrackMotherIdsForRichHit(), and i.
Referenced by Create().
|
private |
Fit Rich MC points using ellipse fitter and fill ellipse parameters.
Definition at line 196 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(), i, CbmRichGeoManager::RotatePoint(), and CbmMCDataArray::Size().
Referenced by Create().
void CbmLitMCTrackCreator::Create | ( | Int_t | eventNum | ) |
Creates array of CbmLitMCTracks for current event.
Definition at line 68 of file CbmLitMCTrackCreator.cxx.
References AddPoints(), AddRichHits(), AddRingParameters(), counter, FillStationMaps(), fLitMCTracks, fMuchPoints, fMvdPoints, fRichPoints, fStsPoints, fTofPoints, fTrdPoints, kMuch, kMvd, kRich, kSts, kTof, and kTrd.
Referenced by CbmLitTrackingQa::Exec(), and CbmLitFitQa::Exec().
|
private |
Definition at line 254 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 236 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 344 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 83 of file CbmLitMCTrackCreator.h.
References fLitMCTracks.
|
inline |
Return CbmLitMCTrack by its index.
[in] | mcId | MC index of track. |
Definition at line 74 of file CbmLitMCTrackCreator.h.
References fLitMCTracks, and TrackExists().
Referenced by CbmAnaDielectronTask::CalculateNofTopologyPairs(), CbmLitTrackingQa::FillGlobalReconstructionHistosRich(), CbmLitTrackingQa::ProcessMcTracks(), CbmLitFitQa::ProcessMuchTrack(), CbmLitFitQa::ProcessStsTrack(), and CbmLitFitQa::ProcessTrdTrack().
|
static |
Singleton instance.
Definition at line 63 of file CbmLitMCTrackCreator.cxx.
Referenced by CbmAnaDielectronTask::CalculateNofTopologyPairs(), CbmLitTrackingQa::Init(), CbmLitFitQa::Init(), and CbmAnaDielectronTask::Init().
|
private |
Definition at line 326 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 272 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 103 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 290 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 64 of file CbmLitMCTrackCreator.h.
References fLitMCTracks.
Referenced by CbmAnaDielectronTask::CalculateNofTopologyPairs(), GetTrack(), and CbmLitTrackingQa::ProcessMcTracks().
|
private |
Definition at line 308 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 152 of file CbmLitMCTrackCreator.h.
Referenced by AddRichHits(), and ReadDataBranches().
|
private |
Definition at line 156 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), AddRichHits(), AddRingParameters(), Create(), GetNofTracks(), GetTrack(), and TrackExists().
|
private |
Definition at line 144 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), AddRichHits(), AddRingParameters(), FairMCPointToLitMCPoint(), and ReadDataBranches().
|
private |
Definition at line 148 of file CbmLitMCTrackCreator.h.
Referenced by Create(), FillStationMaps(), and ReadDataBranches().
|
private |
Definition at line 162 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), and FillStationMaps().
|
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 151 of file CbmLitMCTrackCreator.h.
Referenced by AddRichHits(), and ReadDataBranches().
|
private |
Definition at line 150 of file CbmLitMCTrackCreator.h.
Referenced by AddRichHits(), AddRingParameters(), Create(), and ReadDataBranches().
|
private |
Definition at line 146 of file CbmLitMCTrackCreator.h.
Referenced by Create(), FillStationMaps(), and ReadDataBranches().
|
private |
Definition at line 160 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), and FillStationMaps().
|
private |
Definition at line 164 of file CbmLitMCTrackCreator.h.
Referenced by AddRingParameters(), and CbmLitMCTrackCreator().
|
private |
Definition at line 149 of file CbmLitMCTrackCreator.h.
Referenced by Create(), and ReadDataBranches().
|
private |
Definition at line 147 of file CbmLitMCTrackCreator.h.
Referenced by Create(), FillStationMaps(), and ReadDataBranches().
|
private |
Definition at line 161 of file CbmLitMCTrackCreator.h.
Referenced by AddPoints(), and FillStationMaps().