#ifndef BRAT_BrZdcDig #define BRAT_BrZdcDig // $Id: BrZdcDig.h,v 1.1 2001/06/22 17:33:26 cholm Exp $ // // $Log: BrZdcDig.h,v $ // Revision 1.1 2001/06/22 17:33:26 cholm // Change names so that every data class has the same format so that // we have that down from the very beginning, so that we will not have to // worry about that later on. The // affected classes are: // // BrDigBB -> BrBbDig // BrDigZDC -> BrZdcDig // BrDigRHIC -> BrRichDig // BrDigDC -> BrDcDig // BrDigC1 -> BrDcC1 // BrDigHit -> BrHitDig // BrDigTof -> BrTofDig // BrTPCSequence -> BrTpcSequence // // Revision 1.1.1.1 2001/06/21 14:55:01 hagel // Initial revision of brat2 // // Revision 1.5 2000/02/16 20:53:19 hagel // 1. Changed BrZdcDig to inherit from BrDataObject // 2. Changed code in BrRawDataInput to reflect that change // 3. Changed BrMonitorZDC::Event to reflect that change // 4. Removed Draw methods from BrMonitorZDC, BrMonitorC1, BrMonitorMult because // they are obsolete. BrBaseMonitor now handles that function automatically // // Revision 1.4 1999/06/18 22:37:15 hagel // Various modifications to make read raw data // // Revision 1.3 1999/06/14 14:17:27 hagel // Cleanup // // Revision 1.2 1999/06/08 22:24:23 hagel // A place holder that is sort of functional. It is used on first ZDC data file // // Revision 1.1 1999/06/01 21:13:36 hagel // Placeholder version copied from BB until real version comes // /////////////////////////////////////////////////////////////////////// // // // BrZdcDig // // // // BRAHMS Raw Data Element for ZDC counters // // Placeholder until "real version" supplied // // // // Author : K. Hagel // // Created : May 1999 // // Version : 1.0 // // Changed : // // // /////////////////////////////////////////////////////////////////////// // Root Classes //#ifndef ROOT_TObject //#include "TObject.h" //#endif #ifndef BRAT_BrDataObject #include "BrDataObject.h" #endif const Int_t kNumZDCChan = 3; // Brahms Classes // //Following changed because we insert BrZdcDig directly into a BrEventNode. //So it needs to inherit from BrDataObject. //class BrZdcDig: public TObject { class BrZdcDig: public BrDataObject { private: // Int_t fAdc; // Adc value for PMT // Int_t fTdc; // Tdc value for PMT // The ZDCs are labelled left and right in the same way as the beam-beam // counters, that is looking at the experiment from the inside of the ring. // For communication with RHIC the terms Blue and Yellow are used. // Blue ZDC faces the Blue ie clockwise beam so Blue ZDC = ZDC right // Yellow ZDC faces the Yellow ie anticlockwise beam so Yellow ZDC = ZDC left // Each ZDC consists of 3 modules. The signals from each module as well as // the analog sum of the 3 modules go into ADCs and TDCs. The TDCs are run // in common start mode so that if the ZDC is delayed one obseves a larger // TDC signal. The TDC clock rate is set at 50ps/count. Int_t fRightAdc[kNumZDCChan]; // ZDC right ADC Int_t fRightTdc[kNumZDCChan]; // ZDC right TDC Int_t fRightAdcSum; // ZDC right ADC for analog sum Int_t fRightTdcSum; // ZDC right ADC for analog sum Int_t fLeftAdc[kNumZDCChan]; // ZDC left ADC Int_t fLeftTdc[kNumZDCChan]; // ZDC left TDC Int_t fLeftAdcSum; // ZDC left ADC for analog sum Int_t fLeftTdcSum; // ZDC left ADC for analog sum public: BrZdcDig(){ }; BrZdcDig(const Char_t* Name, const Char_t* Title) : BrDataObject(Name, Title) {}; virtual ~BrZdcDig() { }; Bool_t IsSortable() const {return kTRUE;} Int_t Compare(TObject *BrZdcDig); // virtual Int_t GetTubeNo() const {return fTubeNo;} virtual Int_t GetLeftAdc(const Int_t i) const; // {return fAdc;} virtual Int_t GetLeftTdc(const Int_t i) const; // {return fTdc;} virtual Int_t GetRightAdc(const Int_t i) const; // {return fAdc;} virtual Int_t GetRightTdc(const Int_t i) const; // {return fTdc;} virtual Int_t GetLeftAdcSum() {return fLeftAdcSum;} virtual Int_t GetLeftTdcSum() {return fLeftTdcSum;} virtual Int_t GetRightAdcSum() {return fRightAdcSum;} virtual Int_t GetRightTdcSum() {return fRightTdcSum;} // virtual Int_t GetId() {return fId;} // virtual void SetTubeNo(Int_t i) {fTubeNo = i;} virtual void SetLeftTdc(const Int_t itube,const Int_t time); // {fTdc = time;} virtual void SetLeftAdc(const Int_t itube,const Int_t val); // {fAdc = i;} virtual void SetRightTdc(const Int_t itube,const Int_t time); // {fTdc = time;} virtual void SetRightAdc(const Int_t itube,const Int_t val); // {fAdc = i;} virtual void SetLeftAdcSum(const Int_t val) {fLeftAdcSum = val;} virtual void SetRightAdcSum(const Int_t val) {fRightAdcSum = val;} virtual void SetLeftTdcSum(const Int_t val) {fLeftTdcSum = val;} virtual void SetRightTdcSum(const Int_t val) {fRightTdcSum = val;} // virtual void SetId(Int_t i) {fId = i;} virtual void List(); public: ClassDef(BrZdcDig,1) // BRAHMS ZDC Digitized data class }; #endif