]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUON1DMap.h
No longer uses TObject::Clone default implementation as it turns out to be too slow...
[u/mrichter/AliRoot.git] / MUON / AliMUON1DMap.h
CommitLineData
83c386fb 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2* See cxx source for full Copyright notice */
3
4// $Id$
5
5cc83322 6/// \ingroup calib
83c386fb 7/// \class AliMUON1DMap
4178b5c7 8/// \brief Implementation of AliMUONVStore
83c386fb 9///
10// Author Laurent Aphecetche
11
12#ifndef ALIMUON1DMAP_H
13#define ALIMUON1DMAP_H
14
15#ifndef ALIMUONV1DSTORE_H
4178b5c7 16# include "AliMUONVStore.h"
83c386fb 17#endif
18
19class AliMpExMap;
20
4178b5c7 21class AliMUON1DMap : public AliMUONVStore
83c386fb 22{
23public:
24 AliMUON1DMap(Int_t theSize=0);
25 AliMUON1DMap(const AliMUON1DMap& other);
26 AliMUON1DMap& operator=(const AliMUON1DMap& other);
83c386fb 27 virtual ~AliMUON1DMap();
4178b5c7 28
29 virtual Bool_t Add(TObject* object);
30
31 virtual Bool_t CanConnect() const { return kFALSE; }
83c386fb 32
4178b5c7 33 virtual void Clear(Option_t* opt="");
34
35 virtual AliMUON1DMap* Create() const;
83c386fb 36
4178b5c7 37 using AliMUONVStore::FindObject;
83c386fb 38
4178b5c7 39 virtual TObject* FindObject(UInt_t i) const;
40
41 virtual TIterator* CreateIterator() const;
83c386fb 42
4178b5c7 43 using AliMUONVStore::GetSize;
44
45 virtual Int_t GetSize() const;
83c386fb 46
47private:
48 void CopyTo(AliMUON1DMap& to) const;
4178b5c7 49 /** Set the object stored at i.
50 if replace=false and there's already an object there, returns kFALSE
51 */
52 virtual Bool_t Set(Int_t i, TObject* object, Bool_t replace);
83c386fb 53
54private:
55
56 AliMpExMap* fMap; ///< Internal array (map)
57
4178b5c7 58 ClassDef(AliMUON1DMap,1) // Implementation of AliMUONVStore
83c386fb 59};
60
61#endif