| # Gaudi Framework, version v22r2 |

Home |  | Generated: Tue May 10 2011

Public Types | Public Member Functions | Private Member Functions

# HistoTool Class Reference

Simple tool for histogramming (component) More...

`#include <components/HistoTool.h>`

Inheritance diagram for HistoTool:
[legend]
Collaboration diagram for HistoTool:
[legend]

List of all members.

## Public Types
typedef IHistoTool::HistoID | HistoID
| the actual type for histogram identifier (HBOOK style)
## Public Member Functions
| HistoTool (const std::string &type, const std::string &name, const IInterface *parent)
| Standard constructor.
virtual | ~HistoTool ()
virtual AIDA::IHistogram1D * | plot1D (const double value, const std::string &title, const double low, const double high, const unsigned long bins=100, const double weight=1.0) const
| fill the 1D histogram (book on demand)
virtual AIDA::IHistogram1D * | plot1D (const double value, const HistoID &ID, const std::string &title, const double low, const double high, const unsigned long bins=100, const double weight=1.0) const
| fill the 1D histogram with forced ID assignement (book on demand)
virtual AIDA::IHistogram2D * | plot2D (const double valueX, const double valueY, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const unsigned long binsX=50, const unsigned long binsY=50, const double weight=1.0) const
| fill the 2D histogram (book on demand)
virtual AIDA::IHistogram2D * | plot2D (const double valueX, const double valueY, const HistoID &ID, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const unsigned long binsX=50, const unsigned long binsY=50, const double weight=1.0) const
| fill the 2D histogram with forced ID assignment (book on demand)
virtual AIDA::IHistogram3D * | plot3D (const double valueX, const double valueY, const double valueZ, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const double lowZ, const double highZ, const unsigned long binsX=10, const unsigned long binsY=10, const unsigned long binsZ=10, const double weight=1.0) const
| fill the 3D histogram (book on demand)
virtual AIDA::IHistogram3D * | plot3D (const double valueX, const double valueY, const double valueZ, const HistoID &ID, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const double lowZ, const double highZ, const unsigned long binsX=10, const unsigned long binsY=10, const unsigned long binsZ=10, const double weight=1.0) const
| fill the 3D histogram with forced ID assignment (book on demand)
virtual AIDA::IHistogram1D * | book1D (const std::string &title, const double low=0, const double high=100, const unsigned long bins=100) const
| book the 1D histogram
virtual AIDA::IHistogram2D * | book2D (const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=50, const double lowY=0, const double highY=100, const unsigned long binsY=50) const
| book the 2D histogram
virtual AIDA::IHistogram3D * | book3D (const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=10, const double lowY=0, const double highY=100, const unsigned long binsY=10, const double lowZ=0, const double highZ=100, const unsigned long binsZ=10) const
| book the 3D histogram
virtual AIDA::IHistogram1D * | book1D (const HistoID &ID, const std::string &title="", const double low=0, const double high=100, const unsigned long bins=100) const
| book the 1D histogram with forced ID
virtual AIDA::IHistogram2D * | book2D (const HistoID &ID, const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=50, const double lowY=0, const double highY=100, const unsigned long binsY=50) const
| book the 2D histogram with forced ID
virtual AIDA::IHistogram3D * | book3D (const HistoID &ID, const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=10, const double lowY=0, const double highY=100, const unsigned long binsY=10, const double lowZ=0, const double highZ=100, const unsigned long binsZ=10) const
| book the 3D histogram with forced ID
virtual AIDA::IHistogram1D * | fill (AIDA::IHistogram1D *histo, const double value, const double weight, const std::string &title="") const
| fill the 1D histo with the value and weight
virtual AIDA::IHistogram2D * | fill (AIDA::IHistogram2D *histo, const double valueX, const double valueY, const double weight, const std::string &title="") const
| fill the 2D histo with the value and weight
virtual AIDA::IHistogram3D * | fill (AIDA::IHistogram3D *histo, const double valueX, const double valueY, const double valueZ, const double weight, const std::string &title="") const
| fill the 3D histo with the value and weight
virtual AIDA::IHistogram1D * | histo1D (const std::string &title) const
| access the EXISTING 1D histogram by title return the pointer to existing 1D histogram or NULL
virtual AIDA::IHistogram1D * | histo1D (const HistoID &ID) const
| access the EXISTING 1D histogram by ID return the pointer to existing 1D histogram or NULL
virtual AIDA::IHistogram2D * | histo2D (const std::string &title) const
| access the EXISTING 2D histogram by title return the pointer to existing 2D histogram or NULL
virtual AIDA::IHistogram2D * | histo2D (const HistoID &ID) const
| access the EXISTING 2D histogram by ID return the pointer to existing 2D histogram or NULL
virtual AIDA::IHistogram3D * | histo3D (const std::string &title) const
| access the EXISTING 3D histogram by title return the pointer to existing 3D histogram or NULL
virtual AIDA::IHistogram3D * | histo3D (const HistoID &ID) const
| access the EXISTING 3D histogram by ID return the pointer to existing 3D histogram or NULL
virtual bool | histoExists (const std::string &title) const
| check the existence AND validity of the histogram with given title
virtual bool | histoExists (const HistoID &ID) const
| check the existence AND validity of the histogram with given title
## Private Member Functions
| HistoTool ()
| HistoTool (const HistoTool &)
HistoTool & | operator= (const HistoTool &)

