// $Id: BrDigitizeDC.h,v 1.5 1998/07/02 17:54:15 hagel Exp $ // $Log: BrDigitizeDC.h,v $ // Revision 1.5 1998/07/02 17:54:15 hagel // Add const to GetDetectorVolume // // Revision 1.4 1998/07/02 13:58:48 videbaek // comment updates mainly // // #ifndef _BRDIGITIZEDC_H #define _BRDIGITIZEDC_H /////////////////////////////////////////////////////////////////////// // // // BrDigitizeDC // // // // BRAHMS DC detector digitization and decode class // // // // Author : Kris Hagel (hagel@comp.tamu.edu) // // Created : 25-MAR-1998 // // Version : 1.0 // // Changed : // // // /////////////////////////////////////////////////////////////////////// class BrTrack2D; class BrDataTable; class BrDetectorParamsDC; class BrDetectorVolume; #include "BrModule.h" #include "TH1.h" #include "TGraph.h" class BrDigitizeDC : public BrModule { public: BrDigitizeDC(); BrDigitizeDC(Char_t *Name,Char_t *Title); virtual ~BrDigitizeDC(); void Init(); void Event(BrEventNode* InputTable,BrEventNode* OutputTable); virtual BrDetectorParamsDC* GetDetectorParamsDC(){ return fParams_p;} /* virtual BrDetectorVolume* GetDetectorVolume() const { return fVolumeParams_p;} virtual void SetDetectorVolume(BrDetectorVolume* vol){ fVolumeParams_p = vol;} */ virtual BrDetectorVolume* GetDetectorVolume(const Char_t *name); virtual void SetDetectorVolume(BrDetectorVolume* vol); void SetDetectorParamsDC(BrDetectorParamsDC* par); void SetDetectorParamsDC(const BrDetectorParamsDC& par); void ListDetectorParameters(); void EventStatisticsStart(); void EventStatisticsEnd(); void ListEventStatistics(); private: void Digitize(BrEventNode *InputTable,BrEventNode *OutputTable); void SortDighit(BrDataTable* DigitizedHits); void Decode(BrEventNode* OutputTable); BrDetectorParamsDC* fParams_p; BrDetectorVolume* fVolumeParams_p[4]; Int_t fNumVol; TStopwatch fTimer; Double_t fCpuTime; Int_t fNumGeantHits[3]; Int_t fNumDigHits; TH1F *d_Hhits; TH1F *d_Dz; TGraph *d_Graphxz; public: ClassDef(BrDigitizeDC,0) // BRAHMS DC Digitization Interface }; #endif