#ifndef TBsuDataBlock_hh #define TBsuDataBlock_hh #include "TClonesArray.h" #include #include #include class TBsuDataBlock : public TStnDataBlock { friend Int_t StntupleInitBsuDataBlock(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: TBsuDataBlock(); virtual ~TBsuDataBlock(); // ****** init methods // ****** accessors Int_t NEHits () const { return fNEHits; } Int_t NDHits () const { return fNDHits; } TBsudHit* DHit(int i) const { return (TBsudHit*) fDHitList->UncheckedAt(i); } TBsueHit* EHit(int i) const { return (TBsueHit*) fEHitList->UncheckedAt(i); } // ****** modifiers TBsudHit* NewBsudHit() { return new ((*fDHitList)[fNDHits++]) TBsudHit(); } TBsueHit* NewBsueHit() { return new ((*fEHitList)[fNEHits++]) TBsueHit(); } // ****** overloaded functions of // TObject void Clear(Option_t* opt=""); void Print(Option_t* opt="") const; ClassDef(TBsuDataBlock,1) }; #endif