Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooBinningCategory.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Project: RooFit *
3 * Package: RooFitCore *
4 * File: $Id$
5 * Authors: *
6 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8 * *
9 * Copyright (c) 2000-2005, Regents of the University of California *
10 * and Stanford University. All rights reserved. *
11 * *
12 * Redistribution and use in source and binary forms, *
13 * with or without modification, are permitted according to the terms *
14 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15 *****************************************************************************/
16#ifndef ROO_BINNING_CATEGORY
17#define ROO_BINNING_CATEGORY
18
19#include "RooAbsCategory.h"
20#include "RooTemplateProxy.h"
21#include "TString.h"
22
24
25public:
26 // Constructors etc.
27 inline RooBinningCategory() { }
28 RooBinningCategory(const char *name, const char *title, RooAbsRealLValue& inputVar, const char* binningName=0, const char* catTypeName=0);
29 RooBinningCategory(const RooBinningCategory& other, const char *name=0) ;
30 virtual TObject* clone(const char* newname) const { return new RooBinningCategory(*this, newname); }
31 virtual ~RooBinningCategory();
32
33 // Printing interface (human readable)
34 virtual void printMultiline(std::ostream& os, Int_t content, Bool_t verbose=kFALSE, TString indent="") const ;
35
36protected:
37
38 void initialize(const char* catTypeName=0) ;
39
40 RooTemplateProxy<RooAbsRealLValue> _inputVar; // Input variable that is mapped
41 TString _bname ; // Name of the binning specification to be used to perform the mapping
42
43 virtual value_type evaluate() const;
44 /// The shape of this category does not need to be recomputed, as it creates states on the fly.
45 void recomputeShape() { }
46
47 ClassDef(RooBinningCategory,1) // RealVar-to-Category function defined by bin boundaries on input var
48};
49
50#endif
const Bool_t kFALSE
Definition RtypesCore.h:92
#define ClassDef(name, id)
Definition Rtypes.h:325
static void indent(ostringstream &buf, int indent_level)
char name[80]
Definition TGX11.cxx:110
RooAbsCategory is the base class for objects that represent a discrete value with a finite number of ...
RooAbsRealLValue is the common abstract base class for objects that represent a real value that may a...
Class RooBinningCategory provides a real-to-category mapping defined by a series of thresholds.
virtual ~RooBinningCategory()
Destructor.
RooTemplateProxy< RooAbsRealLValue > _inputVar
virtual value_type evaluate() const
Calculate and return the value of the mapping function.
virtual void printMultiline(std::ostream &os, Int_t content, Bool_t verbose=kFALSE, TString indent="") const
Print info about this threshold category to the specified stream.
void recomputeShape()
The shape of this category does not need to be recomputed, as it creates states on the fly.
void initialize(const char *catTypeName=0)
Iterator over all bins in input variable and define corresponding state labels.
virtual TObject * clone(const char *newname) const
Mother of all ROOT objects.
Definition TObject.h:37
Basic string class.
Definition TString.h:136