ROOT logo
#ifndef ALIMUONOBJECTPAIR_H
#define ALIMUONOBJECTPAIR_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice                               */

// $Id$

/// \ingroup core
/// \class AliMUONObjectPair
/// \brief The equivalent of a std::pair<TObject*,TObject*> ;-)
/// 
// Author Laurent Aphecetche

#ifndef ROOT_TObject
#  include "TObject.h"
#endif

class AliMUONObjectPair : public TObject
{
public:
  AliMUONObjectPair();
  AliMUONObjectPair(TObject* first, 
                    TObject* second,
                    Bool_t isOwnerOfFirst=kTRUE,
                    Bool_t isOwnerOfSecond=kFALSE);
  AliMUONObjectPair(const AliMUONObjectPair& other);
  AliMUONObjectPair& operator=(const AliMUONObjectPair& other);
  
  virtual ~AliMUONObjectPair();

  /// Return the first element of the pair
  TObject* First() const { return fFirst; }
  /// Return  the second element of the pair
  TObject* Second() const { return fSecond; }

  /// Return the first element of the pair 
  TObject* Key() const { return fFirst; }
  /// Return the second element of the pair 
  TObject* Value() const { return fSecond; }

  virtual void Copy(TObject& other) const;
  
  virtual void Print(Option_t* opt="") const;
  
  virtual void Clear(Option_t* opt="");
  
private:

  TObject* fFirst; ///< first element of the pair
  TObject* fSecond; ///< second element of the pair
  Bool_t fIsOwnerOfFirst; ///< whether we own the first element
  Bool_t fIsOwnerOfSecond; ///<whether we own the second element
  
  ClassDef(AliMUONObjectPair,1) // A pair of TObject*
};

#endif
 AliMUONObjectPair.h:1
 AliMUONObjectPair.h:2
 AliMUONObjectPair.h:3
 AliMUONObjectPair.h:4
 AliMUONObjectPair.h:5
 AliMUONObjectPair.h:6
 AliMUONObjectPair.h:7
 AliMUONObjectPair.h:8
 AliMUONObjectPair.h:9
 AliMUONObjectPair.h:10
 AliMUONObjectPair.h:11
 AliMUONObjectPair.h:12
 AliMUONObjectPair.h:13
 AliMUONObjectPair.h:14
 AliMUONObjectPair.h:15
 AliMUONObjectPair.h:16
 AliMUONObjectPair.h:17
 AliMUONObjectPair.h:18
 AliMUONObjectPair.h:19
 AliMUONObjectPair.h:20
 AliMUONObjectPair.h:21
 AliMUONObjectPair.h:22
 AliMUONObjectPair.h:23
 AliMUONObjectPair.h:24
 AliMUONObjectPair.h:25
 AliMUONObjectPair.h:26
 AliMUONObjectPair.h:27
 AliMUONObjectPair.h:28
 AliMUONObjectPair.h:29
 AliMUONObjectPair.h:30
 AliMUONObjectPair.h:31
 AliMUONObjectPair.h:32
 AliMUONObjectPair.h:33
 AliMUONObjectPair.h:34
 AliMUONObjectPair.h:35
 AliMUONObjectPair.h:36
 AliMUONObjectPair.h:37
 AliMUONObjectPair.h:38
 AliMUONObjectPair.h:39
 AliMUONObjectPair.h:40
 AliMUONObjectPair.h:41
 AliMUONObjectPair.h:42
 AliMUONObjectPair.h:43
 AliMUONObjectPair.h:44
 AliMUONObjectPair.h:45
 AliMUONObjectPair.h:46
 AliMUONObjectPair.h:47
 AliMUONObjectPair.h:48
 AliMUONObjectPair.h:49
 AliMUONObjectPair.h:50
 AliMUONObjectPair.h:51
 AliMUONObjectPair.h:52
 AliMUONObjectPair.h:53
 AliMUONObjectPair.h:54
 AliMUONObjectPair.h:55
 AliMUONObjectPair.h:56
 AliMUONObjectPair.h:57
 AliMUONObjectPair.h:58