]>
Commit | Line | Data |
---|---|---|
8230f242 | 1 | #ifndef ALITRDSEGMENTARRAY_H |
2 | #define ALITRDSEGMENTARRAY_H | |
f7336fa3 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
04eeac11 | 8 | //////////////////////////////////////////////////////////////////////////// |
9 | // // | |
10 | // Array for TRD detector segments containing digits // | |
11 | // // | |
12 | //////////////////////////////////////////////////////////////////////////// | |
f7336fa3 | 13 | |
625f5260 | 14 | #include <TNamed.h> |
15 | ||
abaf1f1d | 16 | class TTree; |
625f5260 | 17 | class TBranch; |
18 | class TObjArray; | |
abaf1f1d | 19 | |
625f5260 | 20 | class AliTRDarrayI; |
793ff80c | 21 | class AliTRDdataArray; |
625f5260 | 22 | class AliTRDsegmentID; |
f7336fa3 | 23 | |
625f5260 | 24 | class AliTRDsegmentArray : public TNamed { |
f7336fa3 | 25 | |
26 | public: | |
27 | ||
28 | AliTRDsegmentArray(); | |
8e8eae84 | 29 | AliTRDsegmentArray(const char *classname, Int_t n); |
8230f242 | 30 | AliTRDsegmentArray(AliTRDsegmentArray &a); |
31 | virtual ~AliTRDsegmentArray(); | |
625f5260 | 32 | AliTRDsegmentArray &operator=(const AliTRDsegmentArray &a); |
33 | ||
34 | const AliTRDsegmentID *At(Int_t i) const; | |
35 | const AliTRDsegmentID *operator[](Int_t i) const; | |
f7336fa3 | 36 | |
625f5260 | 37 | Bool_t AddSegment(AliTRDsegmentID *segment); |
38 | AliTRDsegmentID *AddSegment(Int_t index); | |
39 | virtual AliTRDsegmentID *NewSegment(); | |
40 | virtual AliTRDsegmentID *LoadSegment(Int_t index); | |
41 | virtual AliTRDsegmentID *LoadEntry(Int_t index); | |
42 | virtual void StoreSegment(Int_t index); | |
43 | void ClearSegment(Int_t index); | |
44 | ||
e0d47c25 | 45 | virtual void Copy(TObject &a) const; |
625f5260 | 46 | virtual Bool_t ConnectTree(const char *treeName); |
f7336fa3 | 47 | virtual void Delete(); |
9d0b222b | 48 | virtual void Delete(const char *) { Delete(); }; |
f7336fa3 | 49 | |
625f5260 | 50 | Bool_t MakeArray(Int_t n); |
51 | virtual void MakeTree(char *file = 0); | |
52 | Bool_t MakeDictionary(Int_t size); | |
53 | ||
54 | Bool_t SetClass(const char *classname); | |
55 | ||
56 | TClass *GetClass() const { return fClass; }; | |
57 | TTree *GetTree() const { return fTree; }; | |
58 | ||
abaf1f1d | 59 | virtual Bool_t LoadArray(const Char_t *branchname, TTree *tree = 0); |
60 | virtual Bool_t StoreArray(const Char_t *branchname, TTree *tree = 0); | |
f7336fa3 | 61 | |
793ff80c | 62 | virtual AliTRDdataArray *GetDataArray(Int_t det) const; |
63 | virtual AliTRDdataArray *GetDataArray(Int_t sec, Int_t cha, Int_t pla) const; | |
f7336fa3 | 64 | |
65 | protected: | |
66 | ||
625f5260 | 67 | TObjArray *fSegment; //! Pointer to an array of pointers to a segment |
68 | AliTRDarrayI *fTreeIndex; //! Pointers(index) table | |
69 | Int_t fNSegment; // Number of segments | |
70 | TTree *fTree; //! Tree with segment objects | |
71 | TBranch *fBranch; //! Branchaddress | |
72 | TClass *fClass; //! Class type of included objects | |
73 | ||
74 | ClassDef(AliTRDsegmentArray,2) // TRD detector segment array | |
f7336fa3 | 75 | |
76 | }; | |
77 | ||
78 | #endif |