]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/STEER/AliLTUConfig.h
Interface for setting up custom monitoring lib policy (Requested by Jens).
[u/mrichter/AliRoot.git] / STEER / STEER / AliLTUConfig.h
1 #ifndef ALILTUCONFIG_H
2 #define ALILTUCONFIG_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 ///////////////////////////////////////////////////////////////////////////////
8 //                                                                           //
9 //  Class that describes a detector LTU configuration                        //
10 //                                                                           //
11 //                                                                           //
12 //  Presently we store a subset of the LTU parameters:                       //
13 //  FineDelay1 3126 # picosec                                                //
14 //  FineDelay2 20459 # picosec                                               //
15 //  BC_DELAY_ADD 18 # ns                                                     //
16 //                                                                           //
17 //  cvetan.cheshkov@cern.ch 3/9/2010                                         //
18 ///////////////////////////////////////////////////////////////////////////////
19
20
21 #include <TObject.h>
22
23 class AliLTUConfig : public TObject {
24
25 public:
26                           AliLTUConfig(): TObject(),
27                             fDetectorId(-1),
28                             fFineDelay1(0.),
29                             fFineDelay2(0.),
30                             fBCDelayAdd(0.)
31                             {}
32                           AliLTUConfig(UChar_t detectorId, Float_t fineDelay1, Float_t fineDelay2, Float_t bcDelayAdd): TObject(),
33                             fDetectorId(detectorId),
34                             fFineDelay1(fineDelay1),
35                             fFineDelay2(fineDelay2),
36                             fBCDelayAdd(bcDelayAdd)
37                             {}
38                           AliLTUConfig(AliLTUConfig & ltu): TObject(ltu),
39                             fDetectorId(ltu.fDetectorId),
40                             fFineDelay1(ltu.fFineDelay1),
41                             fFineDelay2(ltu.fFineDelay2),
42                             fBCDelayAdd(ltu.fBCDelayAdd)
43                             {}
44                virtual   ~AliLTUConfig() {}
45
46   //  Getters
47                 Char_t    GetDetectorId() const { return fDetectorId; }
48             const char*   GetDetectorName() const;
49                Float_t    GetFineDelay1() const { return fFineDelay1; }
50                Float_t    GetFineDelay2() const { return fFineDelay2; }
51                Float_t    GetBCDelayAdd() const { return fBCDelayAdd; }
52
53            virtual void   Print( const Option_t* opt ="" ) const;
54
55 private:
56            AliLTUConfig & operator=(const AliLTUConfig & );
57
58                 Char_t    fDetectorId; // Detector ID, see AliDAQ class for more details
59                Float_t    fFineDelay1; // Fine delay in ns
60                Float_t    fFineDelay2; // Fine delay in ns
61                Float_t    fBCDelayAdd; // BC_DELAY_ADD in ns 
62
63    ClassDef( AliLTUConfig, 1 )  // LTU Configuration class
64 };
65
66
67 #endif