10 #include "TClonesArray.h" 
   15 #include "FairRootManager.h" 
   17 #include "FairRunAna.h" 
   18 #include "FairRuntimeDb.h" 
   23 #include "FairTrackParH.h" 
   24 #include "FairTrackParP.h" 
   26 #include "TDatabasePDG.h" 
   35         histo = 
new TH1F(
"h1",
"h1",3000,0,20);
 
   49   FairRootManager* ioman = FairRootManager::Instance();
 
   51                 std::cout << 
"-E- PndHypMSAnaTask::Init: "<< 
"RootManager not instantiated!" << std::endl;
 
   56         fMCTracks = (TClonesArray*) ioman->GetObject(
"MCTrack");
 
   58                 std::cout << 
"-W- PndHypMSAnaTask::Init: "<< 
"No MCTrack" << 
" array!" << std::endl;
 
   62         fMCHits = (TClonesArray*) ioman->GetObject(
"HypPoint");
 
   64                 std::cout << 
"-W- PndHypMSAnaTask::Init: "<< 
"No MVDPoint"<<
" array!" << std::endl;
 
  104         std::cout << 
"------------Event " << 
fEventNr << 
"-------------" << std::endl;
 
  106         std::cout<<
" size map "<<
mcHitMap.size()<<std::endl;
 
  108         for (
std::map<
int, std::vector<int> >::const_iterator it = 
mcHitMap.begin(); 
 
  113             std::vector<int> MChits = it->second;
 
  126             if (MChits.size() >=3){
 
  129               std::cout<<
" hits "<<MChits.size()<<(it->first)<<std::endl;
 
  134               std::cout<<
" pid "<<startPoint->GetTrackID()<<
" "<<it->first<<std::endl;
 
  138               if  (MotherId==-1)Motherpdg = myTrack->
GetPdgCode();
 
  143               if((myTrack->
GetPdgCode()==-211)&&( Motherpdg>1010000000&& 
 
  144                                                   Motherpdg<1020050130) )
 
  146                   std::cout<<
" hits "<<MChits.size()<<
" "<<Motherpdg<<std::endl;
 
  148                   histo->Fill(MChits.size());
 
  234         std::map<int, std::vector<int> > result;
 
  235         for (
int i = 0; 
i < 
fMCHits->GetEntriesFast(); 
i++){                                                                                    
 
  239                 myPoint->Momentum(mom);
 
  246                   result[myPoint->GetTrackID()].push_back(
i);
 
  255           TFile* 
file = FairRootManager::Instance()->GetOutFile();
 
  257           file->mkdir(
"Dedx_detid");
 
  258           file->cd(
"Dedx_detid");
 
virtual void Exec(Option_t *opt)
std::map< int, std::vector< int > > AssignHitsToTracks()
virtual void SetParContainers()
Class to access the naming information of the MVD. 
virtual InitStatus Init()
TGeoManager * gGeoManager
PndHypGeoHandling * fGeoH
ClassImp(PndHypMSAnaTask)
std::map< int, std::vector< int > > mcHitMap
Int_t GetMotherID() const