correct Hash in TMap, reading channel names
[u/mrichter/AliRoot.git] / T0 / AliT0LookUpValue.h
index 67b8ddd..47e8adc 100644 (file)
@@ -12,18 +12,19 @@ class AliT0LookUpValue: public TObject
   AliT0LookUpValue(); 
   AliT0LookUpValue(Int_t trm, Int_t tdc, Int_t chain, Int_t channel );
   virtual Bool_t IsEqual(const TObject* obj) const ;
-  virtual ULong_t Hash(void) const;
-  //  virtual ULong_t Hash(void) const {return TString::Hash(this, sizeof(*this));};
-   Int_t GetTRM(void) const {return fTRM;};
-   Int_t GetTDC(void) const {return fTDC;};
-   Int_t GetChain(void) const {return fChain;};
-   Int_t GetChannel(void) const {return fChannel;};
+  virtual ULong_t Hash() const {return (ULong_t) 1000000*fTRM+100000*fTDC+1000*fChannel;}
+  //   virtual ULong_t Hash(void) const {return TString::Hash(this, sizeof(*this));};
+   Int_t GetTRM() const {return fTRM;};
+   Int_t GetTDC() const {return fTDC;};
+   Int_t GetChain() const {return fChain;};
+   Int_t GetChannel() const {return fChannel;};
    void SetTRM(Int_t n) {fTRM=n;};
    void SetTDC(Int_t n) {fTDC=n;};
    void SetChain(Int_t n) {fChain=n;};
    void SetChannel(Int_t n) {fChannel=n;};
-   virtual void Clear (void) {fTRM = -1; fTDC=-1; fChain=-1;  fChannel=-1;}
+   virtual void Clear () {fTRM = -1; fTDC=-1; fChain=-1;  fChannel=-1;}
    void Clear(const Option_t*) {};
+   void Print(Option_t* opt= "") const;
 
  protected:
 
@@ -41,12 +42,14 @@ class AliT0LookUpKey: public TObject
   AliT0LookUpKey();
   AliT0LookUpKey(Int_t key); 
   AliT0LookUpKey(TString name); 
-  Int_t GetKey(void) const {return fKey;};
+  Int_t GetKey() const {return fKey;};
   void SetKey(Int_t n)  {fKey=n;};
   TString GetChannelName() {return fName;};
   void SetChannelName(TString name) {fName = name;};
   virtual Bool_t IsEqual(const TObject *obj) const;
-  virtual ULong_t Hash(void) const {return TString::Hash(this, sizeof(*this));};
+  void Print(Option_t* opt= "") const;
+    virtual ULong_t Hash() const {return 10000*fKey;}
+  //    virtual ULong_t Hash(void) const {return TString::Hash(this, sizeof(*this));};
   //   virtual void Clear(void) {fKey=0;}
  protected:
   Int_t fKey;   //logical channel number