## Detailed Description

Simple tool for histogramming (component)

Author:
  Vanya BELYAEV Ivan.Belyaev@itep.ru

Date:
  2004-06-28

Definition at line 30 of file HistoTool.h.

## Member Typedef Documentation

typedef IHistoTool::HistoID HistoTool::HistoID

the actual type for histogram identifier (HBOOK style)

Reimplemented from IHistoTool.

Definition at line 34 of file HistoTool.h.

## Constructor & Destructor Documentation

HistoTool::HistoTool | ( | const std::string & | type,
|  | const std::string & | name,
|  | const IInterface * | parent
| ) |  |

Standard constructor.

See also:
  GaudiHistoTool
  GaudiTool
  AlgTool

Parameters:

  type | tool type
  name | tool name
  parent | pointer to the parent object

Definition at line 29 of file HistoTool.cpp.

      : GaudiHistoTool ( type, name , parent )
    {
      declareInterface<IHistoTool>(this);
    }

HistoTool::~HistoTool | ( | ) | `[virtual]`

Definition at line 42 of file HistoTool.cpp.

    {}

HistoTool::HistoTool | ( | ) | `[private]`

HistoTool::HistoTool | ( | const HistoTool & | ) | `[private]`

## Member Function Documentation

virtual AIDA::IHistogram1D* HistoTool::book1D | ( | const std::string & | title,
|  | const double | low = `0`,
|  | const double | high = `100`,
|  | const unsigned long | bins = `100`
| ) |  | const`[inline, virtual]`

book the 1D histogram

The histogram will be assigned a unique identifier

See also:
  IHistogram1D

Parameters:

  title | histogram title (must be unique within the algorithm)
  low | low limit for histogram
  high | high limit for histogram
  bins | number of bins

Returns:
  pointer to AIDA 1D histogram

Implements IHistoTool.

Definition at line 171 of file HistoTool.h.

      {
        return GaudiHistoTool::book1D ( title , low , high , bins ) ;
      };

virtual AIDA::IHistogram1D* HistoTool::book1D | ( | const HistoID & | ID,
|  | const std::string & | title = `""`,
|  | const double | low = `0`,
|  | const double | high = `100`,
|  | const unsigned long | bins = `100`
| ) |  | const`[inline, virtual]`

book the 1D histogram with forced ID

See also:
  IHistogram1D

Parameters:

  ID | unique histogram ID
  title | histogram title (must be unique within the algorithm)
  low | low limit for histogram
  high | high limit for histogram
  bins | number of bins

Returns:
  pointer to AIDA histogram

Implements IHistoTool.

Definition at line 213 of file HistoTool.h.

      {
        return GaudiHistoTool::book1D ( ID , title , low , high , bins ) ;
      };

virtual AIDA::IHistogram2D* HistoTool::book2D | ( | const std::string & | title,
|  | const double | lowX = `0`,
|  | const double | highX = `100`,
|  | const unsigned long | binsX = `50`,
|  | const double | lowY = `0`,
|  | const double | highY = `100`,
|  | const unsigned long | binsY = `50`
| ) |  | const`[inline, virtual]`

