]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/STEERBase/AliDetectorTag.h
Adding the new detector MFT (Antonio Uras)
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliDetectorTag.h
CommitLineData
f3a97c86 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"
fca2ac22 17#include "TObjArray.h"
3ace8f92 18#include "AliDAQ.h"
c5caed45 19
719bd672 20//___________________________________________________________________________
21class AliDetectorTag : public TObject {
f3a97c86 22 public:
23 AliDetectorTag();
e16601cf 24 AliDetectorTag(const AliDetectorTag & t);
719bd672 25
26 AliDetectorTag &operator=(const AliDetectorTag &rhs);
f3a97c86 27 virtual ~AliDetectorTag();
28
04cb11d4 29 void UpdateFromRunTable(AliDetectorTag &detTag);
30
719bd672 31 //____________________________________________________//
3ace8f92 32 void SetDetectorMask(UInt_t mask) {fMaskDAQ = mask; fMaskReco = mask; }
33 void SetDetectorMaskDAQ(UInt_t mask) {fMaskDAQ = mask;}
34 void SetDetectorMaskReco(UInt_t mask) {fMaskReco = mask;}
04cb11d4 35 void SetDetectorValidityRange(UChar_t idet, UShort_t vr) {fDetectorValidityRange[idet] = vr; }
36 void SetDetectorStatus(UChar_t idet, TString co) { fDetectorStatus[idet] = co; }
3ace8f92 37 TObjArray *GetDetectorMask() { return 0; } // {return fDetectorArray;}
38 UInt_t GetIntDetectorMask() { return fMaskDAQ; }
39 UInt_t GetIntDetectorMaskDAQ() { return fMaskDAQ; }
40 UInt_t GetIntDetectorMaskReco() { return fMaskReco; }
04cb11d4 41 UShort_t GetDetectorValidityRange(UChar_t idet) const { return fDetectorValidityRange[idet]; }
42 TString GetDetectorStatus(UChar_t idet) const { return fDetectorStatus[idet]; }
3ace8f92 43 const char *GetDetectorMaskDAQ() { return AliDAQ::ListOfTriggeredDetectors(fMaskDAQ); }
44 const char *GetDetectorMaskReco() { return AliDAQ::ListOfTriggeredDetectors(fMaskReco); }
63c8edd0 45 void PrintDetectorMask();
c5caed45 46
719bd672 47 //____________________________________________________//
3ace8f92 48 Bool_t GetITSSPD() const {return fMaskDAQ & AliDAQ::kSPD;}
49 Bool_t GetITSSDD() const {return fMaskDAQ & AliDAQ::kSSD;}
50 Bool_t GetITSSSD() const {return fMaskDAQ & AliDAQ::kSSD;}
51 Bool_t GetTPC() const {return fMaskDAQ & AliDAQ::kTPC;}
52 Bool_t GetTRD() const {return fMaskDAQ & AliDAQ::kTRD;}
53 Bool_t GetTOF() const {return fMaskDAQ & AliDAQ::kTOF;}
54 Bool_t GetHMPID() const {return fMaskDAQ & AliDAQ::kHMPID;}
55 Bool_t GetPHOS() const {return fMaskDAQ & AliDAQ::kPHOS;}
56 Bool_t GetPMD() const {return fMaskDAQ & AliDAQ::kPMD;}
57 Bool_t GetMUON() const {return fMaskDAQ & AliDAQ::kMUON;}
58 Bool_t GetFMD() const {return fMaskDAQ & AliDAQ::kFMD;}
59 Bool_t GetTZERO() const {return fMaskDAQ & AliDAQ::kT0;}
60 Bool_t GetVZERO() const {return fMaskDAQ & AliDAQ::kVZERO;}
61 Bool_t GetZDC() const {return fMaskDAQ & AliDAQ::kZDC;}
62 Bool_t GetEMCAL() const {return fMaskDAQ & AliDAQ::kEMCAL;}
820b4d9e 63// #ifdef MFT_UPGRADE
64// Bool_t GetMFT() const {return fMaskDAQ & AliDAQ::kMFT;}
65// #endif
66 Bool_t GetMFT() const {return fMaskDAQ & AliDAQ::kMFT;} // AU
719bd672 67 //____________________________________________________//
e16601cf 68 private:
3ace8f92 69 // void Int2Bin();
70 // void SetDetectorConfiguration();
c5caed45 71
3ace8f92 72 void SetITSSPD() {fMaskDAQ |= AliDAQ::kSPD ;}
73 void SetITSSDD() {fMaskDAQ |= AliDAQ::kSDD ;}
74 void SetITSSSD() {fMaskDAQ |= AliDAQ::kSSD ;}
75 void SetTPC() {fMaskDAQ |= AliDAQ::kTPC ;}
76 void SetTRD() {fMaskDAQ |= AliDAQ::kTRD ;}
77 void SetTOF() {fMaskDAQ |= AliDAQ::kTOF ;}
78 void SetHMPID() {fMaskDAQ |= AliDAQ::kHMPID;}
79 void SetPHOS() {fMaskDAQ |= AliDAQ::kPHOS ;}
80 void SetPMD() {fMaskDAQ |= AliDAQ::kPMD ;}
81 void SetMUON() {fMaskDAQ |= AliDAQ::kMUON ;}
82 void SetFMD() {fMaskDAQ |= AliDAQ::kFMD ;}
83 void SetTZERO() {fMaskDAQ |= AliDAQ::kT0 ;}
84 void SetVZERO() {fMaskDAQ |= AliDAQ::kVZERO;}
85 void SetZDC() {fMaskDAQ |= AliDAQ::kZDC ;}
86 void SetEMCAL() {fMaskDAQ |= AliDAQ::kEMCAL;}
820b4d9e 87// #ifdef MFT_UPGRADE
88// void SetMFT() {fMaskDAQ |= AliDAQ::kMFT;}
89// #endif
90 void SetMFT() {fMaskDAQ |= AliDAQ::kMFT;} // AU
91
3ace8f92 92 // TObjArray *fDetectorArray; //detectors' names - active
93 UInt_t fMaskDAQ; //detector mask in DAQ
94 UInt_t fMaskReco; //detector mask in Reco
95 // UInt_t fDetectors[32]; //detector mask
96 // Bool_t fITSSPD; //ITS-SPD active = 1
97 // Bool_t fITSSDD; //ITS-SDD active = 1
98 // Bool_t fITSSSD; //ITS-SSD active = 1
99 // Bool_t fTPC; //TPC active = 1
100 // Bool_t fTRD; //TRD active = 1
101 // Bool_t fTOF; //TOF active = 1
102 // Bool_t fHMPID; //HMPID active = 1
103 // Bool_t fPHOS; //PHOS active = 1
104 // Bool_t fPMD; //PMD active = 1
105 // Bool_t fMUON; //MUON active = 1
106 // Bool_t fFMD; //FMD active = 1
107 // Bool_t fTZERO; //TZERO active = 1
108 // Bool_t fVZERO; //VZERO active = 1
109 // Bool_t fZDC; //ZDC active = 1
110 // Bool_t fEMCAL; //EMCAL active = 1
e16601cf 111
04cb11d4 112 UShort_t fDetectorValidityRange[AliDAQ::kHLTId];
113 TString fDetectorStatus[AliDAQ::kHLTId];
114
115 ClassDef(AliDetectorTag, 6) //(ClassName, ClassVersion)
f3a97c86 116};
117//______________________________________________________________________________
118
119#endif