| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | List of all members
Gaudi::Profile1D Class Reference

AIDA implementation for 1 D profiles using ROOT TProfile. More...

`#include <GaudiCommonSvc/P1D.h>`

Inheritance diagram for Gaudi::Profile1D:
[legend]
Collaboration diagram for Gaudi::Profile1D:
[legend]

## Public Member Functions
| Profile1D ()
| Default Constructor. More...
| Profile1D (TProfile *rep)
| Standard constructor with initialization. The histogram representation will be adopted. More...
bool | fill (double x, double y, double weight=1.) override
| Fill the Profile1D with a value and the corresponding weight. More...
virtual bool | setBinContents (int i, int entries, double height, double error, double spread, double centre)
const CLID & | clID () const override
| Retrieve reference to class defininition identifier. More...
Public Member Functions inherited from DataObject
| DataObject ()
| Standard Constructor. More...
| DataObject (const DataObject &rhs)
| Copy Constructor. More...
DataObject & | operator= (const DataObject &rhs)
| Assignment Operator. More...
| DataObject (DataObject &&rhs)
| Move Constructor. More...
DataObject & | operator= (DataObject &&rhs)
| Move Assignment Operator. More...
virtual | ~DataObject ()
| Standard Destructor. More...
virtual unsigned long | addRef ()
| Add reference to object. More...
virtual unsigned long | release ()
| release reference to object More...
const std::string & | name () const
| Retreive DataObject name. It is the name when registered in the store. More...
virtual StatusCode | update ()
| Provide empty placeholder for internal object reconfiguration callback. More...
void | setRegistry (IRegistry *pRegistry)
| Set pointer to Registry. More...
IRegistry * | registry () const
| Get pointer to Registry. More...
LinkManager * | linkMgr () const
| Retrieve Link manager. More...
unsigned char | version () const
| Retrieve version number of this object representation. More...
void | setVersion (unsigned char vsn)
| Set version number of this object representation. More...
unsigned long | refCount () const
| Return the refcount. More...
virtual std::ostream & | fillStream (std::ostream &s) const
| Fill the output stream (ASCII) More...
Public Member Functions inherited from Gaudi::Generic1D< INTERFACE, IMPLEMENTATION >
| Generic1D ()=default
| Default constructor. More...
| ~Generic1D () override=default
| Default destructor. More...
virtual const std::string & | userLevelClassType () const
| The AIDA user-level unterface leaf class type. More...
void * | cast (const std::string &cl) const override
| Manual cast by class name. More...
TObject * | representation () const override
| ROOT object implementation. More...
void | adoptRepresentation (TObject *rep) override
| Adopt ROOT histogram representation. More...
std::string | title () const override
| Get the title of the object. More...
bool | setTitle (const std::string &title) override
| Set the title of the object. More...
std::string | name () const
| object name More...
bool | setName (const std::string &newName)
| Set the name of the object. More...
AIDA::IAnnotation & | annotation () override
| Access annotation object. More...
const AIDA::IAnnotation & | annotation () const override
| Access annotation object (cons) More...
Axis & | axis ()
| Access to axis object. More...
const Axis & | axis () const override
| Get the x axis of the IHistogram1D. More...
int | entries () const override
| Get the number or all the entries. More...
int | allEntries () const override
| Get the number or all the entries, both in range and underflow/overflow bins of the IProfile. More...
int | extraEntries () const override
| Get the number of entries in the underflow and overflow bins. More...
int | binEntries (int index) const override
| Number of entries in the corresponding bin (ie the number of times fill was called for this bin). More...
virtual double | binRms (int index) const
double | sumBinHeights () const override
| Get the sum of in range bin heights in the IProfile. More...
double | sumAllBinHeights () const override
| Get the sum of all the bins heights (including underflow and overflow bin). More...
double | sumExtraBinHeights () const override
| Get the sum of the underflow and overflow bin height. More...
double | minBinHeight () const override
| Get the minimum height of the in-range bins. More...
double | maxBinHeight () const override
| Get the maximum height of the in-range bins. More...
virtual double | equivalentBinEntries () const
| Number of equivalent entries, i.e. `SUM[ weight ] ^ 2 / SUM[ weight^2 ]` More...
virtual bool | scale (double scaleFactor)
| Scale the weights and the errors of all the IHistogram's bins (in-range and out-of-range ones) by a given scale factor. More...
bool | reset () override
| Reset the Histogram; as if just created. More...
bool | add (const INTERFACE &profile) override
| Modifies this IProfile1D by adding the contents of profile to it. More...
virtual int | rIndex (int index) const
| operator methods More...
double | binMean (int index) const override
| The weighted mean of a bin. More...
double | binHeight (int index) const override
| Total height of the corresponding bin (ie the sum of the weights in this bin). More...
double | binError (int index) const override
| The error of a given bin. More...
double | mean () const override
| The mean of the whole IHistogram1D. More...
double | rms () const override
| The RMS of the whole IHistogram1D. More...
int | coordToIndex (double coord) const override
| Get the bin number corresponding to a given coordinate along the x axis. More...
int | dimension () const override
| Get the Histogram's dimension. More...
std::ostream & | print (std::ostream &s) const override
| Print (ASCII) the histogram into the output stream. More...
std::ostream & | write (std::ostream &s) const override
| Write (ASCII) the histogram table into the output stream. More...
int | write (const char *file_name) const override
| Write (ASCII) the histogram table into a file. More...
template<>
void * | cast (const std::string &className) const
template<>
int | binEntries (int index) const
template<>
void | adoptRepresentation (TObject *rep)
| Adopt ROOT histogram representation. More...
template<>
int | binEntries (int index) const
template<>
void * | cast (const std::string &className) const
template<>
void | adoptRepresentation (TObject *rep)
| Adopt ROOT histogram representation. More...
Public Member Functions inherited from Gaudi::HistogramBase
virtual | ~HistogramBase ()=default

