]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpStringObjMap.h
New helper class
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpStringObjMap.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 // $Id$
5
6 /// \ingroup basic
7 /// \class AliMpStringObjMap
8 /// \brief Substitutes map <string, TObject> which ALICE does not allow to use 
9 ///
10 /// Author: Ivana Hrivnacova, IPN Orsay
11
12 #ifndef ALI_MP_STRING_OBJ_MAP_H
13 #define ALI_MP_STRING_OBJ_MAP_H
14
15 #include <TObject.h>
16 #include <TObjArray.h>
17 #include <TArrayI.h>
18
19 class AliMpStringObjMap : public TObject
20 {
21   public:
22     AliMpStringObjMap();
23     virtual ~AliMpStringObjMap();
24     
25     // methods
26     Bool_t    Add(const TString& first, TObject* second);
27     TObject*  Get(const TString& first) const;
28     Int_t     GetNofItems() const;
29     virtual void Clear(Option_t* /*option*/ ="");
30     virtual void Print(const char* /*option*/ = "") const;
31     void Print(const TString& key, ofstream& out) const;
32     
33   protected:
34     AliMpStringObjMap(const AliMpStringObjMap& rhs);
35
36     // operators  
37     AliMpStringObjMap& operator = (const AliMpStringObjMap& rhs);
38  
39   private:
40     // data members
41     Int_t      fNofItems;    // number of items
42     TObjArray  fFirstArray;  // first item array
43     TObjArray  fSecondArray; // second item array
44  
45   ClassDef(AliMpStringObjMap,1)  // motif map
46 };    
47
48 #endif //ALI_MP_STRING_OBJ_MAP_H