]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliDetectorTag.h
Updates for pile-up vertex (F. Prino)
[u/mrichter/AliRoot.git] / STEER / AliDetectorTag.h
1 #ifndef ALIDETECTORTAG_H
2 #define ALIDETECTORTAG_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6
7 /* $Id$ */
8
9 //-------------------------------------------------------------------------
10 //                          Class AliDetectorTag
11 //   This is the class to deal with the tags for the detector level
12 //
13 //    Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
14 //-------------------------------------------------------------------------
15
16 #include "TObject.h"
17 #include "TObjArray.h"
18 #include "AliDAQ.h"
19
20 //___________________________________________________________________________
21 class AliDetectorTag : public TObject {
22  public:
23   AliDetectorTag();
24   AliDetectorTag(const AliDetectorTag & t);
25
26   AliDetectorTag &operator=(const AliDetectorTag &rhs);
27   virtual ~AliDetectorTag();
28   
29   //____________________________________________________//
30   void SetDetectorMask(UInt_t mask)     {fMaskDAQ = mask; fMaskReco = mask; }
31   void SetDetectorMaskDAQ(UInt_t mask)  {fMaskDAQ = mask;}
32   void SetDetectorMaskReco(UInt_t mask) {fMaskReco = mask;}
33   TObjArray *GetDetectorMask() { return 0; } // {return fDetectorArray;}
34   UInt_t GetIntDetectorMask() { return fMaskDAQ; }
35   UInt_t GetIntDetectorMaskDAQ() { return fMaskDAQ; }
36   UInt_t GetIntDetectorMaskReco() { return fMaskReco; }
37   const char *GetDetectorMaskDAQ() { return AliDAQ::ListOfTriggeredDetectors(fMaskDAQ); }
38   const char *GetDetectorMaskReco() { return AliDAQ::ListOfTriggeredDetectors(fMaskReco); }
39   void PrintDetectorMask();
40
41   //____________________________________________________//
42   Bool_t GetITSSPD() const {return fMaskDAQ & AliDAQ::kSPD;}
43   Bool_t GetITSSDD() const {return fMaskDAQ & AliDAQ::kSSD;}
44   Bool_t GetITSSSD() const {return fMaskDAQ & AliDAQ::kSSD;}
45   Bool_t GetTPC()    const {return fMaskDAQ & AliDAQ::kTPC;}
46   Bool_t GetTRD()    const {return fMaskDAQ & AliDAQ::kTRD;}
47   Bool_t GetTOF()    const {return fMaskDAQ & AliDAQ::kTOF;}
48   Bool_t GetHMPID()  const {return fMaskDAQ & AliDAQ::kHMPID;}
49   Bool_t GetPHOS()   const {return fMaskDAQ & AliDAQ::kPHOS;}
50   Bool_t GetPMD()    const {return fMaskDAQ & AliDAQ::kPMD;}
51   Bool_t GetMUON()   const {return fMaskDAQ & AliDAQ::kMUON;}
52   Bool_t GetFMD()    const {return fMaskDAQ & AliDAQ::kFMD;}
53   Bool_t GetTZERO()  const {return fMaskDAQ & AliDAQ::kT0;}
54   Bool_t GetVZERO()  const {return fMaskDAQ & AliDAQ::kVZERO;}
55   Bool_t GetZDC()    const {return fMaskDAQ & AliDAQ::kZDC;}
56   Bool_t GetEMCAL()  const {return fMaskDAQ & AliDAQ::kEMCAL;}
57   
58   //____________________________________________________//
59  private:
60   //  void Int2Bin();
61   //   void SetDetectorConfiguration();
62
63   void SetITSSPD() {fMaskDAQ |= AliDAQ::kSPD  ;}
64   void SetITSSDD() {fMaskDAQ |= AliDAQ::kSDD  ;}
65   void SetITSSSD() {fMaskDAQ |= AliDAQ::kSSD  ;}
66   void SetTPC()    {fMaskDAQ |= AliDAQ::kTPC  ;}
67   void SetTRD()    {fMaskDAQ |= AliDAQ::kTRD  ;}
68   void SetTOF()    {fMaskDAQ |= AliDAQ::kTOF  ;}
69   void SetHMPID()  {fMaskDAQ |= AliDAQ::kHMPID;}
70   void SetPHOS()   {fMaskDAQ |= AliDAQ::kPHOS ;}
71   void SetPMD()    {fMaskDAQ |= AliDAQ::kPMD  ;}
72   void SetMUON()   {fMaskDAQ |= AliDAQ::kMUON ;}
73   void SetFMD()    {fMaskDAQ |= AliDAQ::kFMD  ;}
74   void SetTZERO()  {fMaskDAQ |= AliDAQ::kT0   ;}
75   void SetVZERO()  {fMaskDAQ |= AliDAQ::kVZERO;}
76   void SetZDC()    {fMaskDAQ |= AliDAQ::kZDC  ;}
77   void SetEMCAL()  {fMaskDAQ |= AliDAQ::kEMCAL;}
78   
79   //   TObjArray *fDetectorArray; //detectors' names - active
80   UInt_t     fMaskDAQ;          //detector mask in DAQ
81   UInt_t     fMaskReco;         //detector mask in Reco
82   //   UInt_t     fDetectors[32]; //detector mask
83   //   Bool_t     fITSSPD;        //ITS-SPD active = 1
84   //   Bool_t     fITSSDD;        //ITS-SDD active = 1
85   //   Bool_t     fITSSSD;        //ITS-SSD active = 1
86   //   Bool_t     fTPC;           //TPC active = 1
87   //   Bool_t     fTRD;           //TRD active = 1
88   //   Bool_t     fTOF;           //TOF active = 1
89   //   Bool_t     fHMPID;         //HMPID active = 1
90   //   Bool_t     fPHOS;          //PHOS active = 1
91   //   Bool_t     fPMD;           //PMD active = 1
92   //   Bool_t     fMUON;          //MUON active = 1
93   //   Bool_t     fFMD;           //FMD active = 1
94   //   Bool_t     fTZERO;         //TZERO active = 1
95   //   Bool_t     fVZERO;         //VZERO active = 1
96   //   Bool_t     fZDC;           //ZDC active = 1
97   //   Bool_t     fEMCAL;         //EMCAL active = 1
98
99   ClassDef(AliDetectorTag, 5)  //(ClassName, ClassVersion)
100 };
101 //______________________________________________________________________________
102
103 #endif