EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Experiment.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file Experiment.h
1 
2 // Experiment
3 //
4 // Experiment defines Exp_t which is an enumeration of the
5 // legal detector configurations for an dedicated Experiment.
6 //
7 //
9 
10 #ifndef EXPERIMENT_H
11 #define EXPERIMENT_H
12 
13 #ifndef ROOT_Rtypes
14 #if !defined(__CINT__) || defined(__MAKECINT__)
15 #include "Rtypes.h"
16 #endif
17 #endif
18 
19 
20 namespace Experiment
21 {
22 typedef enum EExperiment {
23  kUnknown = 0x00,
24  kS001 = 0x01,
25  kS002 = 0x02,
26  kS003 = 0x04,
27  kS004 = 0x08,
28  kS005 = 0x10,
29  kS006 = 0x11
30 } Experiment_t;
31 
32 // no ctor or dtor's - this class consists of only static members
33 
34 Int_t FullMask();
35 
36 // Translation enum to/from character strings
37 
38 const Char_t* AsString(Experiment_t detector);
40 Char_t* MaskToString(Int_t mask);
41 Experiment::Experiment_t StringToEnum(const Char_t* chars, Int_t maxChar=0);
42 Int_t StringToMask(const Char_t* chars, Int_t maxChar=0);
43 
44 }
45 
46 namespace ExperimentType = Experiment;
47 
48 #endif // EXPERIMENT_H