## Static Public Member Functions
static const CLID & | classID ()
Static Public Member Functions inherited from DataObject
static const CLID & | classID ()
| Retrieve reference to class definition structure (static access) More...

## Private Types
typedef AIDA::IAnnotation | IAnnotation

## Private Member Functions
void | init (const std::string &title, bool initialize_axis=true)

## Additional Inherited Members
Public Types inherited from Gaudi::Generic1D< INTERFACE, IMPLEMENTATION >
typedef Generic1D< INTERFACE, IMPLEMENTATION > | Base
Protected Member Functions inherited from Gaudi::Generic1D< INTERFACE, IMPLEMENTATION >
| Generic1D (IMPLEMENTATION *p)
| constructor More...
Protected Attributes inherited from Gaudi::Generic1D< INTERFACE, IMPLEMENTATION >
Axis | m_axis
| Axis member. More...
AIDA::Annotation | m_annotation
| Object annotations. More...
std::unique_ptr< IMPLEMENTATION > | m_rep
| Reference to underlying implementation. More...
std::string | m_classType
int | m_sumEntries

## Detailed Description

AIDA implementation for 1 D profiles using ROOT TProfile.

Author
  M.Frank

Definition at line 20 of file P1D.h.

## Member Typedef Documentation

typedef AIDA::IAnnotation Gaudi::Profile1D::IAnnotation
| private

Definition at line 21 of file P1D.h.

## Constructor & Destructor Documentation

Gaudi::Profile1D::Profile1D | ( |  | ) |

Default Constructor.

Definition at line 72 of file P1D.cpp.

73 : Base( new TProfile() )
74 {
75 init("",false);
76 }
Gaudi::Generic1D::Base
Generic1D< INTERFACE, IMPLEMENTATION > Base
Definition: Generic1D.h:37
Gaudi::Profile1D::init
void init(const std::string &title, bool initialize_axis=true)
Definition: P1D.cpp:84

Gaudi::Profile1D::Profile1D | ( | TProfile * | rep | ) |

Standard constructor with initialization. The histogram representation will be adopted.

Definition at line 78 of file P1D.cpp.

79 : Base( rep)
80 {
81 init(m_rep->GetTitle());
82 }
Gaudi::Generic1D::m_rep
std::unique_ptr< IMPLEMENTATION > m_rep
Reference to underlying implementation.
Definition: Generic1D.h:129
Gaudi::Generic1D::Base
Generic1D< INTERFACE, IMPLEMENTATION > Base
Definition: Generic1D.h:37
Gaudi::Profile1D::init
void init(const std::string &title, bool initialize_axis=true)
Definition: P1D.cpp:84

