]>
Commit | Line | Data |
---|---|---|
f9720615 | 1 | #ifndef AliTRDPTRGTLMU_H |
2 | #define AliTRDPTRGTLMU_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | // -------------------------------------------------------- | |
9 | // | |
10 | // PTRG simulation | |
11 | // | |
12 | // -------------------------------------------------------- | |
13 | ||
14 | #include "TObject.h" | |
15 | #include "AliTRDptrgParam.h" | |
16 | ||
17 | class AliRunLoader; | |
18 | ||
19 | class AliTRDptrgParam; | |
20 | ||
21 | class AliTRDptrgTLMU : public TObject { | |
22 | public: | |
23 | AliTRDptrgTLMU(AliRunLoader *rl = 0x0); | |
24 | AliTRDptrgTLMU(AliRunLoader *rl, AliTRDptrgParam *param, | |
25 | AliTRDptrgOperatingMode_t operatingMode); | |
26 | ~AliTRDptrgTLMU(); | |
27 | ||
28 | Int_t* Simulate(); // starts a simulation | |
29 | ||
30 | ||
31 | protected: | |
32 | Bool_t LoadParams(); // load AliTRDprtgParam content | |
33 | ||
34 | // functions for input data processing --------------------------------------- | |
35 | Int_t LoadDigits(); // loads Digits (for usage with aquired data) | |
36 | void GetInputBits(); // Gets TOF-to-TRD bits from AliTOFTrigger | |
37 | ||
38 | // logical functions --------------------------------------------------------- | |
39 | Int_t BackToBack(Int_t iSM, Int_t range = 0); // Back-To-Back check | |
40 | // (for +-1 and so on) SM0 and SM8, SM9, SM10 (range == 1) | |
41 | Int_t Coincidence(Int_t iSM1, Int_t iSM2); // more flexible version of | |
42 | // BackToBack(..) | |
43 | inline Int_t Or(Int_t iSM); // returns >=1 for iSM | |
44 | Int_t GetMultiplicity(Int_t iSM); // returns multiplicity of supermodule iSM | |
45 | Int_t GetMultiplicitySum(); // returns the multiplicity of the whole detector | |
46 | ||
47 | UInt_t GetBitVectorMultiplicity(UInt_t BitVector); | |
48 | // returns the multiplicity of a bit vector | |
49 | ||
50 | // variables ----------------------------------------------------------------- | |
51 | AliRunLoader *fRunLoader; //! | |
52 | AliTRDptrgParam *fParam; // Configuration parameter object | |
53 | AliTRDptrgOperatingMode_t fOperatingMode; // working on Digits or Hits? | |
54 | ||
55 | const UInt_t* fInputMask; // input mask for TOF-bits (18x32=576) | |
e51605d9 | 56 | UInt_t fTOFinputBits[18]; // input bits from TOF (18x32) |
f9720615 | 57 | |
58 | UInt_t** fCMatrices; // get coincidence matrices | |
59 | UInt_t** fMultiplicity; // get multiplicity slices | |
60 | Int_t** fOutput; // get output signal assignment | |
61 | ||
62 | private: | |
63 | AliTRDptrgTLMU& operator=(const AliTRDptrgTLMU &rhs); // not implemented | |
64 | AliTRDptrgTLMU(const AliTRDptrgTLMU &rhs); // not implemented | |
65 | ||
66 | enum{ | |
67 | kNLTM = 72, //Number of LTM | |
68 | kNLTMchannels = 48, //Number of channels in a LTM | |
69 | kNCTTM = 36, //Number of CTTM per TOF side | |
70 | kNCTTMchannels = 24 //Number of channels in a CTTM | |
71 | }; | |
72 | ||
73 | ClassDef(AliTRDptrgTLMU, 1); | |
74 | }; | |
75 | ||
76 | #endif |