Line data Source code
1 : #ifndef ALIMUONOBJECTPAIR_H
2 : #define ALIMUONOBJECTPAIR_H
3 :
4 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 : * See cxx source for full Copyright notice */
6 :
7 : // $Id$
8 :
9 : /// \ingroup core
10 : /// \class AliMUONObjectPair
11 : /// \brief The equivalent of a std::pair<TObject*,TObject*> ;-)
12 : ///
13 : // Author Laurent Aphecetche
14 :
15 : #ifndef ROOT_TObject
16 : # include "TObject.h"
17 : #endif
18 :
19 : class AliMUONObjectPair : public TObject
20 : {
21 : public:
22 : AliMUONObjectPair();
23 : AliMUONObjectPair(TObject* first,
24 : TObject* second,
25 : Bool_t isOwnerOfFirst=kTRUE,
26 : Bool_t isOwnerOfSecond=kFALSE);
27 : AliMUONObjectPair(const AliMUONObjectPair& other);
28 : AliMUONObjectPair& operator=(const AliMUONObjectPair& other);
29 :
30 : virtual ~AliMUONObjectPair();
31 :
32 : /// Return the first element of the pair
33 288 : TObject* First() const { return fFirst; }
34 : /// Return the second element of the pair
35 288 : TObject* Second() const { return fSecond; }
36 :
37 : /// Return the first element of the pair
38 0 : TObject* Key() const { return fFirst; }
39 : /// Return the second element of the pair
40 0 : TObject* Value() const { return fSecond; }
41 :
42 : virtual void Copy(TObject& other) const;
43 :
44 : virtual void Print(Option_t* opt="") const;
45 :
46 : virtual void Clear(Option_t* opt="");
47 :
48 : private:
49 :
50 : TObject* fFirst; ///< first element of the pair
51 : TObject* fSecond; ///< second element of the pair
52 : Bool_t fIsOwnerOfFirst; ///< whether we own the first element
53 : Bool_t fIsOwnerOfSecond; ///<whether we own the second element
54 :
55 1362 : ClassDef(AliMUONObjectPair,1) // A pair of TObject*
56 : };
57 :
58 : #endif
|