## Member Function Documentation

static const CLID& Gaudi::Profile1D::classID | ( |  | ) |
| inline static

Definition at line 35 of file P1D.h.

35 { return CLID_ProfileH; }

const CLID& Gaudi::Profile1D::clID | ( |  | ) | const
| inline override virtual

Retrieve reference to class defininition identifier.

Reimplemented from DataObject.

Definition at line 34 of file P1D.h.

34 { return classID(); }
Gaudi::Profile1D::classID
static const CLID & classID()
Definition: P1D.h:35

bool Gaudi::Profile1D::fill | ( | double | x,
|  | double | y,
|  | double | weight = `1.`
| ) |  |
| override

Fill the Profile1D with a value and the corresponding weight.

Definition at line 114 of file P1D.cpp.

114 {
115 (weight == 1.) ? m_rep->Fill(x,y) : m_rep->Fill(x,y,weight);
116 return true;
117 }
Gaudi::Generic1D::m_rep
std::unique_ptr< IMPLEMENTATION > m_rep
Reference to underlying implementation.
Definition: Generic1D.h:129

void Gaudi::Profile1D::init | ( | const std::string & | title,
|  | bool | initialize_axis = `true`
| ) |  |
| private

Definition at line 84 of file P1D.cpp.

84 {
85 m_classType = "IProfile1D";
86 setTitle(title);
87 setName(title);
88 if ( initialize_axis ) {
89 axis().initialize(m_rep->GetXaxis(),false);
90 }
91 //m_rep->SetErrorOption("s");
92 m_rep->SetDirectory(nullptr);
93 m_sumEntries = 0;
94 }
Gaudi::Generic1D::m_classType
std::string m_classType
Definition: Generic1D.h:131
Gaudi::Generic1D::axis
Axis & axis()
Access to axis object.
Definition: Generic1D.h:67
Gaudi::Generic1D::m_rep
std::unique_ptr< IMPLEMENTATION > m_rep
Reference to underlying implementation.
Definition: Generic1D.h:129
Gaudi::Generic1D::setTitle
bool setTitle(const std::string &title) override
Set the title of the object.
Definition: Generic1D.h:137
Gaudi::Generic1D::m_sumEntries
int m_sumEntries
Definition: Generic1D.h:133
Gaudi::Axis::initialize
void initialize(TAxis *itaxi, bool)
Definition: Axis.h:66
Gaudi::Generic1D::setName
bool setName(const std::string &newName)
Set the name of the object.
Definition: Generic1D.h:147

bool Gaudi::Profile1D::setBinContents | ( | int | i,
|  | int | entries,
|  | double | height,
|  | double | error,
|  | double | spread,
|  | double | centre
| ) |  |
| virtual

Definition at line 96 of file P1D.cpp.

96 {
97 m_rep->SetBinEntries(rIndex(i), entries );
98 // set content takes in root height * entries
99 m_rep->SetBinContent(rIndex(i), height*entries );
100 // set error takes sqrt of bin sum(w*y**2)
101 double sumwy2Bin = ( spread*spread + height*height )*entries;
102 m_rep->SetBinError(rIndex(i), sqrt(sumwy2Bin) );
103 m_sumEntries += entries;
104 // not very efficient (but do evey bin since root cannot figure out by himself)
105 m_rep->SetEntries(m_sumEntries);
106 return true;
107 }
Gaudi::Generic1D::entries
int entries() const override
Get the number or all the entries.
Definition: Generic1D.h:72
Gaudi::Generic1D::m_rep
std::unique_ptr< IMPLEMENTATION > m_rep
Reference to underlying implementation.
Definition: Generic1D.h:129
Gaudi::Generic1D::m_sumEntries
int m_sumEntries
Definition: Generic1D.h:133
std::sqrt
T sqrt(T...args)
Gaudi::Generic1D::rIndex
virtual int rIndex(int index) const
operator methods
Definition: Generic1D.h:101

The documentation for this class was generated from the following files:

- GaudiCommonSvc/GaudiCommonSvc/P1D.h
- GaudiCommonSvc/src/HistogramSvc/P1D.cpp