ROOT logo
#ifndef ALI_CDB_RUN_RANGE_H
#define ALI_CDB_RUN_RANGE_H

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

/////////////////////////////////////////////////////////////////////
//                                                                 //
//  class AliCDBRunRange					   //
//  defines the run validity range of the object:		   //
//  [fFirstRun, fLastRun] 					   //
//                                                                 //
/////////////////////////////////////////////////////////////////////

#include <TObject.h>

class AliCDBRunRange: public TObject {

  public:
    AliCDBRunRange();
    AliCDBRunRange(Int_t firstRun, Int_t lastRun);

    virtual ~AliCDBRunRange();


    Int_t 	GetFirstRun() const {return fFirstRun;};
    Int_t 	GetLastRun() const {return fLastRun;};

    void 	SetFirstRun(Int_t firstRun) {fFirstRun = firstRun;};
    void 	SetLastRun(Int_t lastRun) {fLastRun = lastRun;};

    void 	SetRunRange(Int_t firstRun, Int_t lastRun) 
    {fFirstRun=firstRun; fLastRun = lastRun;};


    Bool_t IsValid() const;

    Bool_t IsAnyRange() const {return fFirstRun < 0 && fLastRun < 0;};

    Bool_t Overlaps(const AliCDBRunRange& other) const;

    Bool_t Comprises(const AliCDBRunRange& other) const;

    virtual Bool_t IsEqual(const TObject *obj) const;

    static Int_t Infinity() {return fgkInfinity;}

  private:

    Int_t fFirstRun;	// first valid run
    Int_t fLastRun;		// last valid run	

    static const Int_t fgkInfinity = 999999999; 	 //! Flag for "infinity"

    ClassDef(AliCDBRunRange, 1);	
};


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