Gaudi Framework, version v20r2

Generated: 18 Jul 2008

IInspector Class Reference

#include <GaudiKernel/IInspector.h>

Inheritance diagram for IInspector:

Inheritance graph
[legend]
Collaboration diagram for IInspector:

Collaboration graph
[legend]
List of all members.

Detailed Description

Inspector base class.

Definition at line 16 of file IInspector.h.

Public Types

enum  { MUTABLE = 1<<1, CONST = 1<<2 }

Public Member Functions

template<class T, class O>
StatusCode inspectByRef (const T *pObj, const O *pOwner, const std::string &comment, long flag=MUTABLE)
 Inspect single item by its reference (mutable and const).
template<class T, class O>
StatusCode inspectByValue (const T &obj, const O *pOwner, const std::string &comment)
 Inspect single item by its value (const).
template<class T, class O>
StatusCode inspectContByRef (const T *pObj, const O *pOwner, const std::string &comment, long flag=MUTABLE)
 Inspect container of object items by its reference (mutable and const).
template<class T, class O>
StatusCode inspectContByValue (const T &obj, const O *pOwner, const std::string &comment)
 Inspect container of object items by its value (const).

Protected Member Functions

virtual StatusCode inspectByRef (const void *pObj, const Tag &typ, void *pOwner, const Tag &otag, const std::string &comment, long flag)=0
 Inspect object by Reference.
virtual StatusCode inspectByValue (IValue *pObj, const Tag &typ, void *pOwner, const Tag &oTag, const std::string &comment)=0
 Inspect object by Value.
virtual StatusCode inspectContByRef (const void *pObj, const Tag &tag, const Tag &rtag, const Tag &vtag, const void *pOwner, const Tag &otag, const std::string &comment, long flags)=0
 Inspect container of objects by reference.
virtual StatusCode inspectContByValue (IValue *pObj, const Tag &tag, const Tag &rtag, const Tag &vtag, const void *pOwner, const Tag &otag, const std::string &comment)=0
 Inspect container of objects by value.

Classes

class  _TT
class  _V
class  IValue
class  Tag


Member Enumeration Documentation

anonymous enum

Enumerator:
MUTABLE 
CONST 

Definition at line 18 of file IInspector.h.

00018 { MUTABLE = 1<<1, CONST = 1<<2};


Member Function Documentation

virtual StatusCode IInspector::inspectByRef ( const void *  pObj,
const Tag typ,
void *  pOwner,
const Tag otag,
const std::string comment,
long  flag 
) [protected, pure virtual]

Inspect object by Reference.

Referenced by inspectByRef().

virtual StatusCode IInspector::inspectByValue ( IValue pObj,
const Tag typ,
void *  pOwner,
const Tag oTag,
const std::string comment 
) [protected, pure virtual]

Inspect object by Value.

Referenced by inspectByValue().

virtual StatusCode IInspector::inspectContByRef ( const void *  pObj,
const Tag tag,
const Tag rtag,
const Tag vtag,
const void *  pOwner,
const Tag otag,
const std::string comment,
long  flags 
) [protected, pure virtual]

Inspect container of objects by reference.

Referenced by inspectContByRef().

virtual StatusCode IInspector::inspectContByValue ( IValue pObj,
const Tag tag,
const Tag rtag,
const Tag vtag,
const void *  pOwner,
const Tag otag,
const std::string comment 
) [protected, pure virtual]

Inspect container of objects by value.

Referenced by inspectContByValue().

template<class T, class O>
StatusCode IInspector::inspectByRef ( const T *  pObj,
const O *  pOwner,
const std::string comment,
long  flag = MUTABLE 
) [inline]

Inspect single item by its reference (mutable and const).

Definition at line 80 of file IInspector.h.

References inspectByRef().

00080                                                                                                         {
00081                 return inspectByRef(pObj, _TT<T>(), (void*)pOwner, _TT<O>(), comment, flag);
00082         }

template<class T, class O>
StatusCode IInspector::inspectByValue ( const T &  obj,
const O *  pOwner,
const std::string comment 
) [inline]

Inspect single item by its value (const).

Definition at line 85 of file IInspector.h.

References inspectByValue().

00085                                                                                      {
00086                 return inspectByValue(new _V<T>(obj), _TT<T>(), (void*)pOwner, _TT<O>(), comment);
00087         }

template<class T, class O>
StatusCode IInspector::inspectContByRef ( const T *  pObj,
const O *  pOwner,
const std::string comment,
long  flag = MUTABLE 
) [inline]

Inspect container of object items by its reference (mutable and const).

Definition at line 90 of file IInspector.h.

References inspectContByRef().

00090                                                                                                                   {
00091           typedef typename T::value_type                 _VVV;
00092           typedef typename T::value_type                 _TTT;
00093           // Unfortunately this is not implemented on G++:
00094           // typedef typename T::allocator_type::value_type _TTT;
00095     return inspectContByRef((void*)pObj, _TT<T>(), _TT<_VVV>(), _TT<_TTT>(), (void*)pOwner, _TT<O>(), comment, flag);
00096   }

template<class T, class O>
StatusCode IInspector::inspectContByValue ( const T &  obj,
const O *  pOwner,
const std::string comment 
) [inline]

Inspect container of object items by its value (const).

Definition at line 99 of file IInspector.h.

References inspectContByValue().

00099                                                                                                   {
00100           typedef typename T::value_type                 _VVV;
00101           typedef typename T::value_type                 _TTT;
00102           // Unfortunately this is not implemented on G++:
00103           // typedef typename T::allocator_type::value_type _TTT;
00104     return inspectContByValue(new _V<T>(obj), _TT<T>(), _TT<_VVV>(), _TT<_TTT>(), (void*)pOwner, _TT<O>(), comment);
00105   }


The documentation for this class was generated from the following file:
Generated at Fri Jul 18 12:08:10 2008 for Gaudi Framework, version v20r2 by Doxygen version 1.5.1 written by Dimitri van Heesch, © 1997-2004