book the 2D histogram

The histogram will be assigned a unique identifier

See also:
  IHistogram2D

Parameters:

  title | histogram title (must be unique within the algorithm)
  lowX | low x limit for histogram
  highX | high x limit for histogram
  binsX | number of bins in x
  lowY | low y limit for histogram
  highY | high y limit for histogram
  binsY | number of bins in y

Returns:
  pointer to AIDA 2D histogram

Implements IHistoTool.

Definition at line 181 of file HistoTool.h.

      {
        return GaudiHistoTool::book2D ( title, lowX, highX, binsX, lowY, highY, binsY ) ;
      }

virtual AIDA::IHistogram2D* HistoTool::book2D | ( | const HistoID & | ID,
|  | const std::string & | title,
|  | const double | lowX = `0`,
|  | const double | highX = `100`,
|  | const unsigned long | binsX = `50`,
|  | const double | lowY = `0`,
|  | const double | highY = `100`,
|  | const unsigned long | binsY = `50`
| ) |  | const`[inline, virtual]`

book the 2D histogram with forced ID

See also:
  IHistogram2D

Parameters:

  ID | unique histogram ID
  title | histogram title (must be unique within the algorithm)
  low | low limit for histogram
  high | high limit for histogram
  bins | number of bins

Returns:
  pointer to AIDA histogram

Implements IHistoTool.

Definition at line 224 of file HistoTool.h.

      {
        return GaudiHistoTool::book2D ( ID, title, lowX, highX, binsX, lowY, highY, binsY ) ;
      }

virtual AIDA::IHistogram3D* HistoTool::book3D | ( | const std::string & | title,
|  | const double | lowX = `0`,
|  | const double | highX = `100`,
|  | const unsigned long | binsX = `10`,
|  | const double | lowY = `0`,
|  | const double | highY = `100`,
|  | const unsigned long | binsY = `10`,
|  | const double | lowZ = `0`,
|  | const double | highZ = `100`,
|  | const unsigned long | binsZ = `10`
| ) |  | const`[inline, virtual]`

book the 3D histogram

The histogram will be assigned a unique identifier

See also:
  IHistogram3D

Parameters:

  title | histogram title (must be unique within the algorithm)
  lowX | low x limit for histogram
  highX | high x limit for histogram
  binsX | number of bins in x
  lowY | low y limit for histogram
  highY | high y limit for histogram
  binsY | number of bins in y
  lowZ | low y limit for histogram
  highZ | high y limit for histogram
  binsZ | number of bins in y

Returns:
  pointer to AIDA 3D histogram

Implements IHistoTool.

Definition at line 194 of file HistoTool.h.

      {
        return GaudiHistoTool::book3D ( title,
                                        lowX, highX, binsX,
                                        lowY, highY, binsY,
                                        lowZ, highZ, binsZ ) ;
      }

virtual AIDA::IHistogram3D* HistoTool::book3D | ( | const HistoID & | ID,
|  | const std::string & | title,
|  | const double | lowX = `0`,
|  | const double | highX = `100`,
|  | const unsigned long | binsX = `10`,
|  | const double | lowY = `0`,
|  | const double | highY = `100`,
|  | const unsigned long | binsY = `10`,
|  | const double | lowZ = `0`,
|  | const double | highZ = `100`,
|  | const unsigned long | binsZ = `10`
| ) |  | const`[inline, virtual]`

book the 3D histogram with forced ID

See also:
  IHistogram3D

Parameters:

  ID | unique histogram ID
  title | histogram title (must be unique within the algorithm)
  lowX | low x limit for histogram
  highX | high x limit for histogram
  binsX | number of bins in x
  lowY | low y limit for histogram
  highY | high y limit for histogram
  binsY | number of bins in y
  lowZ | low y limit for histogram
  highZ | high y limit for histogram
  binsZ | number of bins in y

Returns:
  pointer to AIDA 3D histogram

Implements IHistoTool.

Definition at line 238 of file HistoTool.h.

      {
        return GaudiHistoTool::book3D ( ID, title,
                                        lowX, highX, binsX,
                                        lowY, highY, binsY,
                                        lowZ, highZ, binsZ ) ;
      }

