//-*- mode: c++ -*- // // $Id: BrBbRdo.h,v 1.3 2001/08/07 12:41:30 cholm Exp $ // $Author: cholm $ // $Date: 2001/08/07 12:41:30 $ // /////////////////////////////////////////////////////////////////////// // // // BrBbRdo // // // // BRAHMS Reconstructed Data Element for Beam-Beam counters // // // // Author : F.Videbaek // // Created : September 98 // // Version : 1.0 // // Changed : // // // /////////////////////////////////////////////////////////////////////// #ifndef BRAT_BrBbRdo #define BRAT_BrBbRdo #ifndef BRAT_BrDataObject #include "BrDataObject.h" #endif class BrBbRdo: public BrDataObject { private: Int_t fLeftHits; // Number of tubes hit in left array Int_t fRightHits; // Number of tubes hit in light array Int_t fLeftMult; // Estimated Multiplicity in left Array Int_t fRightMult; // Estimated Multiplicity in right Array Double_t fLeftTime; // Time estimated from left array Double_t fRightTime; // Time estimated from right array Double_t fZ0; // Esmated vertex from BB counters Double_t fTime0; // Start time for event Int_t fPatternLeft[4]; // Internal rep for hits in left array Int_t fPatternRight[4];// Internal rep for hits in right array Float_t fMult; // Total Multiplicity Int_t fTimeMethod; // Timing method public: // Class is implemented as a concrete class thus no virtual for // methods BrBbRdo(); BrBbRdo(Char_t* Name, Char_t* Title); ~BrBbRdo() { }; void Clear(); typedef enum kTimeMethod { kTimeFromBigBB=1, kTimeFromSmallBB=2, kTimeFromFastBB=3 }; Bool_t IsSortable() const {return kFALSE;} Int_t GetLeftHits() const {return fLeftHits;} Int_t GetRightHits() const {return fRightHits;} Int_t GetLeftMult() const {return fLeftMult;} Int_t GetRightMult() const {return fRightMult;} Double_t GetZ0() const {return fZ0;} Double_t GetTime0() const {return fTime0;} Double_t GetLeftTime() const {return fLeftTime;} Double_t GetRightTime() const {return fRightTime;} Float_t GetMult() const {return fMult;} Int_t GetTimeMethod() const {return fTimeMethod;} void SetLeftHits(Int_t i) {fLeftHits= i;} void SetRightHits(Int_t i) {fRightHits= i;} void SetLeftMult(Int_t i) {fLeftMult= i;} void SetRightMult(Int_t i) {fRightMult= i;} void SetLeftTime(Double_t time) {fLeftTime = time;} void SetRightTime(Double_t time) {fRightTime = time;} void SetLeftHitTube(Int_t); void SetRightHitTube(Int_t); Bool_t IsLeftTubeHit(Int_t); Bool_t IsRightTubeHit(Int_t); void SetTime0(Double_t time) {fTime0 = time;} void SetZ0(Double_t pos) {fZ0 = pos;} void SetTimeMethod(Int_t method) {fTimeMethod = method;} void SetMult(Float_t mult) {fMult = mult;} void Print(Option_t* option="") const; //*MENU* ClassDef(BrBbRdo,1) // BRAHMS Beam Beam Counters Reconstructed Data Objects }; #endif // $Log: BrBbRdo.h,v $ // Revision 1.3 2001/08/07 12:41:30 cholm // Added standard Print method // // Revision 1.2 2001/06/25 14:31:02 cholm // Made Print conform to TObject // // Revision 1.1 2001/06/22 17:35:16 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: // // // BrRdoBB -> BrBbRdo // BrRdoZDC -> BrZdcRdo // BrTPCCluster -> BrTpcCluster // BrTPCClusterTable -> BrTpcClusterTable // // Revision 1.1.1.1 2001/06/21 14:55:02 hagel // Initial revision of brat2 // // Revision 1.5 2000/12/19 19:28:36 hagel // Added Clear method (to use these conveniently in Tree's) // // Revision 1.4 2000/11/17 14:37:05 beam // Added Get and Set Mult; Get and Set TimeMethod // // Revision 1.3 1999/04/14 20:12:34 videbaek // Use DbManager methods to access parameters. // // Revision 1.2 1999/01/21 23:23:21 hagel // 1. Changed convention for checking includes. Current convention is: // BRAT_Br...... eg BRAT_BrModule ala ROOT. // 2. Added CVS logs to .h files that didnt have them. // 3. Moved checking of include definition to first line for easier reading // 4. Put checks before all includes in the include files as per BRAT specifications // 5. Added BrGeantHeader to Geant Makefile // 6. All changes have been checked to compile on NT ala Cygnus // // Revision 1.1 1998/10/09 19:21:22 videbaek // Add the BrBbRdo and BrRdoModule classes // //