The Gaudi Framework  v31r0 (aeb156f0)
HistogramSvc::Helper Struct Reference

#include <GaudiCommonSvc/HistogramSvc.h>

Collaboration diagram for HistogramSvc::Helper:

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, Bool_t(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 *))
 
template<class R , class S , class T1 , class T2 >
static R * act (R *res, const S &b, Bool_t(T1::*pmf)(const T2 *))
 

Public Attributes

HistogramSvcm_svc
 

Detailed Description

Definition at line 61 of file HistogramSvc.h.

Constructor & Destructor Documentation

HistogramSvc::Helper::Helper ( HistogramSvc p)
inline

Definition at line 63 of file HistogramSvc.h.

63 : m_svc( p ) {}
HistogramSvc * m_svc
Definition: HistogramSvc.h:62

Member Function Documentation

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 
)
inlinestatic

Definition at line 93 of file HistogramSvc.h.

93  {
94  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
95  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
96  if ( h1 && h2 ) {
97  ( h1->*pmf )( h2, scale );
98  return res;
99  }
100  return nullptr;
101  }
template<class R , class S , class T1 , class T2 >
static R* HistogramSvc::Helper::act ( R *  res,
const S &  b,
Bool_t(T1::*)(const T2 *, Double_t)  pmf,
Double_t  scale 
)
inlinestatic

Definition at line 103 of file HistogramSvc.h.

103  {
104  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
105  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
106  if ( h1 && h2 ) {
107  ( h1->*pmf )( h2, scale );
108  return res;
109  }
110  return nullptr;
111  }
template<class R , class S , class T1 , class T2 >
static R* HistogramSvc::Helper::act ( R *  res,
const S &  b,
void(T1::*)(const T2 *)  pmf 
)
inlinestatic

Definition at line 113 of file HistogramSvc.h.

113  {
114  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
115  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
116  if ( h1 && h2 ) {
117  ( h1->*pmf )( h2 );
118  return res;
119  }
120  return nullptr;
121  }
template<class R , class S , class T1 , class T2 >
static R* HistogramSvc::Helper::act ( R *  res,
const S &  b,
Bool_t(T1::*)(const T2 *)  pmf 
)
inlinestatic

Definition at line 123 of file HistogramSvc.h.

123  {
124  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
125  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
126  if ( h1 && h2 ) {
127  ( h1->*pmf )( h2 );
128  return res;
129  }
130  return nullptr;
131  }
template<class A1 , class A3 >
StatusCode HistogramSvc::Helper::find ( A1  a1,
A3 *&  a3 
)
inline

Definition at line 79 of file HistogramSvc.h.

79  {
80  DataObject* pObject = nullptr;
81  StatusCode sc = m_svc->findObject( a1, pObject );
82  a3 = dynamic_cast<A3*>( pObject );
83  return sc;
84  }
HistogramSvc * m_svc
Definition: HistogramSvc.h:62
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
StatusCode findObject(IRegistry *pReg, const std::string &path, AIDA::IProfile1D *&obj) override
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30
template<class A1 , class A2 , class A3 >
StatusCode HistogramSvc::Helper::find ( A1  a1,
A2  a2,
A3 *&  a3 
)
inline

Definition at line 86 of file HistogramSvc.h.

86  {
87  DataObject* pObject = nullptr;
88  StatusCode sc = m_svc->findObject( a1, a2, pObject );
89  a3 = dynamic_cast<A3*>( pObject );
90  return sc;
91  }
HistogramSvc * m_svc
Definition: HistogramSvc.h:62
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
StatusCode findObject(IRegistry *pReg, const std::string &path, AIDA::IProfile1D *&obj) override
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30
template<class A1 , class A3 >
StatusCode HistogramSvc::Helper::retrieve ( A1  a1,
A3 *&  a3 
)
inline

Definition at line 65 of file HistogramSvc.h.

65  {
66  DataObject* pObject = nullptr;
67  StatusCode sc = m_svc->retrieveObject( a1, pObject );
68  a3 = dynamic_cast<A3*>( pObject );
69  return sc;
70  }
StatusCode retrieveObject(IRegistry *pReg, const std::string &path, AIDA::IHistogram1D *&obj) override
HistogramSvc * m_svc
Definition: HistogramSvc.h:62
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30
template<class A1 , class A2 , class A3 >
StatusCode HistogramSvc::Helper::retrieve ( A1  a1,
A2  a2,
A3 *&  a3 
)
inline

Definition at line 72 of file HistogramSvc.h.

72  {
73  DataObject* pObject = nullptr;
74  StatusCode sc = m_svc->retrieveObject( a1, a2, pObject );
75  a3 = dynamic_cast<A3*>( pObject );
76  return sc;
77  }
StatusCode retrieveObject(IRegistry *pReg, const std::string &path, AIDA::IHistogram1D *&obj) override
HistogramSvc * m_svc
Definition: HistogramSvc.h:62
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30

Member Data Documentation

HistogramSvc* HistogramSvc::Helper::m_svc

Definition at line 62 of file HistogramSvc.h.


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