Line data Source code
1 : #ifndef ALIITSBADCHANNELSSPD_H
2 : #define ALIITSBADCHANNELSSPD_H
3 :
4 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 : * See cxx source for full Copyright notice */
6 :
7 : /* $Id$ */
8 :
9 : ///////////////////////////////////////////////////////////////////////////
10 : // AliITSBadChannelsSPD declaration by P. Nilsson 2005
11 : // AUTHOR/CONTACT: Paul.Nilsson@cern.ch
12 : //
13 : // The class is used by the AliITSPreprocessorSPD class to store the
14 : // final noisy and dead channel objects in the calibration database for
15 : // the SPD.
16 : //
17 : // (See the source file for more information)
18 : ///////////////////////////////////////////////////////////////////////////
19 :
20 :
21 : #include "TObjArray.h"
22 : #include "AliITSChannelSPD.h"
23 :
24 : class AliITSBadChannelsSPD: public TObject {
25 :
26 : public:
27 :
28 : AliITSBadChannelsSPD(void); // Default constructor
29 : AliITSBadChannelsSPD(const AliITSBadChannelsSPD &bc); // Default copy constructor
30 : virtual ~AliITSBadChannelsSPD(void); // Default destructor
31 : AliITSBadChannelsSPD& operator=(const AliITSBadChannelsSPD& bc); // Assignment operator
32 :
33 : void Put(Int_t* &array, const Int_t &arraySize, // Add new arrays to the collection
34 : Int_t* &index, const Int_t &indexSize);
35 : Bool_t Get(Int_t* &array, Int_t* &index) const; // Retrieve the stored arrays (true if non empty arrays)
36 :
37 : Int_t GetIndexArraySize(void) const // Return the size of the index array
38 0 : { return fIndexArraySize; };
39 : Int_t GetBadChannelsArraySize(void) const // Return the size of the bad channels array
40 0 : { return fBadChannelsArraySize; };
41 :
42 : Int_t* CreateModuleArray(Int_t module) const; // Create an array with sequential data for a given module
43 : Int_t GetModuleArraySize(Int_t module) const // Return array size for a given module
44 0 : { return (2*fBadChannelsArray[fIndexArray[module]] + 1); };
45 :
46 : TObjArray* CreateModuleObjArray(Int_t module) const; // Create a TObjArray with data for a given module
47 : Int_t GetModuleObjArraySize(Int_t module) const // Return TObjArray size for a given module
48 0 : { return (fBadChannelsArray[fIndexArray[module]]); };
49 :
50 : protected:
51 :
52 : Int_t fIndexArraySize; // Size of the index array
53 : Int_t fBadChannelsArraySize; // Size of the bad channels array
54 : Int_t *fIndexArray; //[fIndexArraySize]
55 : Int_t *fBadChannelsArray; //[fBadChannelsArraySize]
56 :
57 116 : ClassDef(AliITSBadChannelsSPD,1)
58 : };
59 :
60 : #endif
|