#include "AliTriggerDetector.h"
#include "AliLog.h"
+#include "TTree.h"
class AliTOFrawData;
class AliTOFTriggerMask;
{
public:
AliTOFTrigger(); // constructor
- AliTOFTrigger(Int_t HighMultTh, Int_t ppMBTh, Int_t MultiMuonTh, Int_t UPTh, Float_t deltaminpsi, Float_t deltamaxpsi, Float_t deltaminro, Float_t deltamaxro, Int_t stripWindow); //constructor with parameters
+ AliTOFTrigger(Int_t HighMultTh, Int_t ppMBTh, Int_t MultiMuonTh, Int_t UPTh, Float_t deltaminpsi, Float_t deltamaxpsi, Float_t deltaminro, Float_t deltamaxro, Int_t stripWindow,Float_t startTimeWindow=0.0,Float_t widthTimeWindow=25.); //constructor with parameters
virtual ~AliTOFTrigger(); // destructor
virtual void CreateInputs();
virtual void Trigger();
Float_t Getdeltamaxro() const {return fdeltamaxro;}
Int_t GetstripWindow() const {return fstripWindow;}
- void LoadActiveMask(); // Load active channel trigger mask
+ static void LoadActiveMask(); // Load active channel trigger mask
void GetMapMatrix(Bool_t map[][24]) const;
void GetMap(Bool_t **map) const;
//void PrintMap(); // to be checked because of warning problems
else { AliWarning(Form(" Index out of range: %d not in [0,3]",i)); return kFALSE; }
};
+ Float_t GetStartTimeWindow() const {return fStartTimeHit;}; // in ns
+ Float_t GetTimeWidthWindow() const {return fTimeWidthTrigger;}; // in ns
+ void SetStartTimeWindow(Float_t val) {fStartTimeHit = val;}; // in ns
+ void SetTimeWidthWindow(Float_t val) {fTimeWidthTrigger = val;}; // in ns
+
Int_t GetNumberOfCrateOn(){return fNCrateOn;};
Int_t GetNumberOfMaxipadOn(){return fNMaxipadOn;};
Int_t GetNumberOfMaxipadOnAll(){return fNMaxipadOnAll;};
void CreateLTMMatrix();
void CreateLTMMatrixFromDigits();
void CreateLTMMatrixFromRaw(AliRawReader *fRawReader);
+
+ static AliTOFTriggerMask *GetTOFTriggerMap() {return fTOFTrigMap;}
+ static void PrepareTOFMapFromRaw(AliRawReader *fRawReader,Int_t deltaBC=13600);
+ static void PrepareTOFMapFromDigit(TTree *treeD);
private:
enum{
kNLTMtoTRDchannels = 8 //Number of channels in a CTTM
};
+ static AliTOFTriggerMask *fTOFTrigMap; // class with the TOF trigger map
+ static AliTOFTriggerMask *fTOFTrigMask; // class with the TOF trigger mask
+
AliTOFTrigger& operator=(const AliTOFTrigger &/*source*/); // ass. op.
AliTOFTrigger(const AliTOFTrigger & tr);
void GetCTTMIndex(Int_t *detind, Int_t *indexCTTM);
- void GetLTMIndex(const Int_t * const detind, Int_t *LTMIndex);
+ static void GetLTMIndex(const Int_t * const detind, Int_t *LTMIndex);
Bool_t fLTMmatrix[kNLTM][kNLTMchannels]; //LTM matrix
Bool_t fLTMarray[kNCTTM]; //LTM array for UPpurposes
Bool_t fCTTMmatrixFront[kNCTTM][kNCTTMchannels];//CTTM matrix for TOP FPGA
Int_t fNCrateOn; // number of crate fired
Int_t fNMaxipadOn; // number of Maxipad fired
Int_t fNMaxipadOnAll; // number of Maxipad fired w/o TDC dead mask
- AliTOFTriggerMask *fTOFTrigMask; // class with the TOF trigger mask
- ClassDef(AliTOFTrigger,1) // TOF Trigger Detector class
+ // aggiungere larghezza finestra temporale e tempo0 in ns
+ Float_t fStartTimeHit; // time window start after channel equalization (subtraction of the minimal time per channel default 0 ns)
+ Float_t fTimeWidthTrigger; // time window width (default 25 ns)
+
+ ClassDef(AliTOFTrigger,3) // TOF Trigger Detector class
};
#endif