AliRoot Core  3dc7879 (3dc7879)
AliEMCALTriggerBoard.h
Go to the documentation of this file.
1 #ifndef ALIEMCALTRIGGERBOARD_H
2 #define ALIEMCALTRIGGERBOARD_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 //________________________________________________
15 //________________________________________________
16 
17 #include "TVector2.h"
18 
19 class TClonesArray;
20 
21 class AliEMCALTriggerBoard : public TObject
22 {
23 
24 public:
26  AliEMCALTriggerBoard(const TVector2& RegionSize);
27  virtual ~AliEMCALTriggerBoard();
28 
29  virtual void SlidingWindow(Int_t Threshold);
30 
31  virtual void ZeroRegion();
32 
33  virtual void Scan();
34  virtual void Reset();
35 
36  virtual void PatchSize(TVector2& Size) const {Size = *fPatchSize;}
37  virtual TVector2* PatchSize( ) const { return fPatchSize;}
38  virtual void RegionSize(TVector2& Size) const {Size = *fRegionSize;}
39  virtual TVector2* RegionSize( ) const { return fRegionSize;}
40  virtual void SubRegionSize(TVector2& Size) const {Size = *fSubRegionSize;}
41  virtual TVector2* SubRegionSize( ) const { return fSubRegionSize;}
42 
43  virtual const TClonesArray& Patches() const {return *fPatches;}
44 
45  virtual void SetRegionSize(const TVector2& Size) { *fRegionSize = Size;}
46  virtual void SetPatchSize(const TVector2& Size) { *fPatchSize = Size;}
47  virtual void SetSubRegionSize(const TVector2& Size) { *fSubRegionSize = Size;}
48 
49  virtual void SetRegion(Int_t arr[][48]) {for (Int_t i = 0; i < fRegionSize->X(); i++) for (Int_t j = 0; j < fRegionSize->Y(); j++) fRegion[i][j] = arr[i][j];}
50  virtual void SetRegion(Int_t arr[][64]) {for (Int_t i = 0; i < fRegionSize->X(); i++) for (Int_t j = 0; j < fRegionSize->Y(); j++) fRegion[i][j] = arr[i][j];}
51 
52  virtual Int_t** Region() {return fRegion;}
53  virtual Int_t** Map() {return fMap;}
54  virtual void Map(Int_t arr[][48], const TVector2& Size) {for (Int_t i = 0; i < Size.X(); i++) for (Int_t j = 0; j < Size.Y(); j++) arr[i][j] = fMap[i][j];}
55  virtual void Map(Int_t arr[][64], const TVector2& Size) {for (Int_t i = 0; i < Size.X(); i++) for (Int_t j = 0; j < Size.Y(); j++) arr[i][j] = fMap[i][j];}
56 
57 protected:
58 
59  Int_t** fRegion;
60  Int_t** fMap;
61  TVector2* fRegionSize;
62  TVector2* fSubRegionSize;
63  TVector2* fPatchSize;
64  TClonesArray* fPatches;
65 
66 private:
67 
68  AliEMCALTriggerBoard (const AliEMCALTriggerBoard& rhs); // NOT implemented
69  AliEMCALTriggerBoard& operator=(const AliEMCALTriggerBoard& rhs); // NOT implemented
70 
72  ClassDef(AliEMCALTriggerBoard,1) ;
74 
75 };
76 
77 #endif //ALIEMCALTRIGGERBOARD_H
virtual void Map(Int_t arr[][48], const TVector2 &Size)
virtual void ZeroRegion()
Initilize fRegion.
virtual ~AliEMCALTriggerBoard()
Destructor.
Int_t ** fRegion
! add comment
TVector2 * fPatchSize
! in subregion unit
virtual TVector2 * PatchSize() const
virtual Int_t ** Map()
virtual TVector2 * SubRegionSize() const
TClonesArray * fPatches
! add comment
virtual void Map(Int_t arr[][64], const TVector2 &Size)
EMCal trigger board super class.
virtual void SubRegionSize(TVector2 &Size) const
virtual const TClonesArray & Patches() const
virtual void PatchSize(TVector2 &Size) const
virtual void Reset()
Reset patches and regions.
virtual void SetSubRegionSize(const TVector2 &Size)
virtual void SetPatchSize(const TVector2 &Size)
virtual void Scan()
Dump info.
virtual void RegionSize(TVector2 &Size) const
AliEMCALTriggerBoard()
Default Constructor.
TVector2 * fSubRegionSize
! in FastOR unit
virtual void SetRegion(Int_t arr[][64])
Int_t ** fMap
! Map the position to digit index (which eq. to ADC channel)
virtual void SetRegionSize(const TVector2 &Size)
AliEMCALTriggerBoard & operator=(const AliEMCALTriggerBoard &rhs)
virtual void SetRegion(Int_t arr[][48])
TVector2 * fRegionSize
! in FastOR unit
virtual TVector2 * RegionSize() const
virtual Int_t ** Region()
virtual void SlidingWindow(Int_t Threshold)
Sliding window algo.