| # Gaudi Framework, version v20r2
Generated: 18 Jul 2008

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

- Search for |

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# HistogramSvc::Helper Struct Reference

`#include <HistogramSvc.h>`

Collaboration diagram for HistogramSvc::Helper:

[legend]
List of all members.

## Detailed Description

Definition at line 70 of file HistogramSvc.h.

## Public Member Functions
| Helper (HistogramSvc *p)
template<class A1, class A3>
StatusCode | retrieve (A1 a1, A3 *&a3)
template<class A1, class A2, class A3>
StatusCode | retrieve (A1 a1, A2 a2, A3 *&a3)
template<class A1, class A3>
StatusCode | find (A1 a1, A3 *&a3)
template<class A1, class A2, class A3>
StatusCode | find (A1 a1, A2 a2, A3 *&a3)
## Static Public Member Functions
template<class R, class S, class T1, class T2>
static R * | act (R *res, const S &b, void(T1::*pmf)(const T2 *, Double_t), Double_t scale)
template<class R, class S, class T1, class T2>
static R * | act (R *res, const S &b, void(T1::*pmf)(const T2 *))
## Public Attributes
HistogramSvc * | m_svc

## Constructor & Destructor Documentation

HistogramSvc::Helper::Helper | ( | HistogramSvc * | p | ) | `[inline]`

Definition at line 72 of file HistogramSvc.h.

    00072 : m_svc(p) {}

## Member Function Documentation

template<class A1, class A3>

StatusCode HistogramSvc::Helper::retrieve | ( | A1 | a1,
|  | A3 *& | a3 |
| ) |  |  | `[inline]`

Definition at line 73 of file HistogramSvc.h.

References m_svc.

    00073                                                                        {
    00074       DataObject* pObject  = 0;
    00075       StatusCode sc = m_svc->DataSvc::retrieveObject(a1,pObject);
    00076       a3 = dynamic_cast<A3*>(pObject);
    00077       return sc;
    00078     }

template<class A1, class A2, class A3>

StatusCode HistogramSvc::Helper::retrieve | ( | A1 | a1,
|  | A2 | a2,
|  | A3 *& | a3 |
| ) |  |  | `[inline]`

Definition at line 79 of file HistogramSvc.h.

References m_svc.

    00079                                                                                         {
    00080       DataObject* pObject  = 0;
    00081       StatusCode sc = m_svc->DataSvc::retrieveObject(a1,a2,pObject);
    00082       a3 = dynamic_cast<A3*>(pObject);
    00083       return sc;
    00084     }

template<class A1, class A3>

StatusCode HistogramSvc::Helper::find | ( | A1 | a1,
|  | A3 *& | a3 |
| ) |  |  | `[inline]`

Definition at line 85 of file HistogramSvc.h.

References m_svc.

    00085                                                                    {
    00086       DataObject* pObject  = 0;
    00087       StatusCode sc = m_svc->DataSvc::findObject(a1,pObject);
    00088       a3 = dynamic_cast<A3*>(pObject);
    00089       return sc;
    00090     }

template<class A1, class A2, class A3>

StatusCode HistogramSvc::Helper::find | ( | A1 | a1,
|  | A2 | a2,
|  | A3 *& | a3 |
| ) |  |  | `[inline]`

Definition at line 91 of file HistogramSvc.h.

References m_svc.

    00091                                                                                     {
    00092       DataObject* pObject  = 0;
    00093       StatusCode sc = m_svc->DataSvc::findObject(a1,a2,pObject);
    00094       a3 = dynamic_cast<A3*>(pObject);
    00095       return sc;
    00096     }

template<class R, class S, class T1, class T2>

static R* HistogramSvc::Helper::act | ( | R * | res,
|  | const S & | b,
|  | void(T1::*)(const T2 *, Double_t) | pmf,
|  | Double_t | scale |
| ) |  |  | `[inline, static]`

Definition at line 98 of file HistogramSvc.h.

Referenced by HistogramSvc::add(), HistogramSvc::divide(), HistogramSvc::multiply(), and HistogramSvc::subtract().

    00098                                                                                          {
    00099       T1 *h1 = Gaudi::getRepresentation<R,T1>(*res);
    00100       T1 *h2 = Gaudi::getRepresentation<R,T1>(b);
    00101       if ( h1 && h2 )  {
    00102         (h1->*pmf)(h2,scale);
    00103         return res;
    00104       }
    00105       return 0;
    00106     }

template<class R, class S, class T1, class T2>

static R* HistogramSvc::Helper::act | ( | R * | res,
|  | const S & | b,
|  | void(T1::*)(const T2 *) | pmf |
| ) |  |  | `[inline, static]`

Definition at line 108 of file HistogramSvc.h.

    00108                                                                 {
    00109       T1 *h1 = Gaudi::getRepresentation<R,T1>(*res);
    00110       T1 *h2 = Gaudi::getRepresentation<R,T1>(b);
    00111       if ( h1 && h2 )  {
    00112         (h1->*pmf)(h2);
    00113         return res;
    00114       }
    00115       return 0;
    00116     }

## Member Data Documentation

HistogramSvc* HistogramSvc::Helper::m_svc

Definition at line 71 of file HistogramSvc.h.

Referenced by find(), and retrieve().

The documentation for this struct was generated from the following file:

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v20r2/GaudiSvc/v17r1/src/HistogramSvc/HistogramSvc.h