00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00012
00013 #ifndef SIMFLAG_H
00014 #define SIMFLAG_H
00015
00016 #ifndef ROOT_Rtypes
00017 #if !defined(__CINT__) || defined(__MAKECINT__)
00018 #include "Rtypes.h"
00019 #endif
00020 #endif
00021
00022 namespace SimFlag {
00023
00024 typedef enum ESimFlag {
00025 kUnknown = 0x00,
00026 kData = 0x01,
00027 kDaqFakeData = 0x02,
00028 kMC = 0x04,
00029 kReroot = 0x08
00030 } SimFlag_t;
00031
00032 Int_t FullMask();
00033
00034
00035
00036 const Char_t* AsString(SimFlag_t detector);
00037 const Char_t* MaskToString(Int_t mask);
00038 SimFlag::SimFlag_t StringToEnum(const Char_t* chars, Int_t maxChar=0);
00039 Int_t StringToMask(const Char_t* chars, Int_t maxChar=0);
00040
00041
00042 Int_t Compact(SimFlag_t simFlag);
00043 SimFlag::SimFlag_t Expand(Int_t compactSimFlag);
00044
00045 }
00046
00047 #endif // SIMFLAG_H