]>
Commit | Line | Data |
---|---|---|
dee1d5f1 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
5f91c9e8 | 4 | // $Id$ |
13985652 | 5 | // $MpId: AliMpIntPair.h,v 1.6 2006/05/24 13:58:07 ivana Exp $ |
dee1d5f1 | 6 | |
7 | /// \ingroup basic | |
8 | /// \class AliMpIntPair | |
9 | /// \brief A pair of integers. | |
10 | /// | |
11 | /// The pair created by the default constructor is in invalide state, | |
12 | /// setting one of values changes the state to valid. | |
13 | /// | |
13985652 | 14 | /// \author David Guez, Ivana Hrivnacova; IPN Orsay |
5f91c9e8 | 15 | |
16 | #ifndef ALI_MP_INT_PAIR_H | |
17 | #define ALI_MP_INT_PAIR_H | |
18 | ||
19 | #include <TObject.h> | |
20 | ||
21 | class AliMpIntPair : public TObject | |
22 | { | |
23 | public: | |
24 | AliMpIntPair(Int_t ix,Int_t iy); | |
25 | AliMpIntPair(Int_t ix,Int_t iy, Bool_t validity); | |
26 | AliMpIntPair(const AliMpIntPair& right); | |
27 | AliMpIntPair(); | |
28 | virtual ~AliMpIntPair(); | |
29 | ||
30 | // operators | |
31 | Bool_t operator < (const AliMpIntPair& pos2) const; | |
32 | Bool_t operator == (const AliMpIntPair& pos2) const; | |
33 | Bool_t operator != (const AliMpIntPair& pos2) const; | |
34 | AliMpIntPair& operator = (const AliMpIntPair& src) ; | |
35 | void operator += (const AliMpIntPair& op); | |
36 | void operator -= (const AliMpIntPair& op); | |
37 | ||
38 | // static get methods | |
39 | static AliMpIntPair Invalid() {return AliMpIntPair();} | |
40 | ||
41 | // get methods | |
42 | Int_t GetFirst() const {return fFirst;} | |
43 | Int_t GetSecond() const {return fSecond;} | |
44 | Bool_t IsValid() const {return fValidity;} | |
45 | ||
46 | // set methods | |
47 | void SetFirst(Int_t ix) {fFirst=ix; fValidity=true; } | |
48 | void SetSecond(Int_t iy) {fSecond=iy; fValidity=true;} | |
49 | ||
ef053765 | 50 | // TObject functions used for sorting in Root collections |
51 | virtual Bool_t IsSortable() const {return kTRUE;} | |
52 | virtual Int_t Compare(const TObject* obj) const; | |
53 | ||
5f91c9e8 | 54 | private: |
55 | // data members | |
829425a5 | 56 | Int_t fFirst; ///< the first value |
57 | Int_t fSecond; ///< the second value | |
58 | Bool_t fValidity; ///< validity | |
5f91c9e8 | 59 | |
829425a5 | 60 | ClassDef(AliMpIntPair,1) // utility class for the motif type |
5f91c9e8 | 61 | }; |
62 | ||
63 | AliMpIntPair operator + (const AliMpIntPair& op1,const AliMpIntPair& op2); | |
64 | AliMpIntPair operator - (const AliMpIntPair& op1,const AliMpIntPair& op2); | |
65 | AliMpIntPair operator * (const AliMpIntPair& op1,const AliMpIntPair& op2); | |
66 | ostream& operator << (ostream &stream,const AliMpIntPair& op); | |
67 | ||
68 | #endif //ALI_MP_INT_PAIR_H |