ROOT logo
// @(#)root/roostats:$Id: SimpleInterval.h 26324 2008-11-20 17:17:32Z moneta $
// Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke
/*************************************************************************
 * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef RooStats_SimpleInterval
#define RooStats_SimpleInterval

#ifndef ROO_ARG_SET
#include "RooArgSet.h"
#endif
#ifndef RooStats_ConfInterval
#include "RooStats/ConfInterval.h"
#endif


namespace RooStats {
 class SimpleInterval : public ConfInterval {
  private:
    RooArgSet* fParameters; // parameter of interest
    Double_t fLowerLimit; // lower limit
    Double_t fUpperLimit; // upper limit
    Double_t fConfidenceLevel; // confidence level

  public:
    // constructors,destructors
    SimpleInterval();
    SimpleInterval(const char* name);
    SimpleInterval(const char* name, const char* title);
    SimpleInterval(const char* name, RooAbsArg*, Double_t, Double_t);
    SimpleInterval(const char* name, const char* title, RooAbsArg*, Double_t, Double_t);
    virtual ~SimpleInterval();
        
    virtual Bool_t IsInInterval(RooArgSet&);
    virtual void SetConfidenceLevel(Double_t cl) {fConfidenceLevel = cl;}
    virtual Double_t ConfidenceLevel() const {return fConfidenceLevel;}
 
    // Method to return lower limit
    Double_t LowerLimit() {return fLowerLimit;}
    // Method to return upper limit
    Double_t UpperLimit() {return fUpperLimit;}
    
    // do we want it to return list of parameters
    virtual RooArgSet* GetParameters() const;

    // check if parameters are correct. (dummy implementation to start)
    Bool_t CheckParameters(RooArgSet&) const ;


    
  protected:
    ClassDef(SimpleInterval,1)  // Concrete implementation of ConfInterval for simple 1-D intervals in the form [a,b]
      
  };
}

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