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 71 of file HistogramSvc.h.

Constructor & Destructor Documentation

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

Definition at line 73 of file HistogramSvc.h.

73 : m_svc( p ) {}
HistogramSvc * m_svc
Definition: HistogramSvc.h:72

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 107 of file HistogramSvc.h.

108  {
109  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
110  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
111  if ( h1 && h2 ) {
112  ( h1->*pmf )( h2, scale );
113  return res;
114  }
115  return nullptr;
116  }
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 118 of file HistogramSvc.h.

119  {
120  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
121  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
122  if ( h1 && h2 ) {
123  ( h1->*pmf )( h2, scale );
124  return res;
125  }
126  return nullptr;
127  }
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 129 of file HistogramSvc.h.

130  {
131  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
132  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
133  if ( h1 && h2 ) {
134  ( h1->*pmf )( h2 );
135  return res;
136  }
137  return nullptr;
138  }
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 140 of file HistogramSvc.h.

141  {
142  auto h1 = Gaudi::getRepresentation<R, T1>( *res );
143  const auto h2 = Gaudi::getRepresentation<R, T2>( b );
144  if ( h1 && h2 ) {
145  ( h1->*pmf )( h2 );
146  return res;
147  }
148  return nullptr;
149  }
template<class A1 , class A3 >
StatusCode HistogramSvc::Helper::find ( A1  a1,
A3 *&  a3 
)
inline

Definition at line 91 of file HistogramSvc.h.

92  {
93  DataObject* pObject = nullptr;
94  StatusCode sc = m_svc->DataSvc::findObject( a1, pObject );
95  a3 = dynamic_cast<A3*>( pObject );
96  return sc;
97  }
HistogramSvc * m_svc
Definition: HistogramSvc.h:72
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
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 99 of file HistogramSvc.h.

100  {
101  DataObject* pObject = nullptr;
102  StatusCode sc = m_svc->DataSvc::findObject( a1, a2, pObject );
103  a3 = dynamic_cast<A3*>( pObject );
104  return sc;
105  }
HistogramSvc * m_svc
Definition: HistogramSvc.h:72
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
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 75 of file HistogramSvc.h.

76  {
77  DataObject* pObject = nullptr;
78  StatusCode sc = m_svc->DataSvc::retrieveObject( a1, pObject );
79  a3 = dynamic_cast<A3*>( pObject );
80  return sc;
81  }
HistogramSvc * m_svc
Definition: HistogramSvc.h:72
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
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 83 of file HistogramSvc.h.

84  {
85  DataObject* pObject = nullptr;
86  StatusCode sc = m_svc->DataSvc::retrieveObject( a1, a2, pObject );
87  a3 = dynamic_cast<A3*>( pObject );
88  return sc;
89  }
HistogramSvc * m_svc
Definition: HistogramSvc.h:72
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
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 72 of file HistogramSvc.h.


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