virtual AIDA::IHistogram1D* HistoTool::fill | ( | AIDA::IHistogram1D * | histo,
|  | const double | value,
|  | const double | weight,
|  | const std::string & | title = `""`
| ) |  | const`[inline, virtual]`

fill the 1D histo with the value and weight

Parameters:

  histo | 1D histogram to be filled
  value | value to be put into the histogram
  weight | weight to be used
  title | histogram title (to be used for error report)

Returns:
  pointer to AIDA 1D histogram

Implements IHistoTool.

Definition at line 258 of file HistoTool.h.

      {
        return GaudiHistoTool::fill ( histo , value , weight , title ) ;
      };

virtual AIDA::IHistogram2D* HistoTool::fill | ( | AIDA::IHistogram2D * | histo,
|  | const double | valueX,
|  | const double | valueY,
|  | const double | weight,
|  | const std::string & | title = `""`
| ) |  | const`[inline, virtual]`

fill the 2D histo with the value and weight

Parameters:

  histo | 2D histogram to be filled
  valueX | x value to be put into the histogram
  valueY | y value to be put into the histogram
  weight | weight to be used
  title | histogram title (to be used for error report)

Returns:
  pointer to AIDA 2D histogram

Implements IHistoTool.

Definition at line 268 of file HistoTool.h.

      {
        return GaudiHistoTool::fill ( histo , valueX , valueY , weight , title ) ;
      };

virtual AIDA::IHistogram3D* HistoTool::fill | ( | AIDA::IHistogram3D * | histo,
|  | const double | valueX,
|  | const double | valueY,
|  | const double | valueZ,
|  | const double | weight,
|  | const std::string & | title = `""`
| ) |  | const`[inline, virtual]`

fill the 3D histo with the value and weight

Parameters:

  histo | 3D histogram to be filled
  valueX | x value to be put into the histogram
  valueY | y value to be put into the histogram
  valueZ | z value to be put into the histogram
  weight | weight to be used
  title | histogram title (to be used for error report)

Returns:
  pointer to AIDA 3D histogram

Implements IHistoTool.

Definition at line 279 of file HistoTool.h.

      {
        return GaudiHistoTool::fill ( histo , valueX , valueY , valueZ, weight , title ) ;
      };

virtual AIDA::IHistogram1D* HistoTool::histo1D | ( | const std::string & | title ) | const`[inline, virtual]`

access the EXISTING 1D histogram by title return the pointer to existing 1D histogram or NULL

Implements IHistoTool.

Definition at line 290 of file HistoTool.h.

      { return GaudiHistoTool::histo1D ( title ) ; }

virtual AIDA::IHistogram1D* HistoTool::histo1D | ( | const HistoID & | ID ) | const`[inline, virtual]`

access the EXISTING 1D histogram by ID return the pointer to existing 1D histogram or NULL

Implements IHistoTool.

Definition at line 294 of file HistoTool.h.

      { return GaudiHistoTool::histo1D ( ID ) ; }

virtual AIDA::IHistogram2D* HistoTool::histo2D | ( | const std::string & | title ) | const`[inline, virtual]`

access the EXISTING 2D histogram by title return the pointer to existing 2D histogram or NULL

Implements IHistoTool.

Definition at line 298 of file HistoTool.h.

      { return GaudiHistoTool::histo2D ( title ) ; }

virtual AIDA::IHistogram2D* HistoTool::histo2D | ( | const HistoID & | ID ) | const`[inline, virtual]`

access the EXISTING 2D histogram by ID return the pointer to existing 2D histogram or NULL

Implements IHistoTool.

Definition at line 302 of file HistoTool.h.

      { return GaudiHistoTool::histo2D ( ID ) ; }

virtual AIDA::IHistogram3D* HistoTool::histo3D | ( | const std::string & | title ) | const`[inline, virtual]`

access the EXISTING 3D histogram by title return the pointer to existing 3D histogram or NULL

Implements IHistoTool.

Definition at line 306 of file HistoTool.h.

      { return GaudiHistoTool::histo3D ( title ) ; }

virtual AIDA::IHistogram3D* HistoTool::histo3D | ( | const HistoID & | ID ) | const`[inline, virtual]`

access the EXISTING 3D histogram by ID return the pointer to existing 3D histogram or NULL

Implements IHistoTool.

