Gaudi Framework, version v21r9

Home   Generated: 3 May 2010

IInspector Class Reference

Inspector base class. More...

#include <GaudiKernel/IInspector.h>

Inheritance diagram for IInspector:

Inheritance graph
[legend]
Collaboration diagram for IInspector:

Collaboration graph
[legend]

List of all members.

Public Types

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

Public Member Functions

 DeclareInterfaceID (IInspector, 1, 0)
 InterfaceID.
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


Detailed Description

Inspector base class.

Definition at line 16 of file IInspector.h.


Member Enumeration Documentation

anonymous enum

Enumerator:
MUTABLE 
CONST 

Definition at line 21 of file IInspector.h.

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


Member Function Documentation

IInspector::DeclareInterfaceID ( IInspector  ,
,
 
)

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.

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.

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.

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.

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 83 of file IInspector.h.

00083                                                                                                         {
00084                 return inspectByRef(pObj, _TT<T>(), (void*)pOwner, _TT<O>(), comment, flag);
00085         }

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 88 of file IInspector.h.

00088                                                                                      {
00089                 return inspectByValue(new _V<T>(obj), _TT<T>(), (void*)pOwner, _TT<O>(), comment);
00090         }

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 93 of file IInspector.h.

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

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 102 of file IInspector.h.

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


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

Generated at Mon May 3 12:25:05 2010 for Gaudi Framework, version v21r9 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004