#ifndef TCmuDataBlock_hh #define TCmuDataBlock_hh #include "TClonesArray.h" #include #include #include class TCmuDataBlock : public TStnDataBlock { friend Int_t StntupleInitCmuDataBlock(TStnDataBlock* block, AbsEvent* event, int mode); //----------------------------------------------------------------------------- // data members //----------------------------------------------------------------------------- protected: Int_t fNDHits; // number of hits in D-bank TClonesArray* fDHitList; // list of D-hits Int_t fNEHits; // number of hits in E-bank TClonesArray* fEHitList; // list of E-hits //----------------------------------------------------------------------------- // functions //----------------------------------------------------------------------------- public: TCmuDataBlock(); virtual ~TCmuDataBlock(); // ****** init methods // ****** accessors Int_t NEHits () const { return fNEHits; } Int_t NDHits () const { return fNDHits; } TCmudHit* DHit(int i) const { return (TCmudHit*) fDHitList->UncheckedAt(i); } TCmueHit* EHit(int i) const { return (TCmueHit*) fEHitList->UncheckedAt(i); } // ****** modifiers TCmudHit* NewCmudHit() { return new ((*fDHitList)[fNDHits++]) TCmudHit(); } TCmueHit* NewCmueHit() { return new ((*fEHitList)[fNEHits++]) TCmueHit(); } // ****** overloaded functions of // TObject void Clear(Option_t* opt=""); void Print(Option_t* opt="") const; ClassDef(TCmuDataBlock,1) }; #endif