#include <PndMvdPidIdealTask.h>
Definition at line 35 of file PndMvdPidIdealTask.h.
PndMvdPidIdealTask::PndMvdPidIdealTask |
( |
const TString |
algoName = "ideal" | ) |
|
Default constructor
Definition at line 37 of file PndMvdPidIdealTask.cxx.
37 : FairTask(
"Digitization task for PANDA PndMvd"),
TClonesArray * fTrackOutputArray
TClonesArray * fPointArray
void PndMvdPidIdealTask::Exec |
( |
Option_t * |
opt | ) |
|
|
virtual |
Virtual method Exec
Definition at line 89 of file PndMvdPidIdealTask.cxx.
References PndMvdIdealPidAlgo::CalcLikelihood(), PndMvdSimplePidAlgo::CalcLikelihood(), PndMvdAdvancedPidAlgo::CalcLikelihood(), dE, dx, fAlgoName, fPointArray, fTrackOutputArray, PndSdsMCPoint::GetPosition(), PndSdsMCPoint::GetPositionOut(), i, and track.
95 std::map<int, PndMvdPidCand*> pidcand;
99 int track = mvdpoint->GetTrackID();
103 double dE = mvdpoint->GetEnergyLoss();
105 mvdpoint->Momentum(momentum);
107 pidcand[
track]->AddMvdHit(dE, dx, momentum.Mag());
111 for(std::map<int, PndMvdPidCand*>::iterator it=pidcand.begin();it!=pidcand.end();it++) {
112 int track = it->first;
121 new ((*fTrackOutputArray)[size])
PndMvdPidCand(*(pidcand[track]));
static void CalcLikelihood(PndMvdPidCand *cand)
static void CalcLikelihood(PndMvdPidCand *cand)
TVector3 GetPositionOut() const
static void CalcLikelihood(PndMvdPidCand *cand)
TClonesArray * fTrackOutputArray
TClonesArray * fPointArray
TVector3 GetPosition() const
InitStatus PndMvdPidIdealTask::Init |
( |
| ) |
|
|
virtual |
Definition at line 47 of file PndMvdPidIdealTask.cxx.
References fAlgoName, fBranchName, fMcArray, fPointArray, and fTrackOutputArray.
50 FairRootManager* ioman = FairRootManager::Instance();
52 std::cout <<
"-E- PndMvdPidIdealTask::Init: "<<
"RootManager not instantiated!" << std::endl;
58 std::cout <<
"-W- PndMvdPidIdealTask::Init: "<<
"No "<<
fBranchName<<
" array!" << std::endl;
62 fMcArray=(TClonesArray*) ioman->GetObject(
"MCTrack");
64 std::cout <<
"-W- PndMvdPidIdealTask::Init: "<<
"No McTruth array!" << std::endl;
69 ioman->Register(
"PndMvdPidCand",
"PndMvd ideal tracklets",
fTrackOutputArray, kTRUE);
72 std::cout <<
"-W- PndMvdPidIdealTask::Init: "<<
"No pid algorithm named '"<<
fAlgoName <<
"'! Names are 'ideal', 'simple', 'advanced'" << std::endl;
TClonesArray * fTrackOutputArray
TClonesArray * fPointArray
void PndMvdPidIdealTask::ProduceHits |
( |
| ) |
|
|
private |
void PndMvdPidIdealTask::Register |
( |
| ) |
|
|
private |
void PndMvdPidIdealTask::Reset |
( |
| ) |
|
|
private |
void PndMvdPidIdealTask::SetParContainers |
( |
| ) |
|
|
virtual |
TString PndMvdPidIdealTask::fAlgoName |
|
private |
TString PndMvdPidIdealTask::fBranchName |
|
private |
TClonesArray* PndMvdPidIdealTask::fMcArray |
|
private |
TClonesArray* PndMvdPidIdealTask::fPointArray |
|
private |
TClonesArray* PndMvdPidIdealTask::fTrackOutputArray |
|
private |
The documentation for this class was generated from the following files: