12 #include "TClonesArray.h" 
   13 #include "TParticlePDG.h" 
   20 #include "FairRootManager.h" 
   23 #include "FairRuntimeDb.h" 
   24 #include "../pnddata/PndMCTrack.h" 
   38     fBranchName(
"MVDPoint"),
 
   42     fTrackOutputArray(NULL)
 
   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;
 
   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)
PndMvdPidIdealTask(const TString algoName="ideal")
TVector3 GetPositionOut() const 
static void CalcLikelihood(PndMvdPidCand *cand)
static void CalcLikelihood(PndMvdPidCand *cand)
TClonesArray * fTrackOutputArray
TClonesArray * fPointArray
TVector3 GetPosition() const 
virtual void SetParContainers()
virtual void Exec(Option_t *opt)
virtual InitStatus Init()