Definition at line 310 of file HistoTool.h.

      { return GaudiHistoTool::histo3D ( ID ) ; }

virtual bool HistoTool::histoExists | ( | const HistoID & | ID ) | const`[inline, virtual]`

check the existence AND validity of the histogram with given title

Implements IHistoTool.

Definition at line 318 of file HistoTool.h.

      { return GaudiHistoTool::histoExists ( ID ) ; }

virtual bool HistoTool::histoExists | ( | const std::string & | title ) | const`[inline, virtual]`

check the existence AND validity of the histogram with given title

Implements IHistoTool.

Definition at line 314 of file HistoTool.h.

      { return GaudiHistoTool::histoExists ( title ) ; }

HistoTool& HistoTool::operator= | ( | const HistoTool & | ) | `[private]`

virtual AIDA::IHistogram1D* HistoTool::plot1D | ( | const double | value,
|  | const HistoID & | ID,
|  | const std::string & | title,
|  | const double | low,
|  | const double | high,
|  | const unsigned long | bins = `100`,
|  | const double | weight = `1.0`
| ) |  | const`[inline, virtual]`

fill the 1D histogram with forced ID assignement (book on demand)

         const double mass = ... ;
         plot1D( mass , 15 , "Invariant Mass" , 2.5 , 3.5 , 100 )

- This example illustrates the filling of the 1D histogram ID=15 titled `"Invariant Mass"` with value `mass` .
- If the histogram with given ID does not exist yet it will be automatically booked with parameters `low` equal to 2.5, parameters `high` equal to 3.5 and `bins` equal to 100.

Attention:
  If the histogram with given ID is already booked through automatic assignement of histogram ID, the error will not be detected. Therefore it is recommended to use non-trivial histogram ID offset (property "HistoOffSet") if one need to combine these techniques together It is still desirable to use the unique histogram title to avoid a bad interference.

Note : This method is more efficient that the similar method without forced ID, since the histogram lookup is faster using a numerical ID.

See also:
  AIDA::IHistogram1D

Parameters:

  value | value to be filled
  ID | histogram identifier
  title | histogram title (must be unique within the algorithm)
  low | low limit for histogram
  high | high limit for histogram
  bins | number of bins
  weight | weight

Returns:
  pointer to AIDA histogram

Implements IHistoTool.

Definition at line 71 of file HistoTool.h.

      {
        return GaudiHistoTool::plot1D
          ( value , ID , title , low , high , bins , weight ) ;
      };

virtual AIDA::IHistogram1D* HistoTool::plot1D | ( | const double | value,
|  | const std::string & | title,
|  | const double | low,
|  | const double | high,
|  | const unsigned long | bins = `100`,
|  | const double | weight = `1.0`
| ) |  | const`[inline, virtual]`

fill the 1D histogram (book on demand)

         const double mass = ... ;
         plot1D( mass , "Invariant Mass" , 2.5 , 3.5 , 100 )

- This example illustrates the filling of the histogram titled `"InvariantMass"` with value `mass` .
- If the histogram with given title does not exist yet it will be automatically booked with parameters `low` equal to 2.5, parameters `high` equal to 3.5 and `bins` equal to 100.

The histogram will get a unique integer identifier automatically assigned.

See also:
  AIDA::IHistogram1D

Parameters:

  value | value to be filled
  title | histogram title (must be unique within the algorithm)
  low | low limit for histogram
  high | high limit for histogram
  bins | number of bins
  weight | weight

Returns:
  pointer to AIDA 1D histogram

Implements IHistoTool.

Definition at line 57 of file HistoTool.h.

      {
        return GaudiHistoTool::plot1D
          ( value , title , low , high , bins , weight ) ;
      };

virtual AIDA::IHistogram2D* HistoTool::plot2D | ( | const double | valueX,
|  | const double | valueY,
|  | const std::string & | title,
|  | const double | lowX,
|  | const double | highX,
|  | const double | lowY,
|  | const double | highY,
|  | const unsigned long | binsX = `50`,
|  | const unsigned long | binsY = `50`,
|  | const double | weight = `1.0`
| ) |  | const`[inline, virtual]`

