// BrDetectorParamsTPC.h,v 1.4 1998/05/08 20:45:55 videbaek Exp // BrDetectorParamsTPC.h,v // Revision 1.4 1998/05/08 20:45:55 videbaek // TPC class updates; added functionality // // Revision 1.3 1998/05/08 00:58:42 videbaek // TPC code updates // // Revision 1.2 1998/04/01 22:10:57 hagel // Changes for adding local tracking // // Revision 1.1.1.1 1998/03/04 21:34:02 brahmlib // Brat tpc // // #ifndef _BRDETECTORPARAMSTPC #define _BRDETECTORPARAMSTPC /////////////////////////////////////////////////////////////////////// // // // BrDetectorParamsTPC // // // // // // // /////////////////////////////////////////////////////////////////////// #include "TNamed.h" class BrDetectorParamsTPC : public TNamed { public: BrDetectorParamsTPC(); BrDetectorParamsTPC(Char_t *name,Char_t *title); virtual ~BrDetectorParamsTPC(); void ListParameters() const; void SetDefaultParams(); virtual Float_t GetTwoPar() {return fTwoPar;} virtual Float_t GetDlong() {return fDlong; } virtual Float_t GetDtrans() {return fDtrans;} virtual Float_t GetEff() {return fEff;} virtual Float_t GetAnodeGap() {return fAnodeGap;} virtual Float_t GetDriftv() {return fDriftv;} virtual Float_t GetTimeBucket() {return fTimeBucket;} virtual Float_t GetShapingTime() {return fShapingTime;} virtual Float_t GetADCGain() {return fADCGain;} virtual Int_t GetADCChannels() {return fADCChannels;} virtual Float_t GetRowDistance() {return fRowDistance;} virtual Int_t GetNumberOfRows(){return fNumberOfRows;} virtual Int_t GetPadsprow(){return fPadsprow;} virtual Float_t GetPadDistance() {return fPadDistance;} virtual Float_t GetPadWidth() {return fPadWidth;} virtual Float_t GetPadLength() {return fPadLength;} virtual void SetDlong(const Float_t Dlong) {fDlong = Dlong;} virtual void SetDtrans(Float_t Dtrans){fDtrans=Dtrans;} virtual void SetEff(Float_t Eff){fEff=Eff;} virtual void SetAnodeGap(Float_t AnodeGap){fAnodeGap = AnodeGap;} virtual void SetDriftv(Float_t Driftv){fDriftv = Driftv;} virtual void SetTimeBucket(Float_t TimeBucket){fTimeBucket = TimeBucket;} virtual void SetShapingTime(Float_t ShapingTime){fShapingTime = ShapingTime;} virtual void SetADCGain(Float_t ADCGain){fADCGain = ADCGain;} virtual void SetADCChannels(Float_t ADCChannels){fADCChannels = ADCChannels;} virtual void SetRowDistance(Float_t RowDistance){fRowDistance = RowDistance;} virtual void SetNumberOfRows(Int_t NumberOfRows){fNumberOfRows = NumberOfRows;} virtual void SetPadPerRow(Int_t PadsPerRow){fPadsprow = PadsPerRow;} virtual void SetPadDistance(Float_t PadDistance){fPadDistance=PadDistance;} virtual void SetPadWidth(Float_t PadWidth){fPadWidth = PadWidth;} virtual void SetPadLength(Float_t PadLength){fPadLength = PadLength;} private: // // Simulation parameters // Float_t fTwoPar; // Twoparticle resolution Float_t fDlong; // Longitudinal Diffusion coeffecient Float_t fDtrans; // Transverse Diffisuion coefficient Float_t fEff; // Efficiency for padrows Float_t fAnodeGap; // Distance between Pad and anode wire // The proper sim and analysis parameter is really // the pad resolution function (PRF) // // Gas and readout parameters // Float_t fDriftv; // Drift velocity Float_t fTimeBucket; // Bucket size Float_t fShapingTime; // Preamp shaper time Float_t fADCGain; // Gain of Preamp Int_t fADCChannels; // Number of bins in adc (128, 150, 256..) // // Geometry parameters // Float_t fRowDistance; // Distance between Rows Int_t fNumberOfRows; // Number of Rows Int_t fPadsprow; // Number of Pads per row Float_t fPadDistance; // Distance between pads Float_t fPadWidth; // Width of Pads Float_t fPadLength; // Length of pads public: ClassDef(BrDetectorParamsTPC,1) // BRAHMS detector volume class }; #endif