Line data Source code
1 : #ifndef ALIMUONCHECKITEM_H
2 : #define ALIMUONCHECKITEM_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 : /// \ingroup core
10 : /// \class AliMUONCheckItem
11 : /// \brief A structure used to gather information at different levels (ch,manu,de,chamber)
12 : ///
13 : // Author Laurent Aphecetche
14 :
15 : #ifndef ROOT_TNamed
16 : # include "TNamed.h"
17 : #endif
18 :
19 : class AliMpExMap;
20 : class TIterator;
21 :
22 : class AliMUONCheckItem : public TNamed
23 : {
24 : public:
25 :
26 : AliMUONCheckItem(Int_t id, Int_t maxNumber, const char* name);
27 : virtual ~AliMUONCheckItem();
28 :
29 : /// Return the identifier of this item
30 0 : Int_t GetID() const { return fID; }
31 :
32 : TObject* GetItem(Int_t id) const;
33 : Bool_t AddItem(Int_t id, TObject* item);
34 :
35 : Bool_t IsFull() const;
36 : Bool_t IsDead() const;
37 :
38 : void Print(Option_t* opt="") const;
39 :
40 : TIterator* CreateIterator() const;
41 :
42 : private:
43 : /// Not implemented
44 : AliMUONCheckItem(const AliMUONCheckItem&);
45 : /// Not implemented
46 : AliMUONCheckItem& operator=(const AliMUONCheckItem&);
47 :
48 : void ComputeDead() const;
49 :
50 : private:
51 : Int_t fID; //!<! identifier of this item
52 : mutable Int_t fDead; //!<! whether this object is completely dead
53 : Int_t fMaximum; //!<! maximum number of sub-items possible within this item
54 : AliMpExMap* fMissing; //!<! pointers to the sub-items
55 :
56 18 : ClassDef(AliMUONCheckItem,1) // A composite object
57 : };
58 :
59 : #endif
|