fill the 2D histogram (book on demand)

         const double mass1 = ... ;
         const double mass2 = ... ;
         plot2D( mass1, mass2, "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 4.5, 5.5, 100, 200 );

- This example illustrates the filling of the 2D histogram titled `"Invariant Mass2 versus Mass1"` with values `mass1` and `mass2` .
- If the histogram with given title does not exist yet it will be automatically booked with parameters `lowX` equal to 2.5, `highX` equal to 3.5, `lowY` equal to 4.5, `highY` equal to 5.5, `binsX` equal to 100 and `binsY` equal to 200.

The histogram will get a unique integer identifier automatically assigned

See also:
  AIDA::IHistogram2D

Parameters:

  valueX | x value to be filled
  valueY | y value to be filled
  title | histogram title (must be unique within the algorithm)
  lowX | low x limit for histogram
  highX | high x limit for histogram
  lowY | low y limit for histogram
  highY | high y limit for histogram
  binsX | number of bins in x
  binsY | number of bins in y
  weight | weight

Returns:
  pointer to AIDA 2D histogram

Implements IHistoTool.

Definition at line 87 of file HistoTool.h.

      {
        return GaudiHistoTool::plot2D
          ( valueX, valueY, title, lowX, highX, lowY, highY, binsX, binsY, weight ) ;
      };

virtual AIDA::IHistogram2D* HistoTool::plot2D | ( | const double | valueX,
|  | const double | valueY,
|  | const HistoID & | ID,
|  | const std::string & | title,
|  | const double | lowX,
|  | const double | highX,
|  | const double | lowY,
|  | const double | highY,
|  | const unsigned long | binsX = `50`,
|  | const unsigned long | binsY = `50`,
|  | const double | weight = `1.0`
| ) |  | const`[inline, virtual]`

fill the 2D histogram with forced ID assignment (book on demand)

         const double mass1 = ... ;
         const double mass2 = ... ;
         plot2D( mass1, mass2, 15, "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 4.5, 5.5, 100, 200 );

- This example illustrates the filling of the 2D histogram ID=15 titled `"Invariant Mass2 versus Mass1"` with values `mass1` and `mass2` .
- If the histogram with given title does not exist yet it will be automatically booked with parameters `lowX` equal to 2.5, `highX` equal to 3.5, `lowY` equal to 4.5, `highY` equal to 5.5, `binsX` equal to 100 and `binsY` equal to 200.

Attention:
  If the histogram with given ID is already booked through automatic assignment of histogram ID, the error will not be detected. Therefore it is recommended to use non-trivial histogram ID offset (property "HistoOffSet") if one need to combine these techniques together It is still desirable to use the unique histogram title to avoid a bad interference

Note : This method is more efficient that the similar method without forced ID, since the histogram lookup is faster using a numerical ID.

See also:
  AIDA::IHistogram2D

Parameters:

  valueX | x value to be filled
  valueY | y value to be filled
  ID | Histogram ID to use
  title | histogram title (must be unique within the algorithm)
  lowX | low x limit for histogram
  highX | high x limit for histogram
  lowY | low y limit for histogram
  highY | high y limit for histogram
  binsX | number of bins in x
  binsY | number of bins in y
  weight | weight

Returns:
  pointer to AIDA 2D histogram

Implements IHistoTool.

Definition at line 104 of file HistoTool.h.

      {
        return GaudiHistoTool::plot2D
          ( valueX, valueY, ID, title, lowX, highX, lowY, highY, binsX, binsY, weight ) ;
      };

virtual AIDA::IHistogram3D* HistoTool::plot3D | ( | const double | valueX,
|  | const double | valueY,
|  | const double | valueZ,
|  | const HistoID & | ID,
|  | const std::string & | title,
|  | const double | lowX,
|  | const double | highX,
|  | const double | lowY,
|  | const double | highY,
|  | const double | lowZ,
|  | const double | highZ,
|  | const unsigned long | binsX = `10`,
|  | const unsigned long | binsY = `10`,
|  | const unsigned long | binsZ = `10`,
|  | const double | weight = `1.0`
| ) |  | const`[inline, virtual]`

fill the 3D histogram with forced ID assignment (book on demand)

         const double mass1 = ... ;
         const double mass2 = ... ;
         const double mass3 = ... ;
         plot3D( X, Y, Z, "Space Points" ,2.5 ,3.5, 4.5, 5.5, 6.5, 7.5, 10, 20, 30 );

- This example illustrates the filling of the 3D histogram titled `"Space Points"` with values `X`, `Y` and `Z`.
- If the histogram with given title does not exist yet it will be automatically booked with parameters `lowX` equal to 2.5, `highX` equal to 3.5, `lowY` equal to 4.5, `highY` equal to 5.5, `lowZ` equal to 6.5, `highZ` equal to 7.5, `binsX` equal to 10, `binsY` equal to 20 and `binsZ` equal to 30.

Attention:
  If the histogram with given ID is already booked through automatic assignment of histogram ID, the error will not be detected. Therefore it is recommended to use non-trivial histogram ID offset (property "HistoOffSet") if one need to combine these techniques together It is still desirable to use the unique histogram title to avoid a bad interference

Note : This method is more efficient that the similar method without forced ID, since the histogram lookup is faster using a numerical ID.

See also:
  AIDA::IHistogram3D

Parameters:

  valueX | x value to be filled
  valueY | y value to be filled
  valueZ | z value to be filled
  ID | Histogram ID to use
  title | histogram title (must be unique within the algorithm)
  lowX | low x limit for histogram
  highX | high x limit for histogram
  lowY | low y limit for histogram
  highY | high y limit for histogram
  lowZ | low z limit for histogram
  highZ | high z limit for histogram
  binsX | number of bins in x
  binsY | number of bins in y
  binsZ | number of bins in z
  weight | weight

Returns:
  pointer to AIDA 3D histogram

Implements IHistoTool.

Definition at line 146 of file HistoTool.h.

      {
        return GaudiHistoTool::plot3D
          ( valueX, valueY, valueZ, ID, title,
            lowX, highX, lowY, highY, lowZ, highZ, binsX, binsY, binsZ, weight ) ;
      };

virtual AIDA::IHistogram3D* HistoTool::plot3D | ( | const double | valueX,
|  | const double | valueY,
|  | const double | valueZ,
|  | const std::string & | title,
|  | const double | lowX,
|  | const double | highX,
|  | const double | lowY,
|  | const double | highY,
|  | const double | lowZ,
|  | const double | highZ,
|  | const unsigned long | binsX = `10`,
|  | const unsigned long | binsY = `10`,
|  | const unsigned long | binsZ = `10`,
|  | const double | weight = `1.0`
| ) |  | const`[inline, virtual]`

fill the 3D histogram (book on demand)

         const double mass1 = ... ;
         const double mass2 = ... ;
         const double mass3 = ... ;
         plot3D( X, Y, Z, "Space Points" ,2.5 ,3.5, 4.5, 5.5, 6.5, 7.5, 10, 20, 30 );

- This example illustrates the filling of the 3D histogram titled `"Space Points"` with values `X`, `Y` and `Z`.
- If the histogram with given title does not exist yet it will be automatically booked with parameters `lowX` equal to 2.5, `highX` equal to 3.5, `lowY` equal to 4.5, `highY` equal to 5.5, `lowZ` equal to 6.5, `highZ` equal to 7.5, `binsX` equal to 10, `binsY` equal to 20 and `binsZ` equal to 30.

The histogram will get a unique integer identifier automatically assigned

See also:
  AIDA::IHistogram3D

Parameters:

  valueX | x value to be filled
  valueY | y value to be filled
  valueZ | z value to be filled
  title | histogram title (must be unique within the algorithm)
  lowX | low x limit for histogram
  highX | high x limit for histogram
  lowY | low y limit for histogram
  highY | high y limit for histogram
  lowZ | low z limit for histogram
  highZ | high z limit for histogram
  binsX | number of bins in x
  binsY | number of bins in y
  binsZ | number of bins in z
  weight | weight

Returns:
  pointer to AIDA 3D histogram

Implements IHistoTool.

Definition at line 124 of file HistoTool.h.

      {
        return GaudiHistoTool::plot3D
          ( valueX, valueY, valueZ, title,
            lowX, highX, lowY, highY, lowZ, highZ, binsX, binsY, binsZ, weight ) ;
      };

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

- /afs/.cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v22r2/GaudiAlg/src/components/HistoTool.h
- /afs/.cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v22r2/GaudiAlg/src/components/HistoTool.cpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines