]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFTriggerMask.cxx
fix in the NMaxipad getter method
[u/mrichter/AliRoot.git] / TOF / AliTOFTriggerMask.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 // * this class defines the TOF object to be stored
20 // * in OCDB on a run-by-run basis in order to have the status
21 // * of TOF trigger inputs. it stores 32 bit masks for each crate
22 // * 
23 // *
24 // *
25 // *
26
27 #include "AliTOFTriggerMask.h"
28
29 ClassImp(AliTOFTriggerMask)
30
31 //_________________________________________________________
32
33 AliTOFTriggerMask::AliTOFTriggerMask() :
34   TObject(),
35   fTriggerMask()
36 {
37   /*
38    * default constructor
39    */
40
41   for (Int_t iddl = 0; iddl < 72; iddl++) fTriggerMask[iddl] = 0;
42 }
43
44 //_________________________________________________________
45
46 AliTOFTriggerMask::~AliTOFTriggerMask()
47 {
48   /*
49    * default destructor
50    */
51
52 }
53
54 //_________________________________________________________
55
56 AliTOFTriggerMask::AliTOFTriggerMask(const AliTOFTriggerMask &source) :
57   TObject(source),
58   fTriggerMask()
59 {
60   /*
61    * copy constructor
62    */
63
64   for (Int_t iddl = 0; iddl < 72; iddl++) fTriggerMask[iddl] = source.fTriggerMask[iddl];
65 }
66
67 //_________________________________________________________
68
69 AliTOFTriggerMask &
70 AliTOFTriggerMask::operator=(const AliTOFTriggerMask &source)
71 {
72   /*
73    * operator=
74    */
75
76   if (this == &source) return *this;
77   TObject::operator=(source);
78   
79   for (Int_t iddl = 0; iddl < 72; iddl++) fTriggerMask[iddl] = source.fTriggerMask[iddl];
80
81   return *this;
82 }
83
84 //_________________________________________________________
85
86 void
87 AliTOFTriggerMask::SetTriggerMaskArray(UInt_t *array)
88 {
89   /*
90    * set trigger mask array
91    */
92
93   for (Int_t iddl = 0; iddl < 72; iddl++) fTriggerMask[iddl] = array[iddl];
94 }
95 //_________________________________________________________
96
97 Int_t AliTOFTriggerMask::GetNumberMaxiPadOn() {
98   Int_t n=0;
99   for(Int_t j=0;j<72;j++) 
100     for(Int_t i=23;i>0;i--) 
101       n += (fTriggerMask[j]%Int_t(TMath::Power(2.,i+1.)))/Int_t(TMath::Power(2.,i+0.));
102   return n;
103 };