#include #include #include ClassImp(TStnPi0Block) //______________________________________________________________________________ void TStnPi0Block::Streamer(TBuffer &R__b) { // Stream an object of class TStnPi0Block. if (R__b.IsReading()) { Version_t R__v = R__b.ReadVersion(); if (R__v) { } if (R__v == 1) {} // read current version - V1 R__b >> fNPi0; if (fNPi0 > 0) { fListOfPi0->Streamer(R__b); } } else { R__b.WriteVersion(TStnPi0Block::IsA()); R__b << fNPi0; if (fNPi0 > 0) { fListOfPi0->Streamer(R__b); } } } //_____________________________________________________________________________ TStnPi0Block::TStnPi0Block() { fNPi0 = 0; fListOfPi0 = new TClonesArray("TStnPi0",10); fListOfPi0->BypassStreamer(kFALSE); } //_____________________________________________________________________________ TStnPi0Block::~TStnPi0Block() { fListOfPi0->Delete(); delete fListOfPi0; } //_____________________________________________________________________________ void TStnPi0Block::Clear(const char* opt) { fLinksInitialized = 0; fNPi0 = 0; fListOfPi0->Clear(); } //_____________________________________________________________________________ Int_t TStnPi0Block::Pi0Number(const Pi0Candidate* Anton) { // for given Pi0Candidate return its number in STNTUPLE block, which is // supposed to be initialized for a given event Int_t ipi = -1; TStnPi0* pi0; for (int i=0; iGetPi0Candidate() == Anton) { ipi = i; break; } } return ipi; } //_____________________________________________________________________________ void TStnPi0Block::Print(const char* opt) const { int banner_printed = 0; TStnPi0Block* block = (TStnPi0Block*) this; for (int i=0; iPi0(i); if (! banner_printed) { pi0->Print("banner"); banner_printed = 1; } pi0->Print("data"); } }