00001 //////////////////////////////////////////////////////////////////////////// 00002 // $Id: DbiDetector.hxx,v 1.1 2011/01/18 05:49:19 finch Exp $ 00003 // 00004 // Detector 00005 // 00006 // Detector defines Detector_t which is an enumeration of the 00007 // legal detector configurations 00008 // 00009 // Author: R. Hatcher 2000.05.03 00010 // 00011 //////////////////////////////////////////////////////////////////////////// 00012 00013 #ifndef DETECTOR_H 00014 #define DETECTOR_H 00015 00016 #ifndef ROOT_Rtypes 00017 #if !defined(__CINT__) || defined(__MAKECINT__) 00018 #include "Rtypes.h" 00019 #endif 00020 #endif 00021 00022 // Make "DetectorType" a synonym for "Detector" 00023 //typedef DetectorType Detector; 00024 //#define DetectorType Detector 00025 00026 namespace DbiDetector { 00027 typedef enum EDetector { 00028 kUnknown = 0x00, 00029 kNear = 0x01, 00030 kFar = 0x02, 00031 kCalDet = 0x04, 00032 kCalib = 0x04, 00033 kTestStand = 0x08, 00034 kMapper = 0x10 00035 } Detector_t; 00036 00037 // no ctor or dtor's - this class consists of only static members 00038 00039 Int_t FullMask(); 00040 00041 // Translation enum to/from character strings 00042 00043 const Char_t* AsString(Detector_t detector); 00044 DbiDetector::Detector_t CharToEnum(Char_t c); 00045 Char_t* MaskToString(Int_t mask); 00046 DbiDetector::Detector_t StringToEnum(const Char_t* chars, Int_t maxChar=0); 00047 Int_t StringToMask(const Char_t* chars, Int_t maxChar=0); 00048 00049 } 00050 00051 // make "DetectorType" a synonym for "Detector" 00052 namespace DbiDetectorType = DbiDetector; 00053 00054 00055 #endif // DETECTOR_H