]>
Commit | Line | Data |
---|---|---|
3f0e013c | 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 | { return fIndexArraySize; }; | |
39 | Int_t GetBadChannelsArraySize(void) const // Return the size of the bad channels array | |
40 | { return fBadChannelsArraySize; }; | |
41 | ||
eb0b1051 | 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 | |
3f0e013c | 44 | { return (2*fBadChannelsArray[fIndexArray[module]] + 1); }; |
45 | ||
eb0b1051 | 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 | |
3f0e013c | 48 | { 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 | ClassDef(AliITSBadChannelsSPD,1) | |
58 | }; | |
59 | ||
60 | #endif |