Adding include path to allow compilation of CleanGeom task
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALTriggerPatch.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 /*
17
18  
19
20 Patch object implementation: one patch is made of subregions (Olivier's nomenclature)
21 Author: R. GUERNANE LPSC Grenoble CNRS/IN2P3
22 */
23
24 #include "AliEMCALTriggerPatch.h"
25 #include "AliLog.h"
26
27 ClassImp(AliEMCALTriggerPatch)
28
29 //____________
30 AliEMCALTriggerPatch::AliEMCALTriggerPatch() : TObject(),
31 fPosition(0x0),
32 fSum(0),
33 fTime(0),
34 fPeaks(0)
35 {
36         // Default constructor
37 }
38
39 //____________
40 AliEMCALTriggerPatch::AliEMCALTriggerPatch(Int_t i, Int_t j,  Int_t k, Int_t l) : TObject(),
41 fPosition(new TVector2(i, j)),
42 fSum(k),
43 fTime(l),
44 fPeaks(0)
45 {
46         //
47 }
48
49 //____________________________________________________________________
50 AliEMCALTriggerPatch::AliEMCALTriggerPatch(const AliEMCALTriggerPatch& other) : TObject(other), 
51 fPosition(new TVector2(*other.fPosition)),
52 fSum(other.fSum),
53 fTime(other.fTime),
54 fPeaks(other.fPeaks)
55 {       
56         // Copy ctor
57 }
58
59 //____________
60 AliEMCALTriggerPatch::~AliEMCALTriggerPatch()
61 {       
62         //
63         if (fPosition) delete fPosition;
64 }
65
66 //____________
67 void AliEMCALTriggerPatch::SetPeak(Int_t x, Int_t y, Int_t sizeX, Int_t sizeY)
68 {
69         //
70         if (sizeX * sizeY > 31) AliError("32b limit exceeded!");
71         
72         fPeaks = (fPeaks | (1 << (y * sizeX + x)));
73 }
74
75 //____________
76 void AliEMCALTriggerPatch::Print(const Option_t*) const
77 {
78         //
79         printf("]> Patch at (%2d , %2d) w/ sum %3d time %2d\n",
80                    (int)fPosition->X(), (int)fPosition->Y(), fSum, fTime); 
81 }