]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSIntMap.h
New SPD pre-processor (H. Tydesjo)
[u/mrichter/AliRoot.git] / ITS / AliITSIntMap.h
CommitLineData
b15de2d2 1#ifndef ALI_ITS_INTMAP_H
2#define ALI_ITS_INTMAP_H
3
4//////////////////////////////////////////////////////////////////////
5// Author: Henrik Tydesjo //
6// This class implements the use of a map of integers. //
7// For simplicity, this version is just a sorted linked list, //
8// but it may be rewritten later for better performance if required.//
9//////////////////////////////////////////////////////////////////////
10
11#include <Rtypes.h>
12
13class AliITSIntMapNode;
14
15class AliITSIntMap {
16
17 public:
18 AliITSIntMap();
19 AliITSIntMap(const AliITSIntMap& imap);
20 virtual ~AliITSIntMap();
21 AliITSIntMap& operator=(const AliITSIntMap& imap);
22
23 void Clear();
24 Bool_t Insert(Int_t key, Int_t val);
25 Bool_t Remove(Int_t key);
26 AliITSIntMapNode* Find(Int_t key) const;
27 Int_t GetKey(UInt_t index) const;
28 Int_t GetVal(UInt_t index) const;
29 UInt_t GetNrEntries() const {return fNrEntries;}
30 void PrintEntries() const;
31
32 private:
33 UInt_t fNrEntries; // nr of entries in map
34 AliITSIntMapNode* fFirst; // link to first node of map
35
36};
37
38#endif