AliRoot Core  a565103 (a565103)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMpIntPair.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 // $MpId: AliMpIntPair.h,v 1.6 2006/05/24 13:58:07 ivana Exp $
6 
15 
16 #ifndef ALI_MP_INT_PAIR_H
17 #define ALI_MP_INT_PAIR_H
18 
19 #include <TObject.h>
20 
21 using std::ostream;
22 
23 class AliMpIntPair : public TObject
24 {
25  public:
26  AliMpIntPair(Int_t ix,Int_t iy);
27  AliMpIntPair(Int_t ix,Int_t iy, Bool_t validity);
28  AliMpIntPair(const AliMpIntPair& right);
29  AliMpIntPair();
30  virtual ~AliMpIntPair();
31 
32  // operators
33  Bool_t operator < (const AliMpIntPair& pos2) const;
34  Bool_t operator == (const AliMpIntPair& pos2) const;
35  Bool_t operator != (const AliMpIntPair& pos2) const;
37  void operator += (const AliMpIntPair& op);
38  void operator -= (const AliMpIntPair& op);
39 
40  //
41  // static get methods
42  //
44  static AliMpIntPair Invalid() {return AliMpIntPair();}
45 
46  //
47  // get methods
48  //
50  Int_t GetFirst() const {return fFirst;}
52  Int_t GetSecond() const {return fSecond;}
54  Bool_t IsValid() const {return fValidity;}
55 
56  //
57  // set methods
58  //
60  void SetFirst(Int_t ix) {fFirst=ix; fValidity=true; }
62  void SetSecond(Int_t iy) {fSecond=iy; fValidity=true;}
64  void Set(Int_t ix, Int_t iy) { fFirst=ix; fSecond=iy; fValidity=true; }
65 
66  //
67  // TObject functions used for sorting in Root collections
68  //
70  virtual Bool_t IsSortable() const {return kTRUE;}
71  virtual Int_t Compare(const TObject* obj) const;
72 
73  private:
74  // data members
75  Int_t fFirst;
76  Int_t fSecond;
77  Bool_t fValidity;
78 
79  ClassDef(AliMpIntPair,1) // utility class for the motif type
80 };
81 
82 AliMpIntPair operator + (const AliMpIntPair& op1,const AliMpIntPair& op2);
83 AliMpIntPair operator - (const AliMpIntPair& op1,const AliMpIntPair& op2);
84 AliMpIntPair operator * (const AliMpIntPair& op1,const AliMpIntPair& op2);
85 ostream& operator << (ostream &stream,const AliMpIntPair& op);
86 
87 #endif //ALI_MP_INT_PAIR_H
AliMpIntPair & operator=(const AliMpIntPair &src)
virtual ~AliMpIntPair()
Int_t GetFirst() const
Return first value.
Definition: AliMpIntPair.h:50
Bool_t operator==(const AliMpIntPair &pos2) const
ostream & operator<<(ostream &stream, const AliMpIntPair &op)
Bool_t IsValid() const
Return validity.
Definition: AliMpIntPair.h:54
void SetSecond(Int_t iy)
Set second value.
Definition: AliMpIntPair.h:62
Int_t fFirst
the first value
Definition: AliMpIntPair.h:75
Bool_t fValidity
validity
Definition: AliMpIntPair.h:77
Int_t fSecond
the second value
Definition: AliMpIntPair.h:76
AliMpIntPair operator*(const AliMpIntPair &op1, const AliMpIntPair &op2)
void operator+=(const AliMpIntPair &op)
AliMpIntPair operator+(const AliMpIntPair &op1, const AliMpIntPair &op2)
Bool_t operator<(const AliMpIntPair &pos2) const
void Set(Int_t ix, Int_t iy)
Set both first and second value.
Definition: AliMpIntPair.h:64
void operator-=(const AliMpIntPair &op)
virtual Bool_t IsSortable() const
Return true as Compare() function is implemented.
Definition: AliMpIntPair.h:70
Bool_t operator!=(const AliMpIntPair &pos2) const
virtual Int_t Compare(const TObject *obj) const
void SetFirst(Int_t ix)
Set first value.
Definition: AliMpIntPair.h:60
A pair of integers.
Definition: AliMpIntPair.h:23
Int_t GetSecond() const
Return second value.
Definition: AliMpIntPair.h:52
AliMpIntPair operator-(const AliMpIntPair &op1, const AliMpIntPair &op2)
static AliMpIntPair Invalid()
Return invalid pair.
Definition: AliMpIntPair.h:44