]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliTriggerBCMask.h
Typo fixed + warnings removed.
[u/mrichter/AliRoot.git] / STEER / AliTriggerBCMask.h
1 #ifndef ALITRIGGERBCMASK_H
2 #define ALITRIGGERBCMASK_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 // This class represents the CTP bunch-crossing mask                         //
10 //                                                                           //
11 // The Mask contains name and 3564 bits for each bunch-crossing in an orbit  //
12 //                                                                           //
13 //                                                                           //
14 ///////////////////////////////////////////////////////////////////////////////
15
16 #include <TNamed.h>
17 #include <TBits.h>
18
19 class AliTriggerBCMask : public TNamed {
20
21 public:
22                           AliTriggerBCMask();
23                           AliTriggerBCMask( TString & name);
24                           AliTriggerBCMask( TString & name, TString & mask );
25                           AliTriggerBCMask( const char* name, const char* mask );
26                           AliTriggerBCMask( const AliTriggerBCMask& mask );
27                virtual   ~AliTriggerBCMask();
28   AliTriggerBCMask&   operator=(const AliTriggerBCMask& mask);
29
30            const UChar_t* GetFullMask () const {return fBCMask; }
31                   Bool_t  GetMask(UShort_t index) const;
32                     void  Print( const Option_t* opt) const;
33
34                   Bool_t  SetMask (const char *mask);
35   
36   enum {kNBytesPerBCMask = 446,  // Number of bytes to store the 3564 bits of BC mask
37         kNBits = 3564            // BC mask contains 3564 bits
38   };
39
40 private:
41                 Bool_t    CreateMask(TString &mask);
42                 Bool_t    Bcm2Bits(TObjArray *tokens, Int_t &index, TBits &bits, Int_t &ibit, Int_t &level) const;
43
44                 UChar_t   fBCMask[kNBytesPerBCMask];         // Bunch cross mask (3564 bits)
45
46    ClassDef( AliTriggerBCMask, 2 )  // Define a trigger bunch-crossing mask
47 };
48
49 #endif