AliRoot Core  da88d91 (da88d91)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMUON2DMap.h
Go to the documentation of this file.
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3 
4 // $Id$
5 
11 // Author Laurent Aphecetche
12 
13 #ifndef ALIMUON2DMAP_H
14 #define ALIMUON2DMAP_H
15 
16 #include "AliMUONVStore.h"
17 
18 class AliMpExMap;
19 
21 {
22 public:
23  AliMUON2DMap(TRootIOCtor* ioCtor);
24  AliMUON2DMap(Bool_t optimizeForDEManu);
25  AliMUON2DMap(const AliMUON2DMap& other);
26  AliMUON2DMap& operator = (const AliMUON2DMap& other);
27  virtual ~AliMUON2DMap();
28 
29  virtual Bool_t Add(TObject* object);
30 
32  virtual void Clear(Option_t* opt="");
33 
35  virtual Bool_t CanConnect() const { return kFALSE; }
36 
37  virtual AliMUONVStore* Create() const;
38 
40  virtual TIterator* CreateIterator() const;
41 
43  TIterator* CreateIterator(Int_t firstI, Int_t lastI) const;
44 
46 
47  virtual TObject* FindObject(Int_t i, Int_t j) const;
48 
49  virtual TObject* FindObject(UInt_t uid) const;
50 
52  Bool_t IsOptimizedForDEManu() const { return fOptimizeForDEManu; }
53 
54  virtual Int_t GetSize() const;
55 
56  virtual Int_t GetSize(Int_t i) const;
57 
58 private:
60  AliMUON2DMap();
61 
62  Bool_t Set(Int_t i, Int_t j, TObject* object, Bool_t replace);
63 
64  static const Int_t fgkOptimalSizeForDEManu;
65 
68 
69  ClassDef(AliMUON2DMap,2) // A 2D container
70 };
71 
72 #endif
virtual TIterator * CreateIterator() const
The returned iterator is owned by the client.
Bool_t Set(Int_t i, Int_t j, TObject *object, Bool_t replace)
AliMUON2DMap & operator=(const AliMUON2DMap &other)
Bool_t fOptimizeForDEManu
whether (i,j) pair is supposed to be (DetElemId,ManuId) (allow us to allocate right amount of memory...
Definition: AliMUON2DMap.h:67
virtual TObject * FindObject(Int_t i, Int_t j) const
Find an object using 2 ids.
Bool_t IsOptimizedForDEManu() const
Whether our internal storage is optimize to store (detection element id, manu id) ...
Definition: AliMUON2DMap.h:52
AliMUON2DMap()
Not implemented.
virtual ~AliMUON2DMap()
virtual AliMUONVStore * Create() const
Create an empty copy of this.
Basic implementation of AliMUONVStore container using AliMpExMap internally.
Definition: AliMUON2DMap.h:20
static const Int_t fgkOptimalSizeForDEManu
Optimal size for DEManu.
Definition: AliMUON2DMap.h:64
virtual Bool_t Add(TObject *object)
Add an object to the store.
AliMpExMap * fMap
Our internal map (an AliMpExMap of AliMpExMaps)
Definition: AliMUON2DMap.h:66
Base class for MUON data stores.
Definition: AliMUONVStore.h:22
virtual Int_t GetSize() const
The number of objects stored.
virtual void Clear(Option_t *opt="")
Mandatory methods from TCollection.
virtual TObject * FindObject(const char *name) const
Find an object by name.
Helper class making Root persistent TExMap.
Definition: AliMpExMap.h:28
virtual Bool_t CanConnect() const
Whether the Connect(TTree&) method is implemented.
Definition: AliMUON2DMap.h:35