#ifndef BRAT_BrBaseDetector #define BRAT_BrBaseDetector // $Id: BrBaseDetector.h,v 1.1.1.1 2001/06/21 14:55:07 hagel Exp $ // // $Log: BrBaseDetector.h,v $ // Revision 1.1.1.1 2001/06/21 14:55:07 hagel // Initial revision of brat2 // // Revision 1.4 1999/02/25 15:01:29 videbaek // Add a memeber function Warning at the BrModule level. This has a buildin limit counter // such that Warning will not go on for all events. // The code is copied for the TObject::Warning. // // Revision 1.3 1999/01/21 23:23:18 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 didn't 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.2 1999/01/15 15:32:12 videbaek // Updates to volume files. // Added member histon to BrModule, and member function HistOn(). // Added BrMath as standard math library. // // /////////////////////////////////////////////////////////// // // BrBaseDetector // // BRAHMS Base Detector Class // // Author : K. Hagel // Created: 4-Nov-1998 // Version: 1.0 // // /////////////////////////////////////////////////////////// // ROOT classes #ifndef ROOT_TNode #include "TNode.h" #endif #ifndef ROOT_TMixture #include "TMixture.h" #endif // BRAHMS classes // class BrDetectorVolume; class BrBaseDetector : public TNode { public: BrBaseDetector(); BrBaseDetector(Char_t *name, Char_t *title,Text_t *shape,Float_t xx,Float_t yy,Float_t zz,Text_t *rot,Option_t *opt); BrBaseDetector(Char_t *name, Char_t *title,TShape *shape,Float_t xx,Float_t yy,Float_t zz,TRotMatrix *rot,Option_t *opt); BrBaseDetector(Char_t *name, Char_t *title,BrDetectorVolume *vol); virtual ~BrBaseDetector(); virtual void ExecuteTNodeConstructor(const Text_t *name, const Text_t *title, const Text_t *shapename, Double_t x, Double_t y, Double_t z, const Text_t *matrixname, Option_t *option); virtual void ExecuteTNodeConstructor(const Text_t *name, const Text_t *title, TShape *shape, Double_t x, Double_t y, Double_t z, TRotMatrix *matrix, Option_t *option); virtual Int_t DebugLevel() {return fDebugLevel;} virtual void SetDebugLevel(Int_t level) {fDebugLevel = level;} protected: TMixture *fMixture; Int_t fGHitColor; // Marker color for geanthits Int_t fGHitMarkerType; // MarkerType for geanthits private: virtual void CreateDefaultDetector(Text_t *name,Text_t *title,BrDetectorVolume *vol); Int_t fDebugLevel; public: ClassDef(BrBaseDetector,1) // BRAHMS Module definitions }; #endif