CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
edm::MemberWithDict Class Reference

#include <MemberWithDict.h>

Public Member Functions

TypeWithDict declaringType () const
 
ObjectWithDict get () const
 
ObjectWithDict get (ObjectWithDict const &) const
 
bool isArray () const
 
bool isConst () const
 
bool isPublic () const
 
bool isStatic () const
 
bool isTransient () const
 
 MemberWithDict ()
 
 MemberWithDict (TDataMember *)
 
std::string name () const
 
size_t offset () const
 
 operator bool () const
 
TypeWithDict typeOf () const
 

Private Attributes

TDataMember * dataMember_
 

Detailed Description

Definition at line 19 of file MemberWithDict.h.

Constructor & Destructor Documentation

◆ MemberWithDict() [1/2]

edm::MemberWithDict::MemberWithDict ( )

Definition at line 10 of file MemberWithDict.cc.

10 : dataMember_(nullptr) {}
TDataMember * dataMember_

◆ MemberWithDict() [2/2]

edm::MemberWithDict::MemberWithDict ( TDataMember *  dataMember)
explicit

Definition at line 12 of file MemberWithDict.cc.

12 : dataMember_(dataMember) {}
TDataMember * dataMember_

Member Function Documentation

◆ declaringType()

TypeWithDict edm::MemberWithDict::declaringType ( ) const

Definition at line 32 of file MemberWithDict.cc.

References dataMember_.

32 { return TypeWithDict(dataMember_->GetClass()); }
TDataMember * dataMember_

◆ get() [1/2]

ObjectWithDict edm::MemberWithDict::get ( ) const

◆ get() [2/2]

ObjectWithDict edm::MemberWithDict::get ( ObjectWithDict const &  obj) const

◆ isArray()

bool edm::MemberWithDict::isArray ( ) const

Definition at line 34 of file MemberWithDict.cc.

References dataMember_.

Referenced by typeOf().

34 { return dataMember_->Property() & kIsArray; }
TDataMember * dataMember_

◆ isConst()

bool edm::MemberWithDict::isConst ( ) const

Definition at line 36 of file MemberWithDict.cc.

References dataMember_.

36 { return dataMember_->Property() & kIsConstant; }
TDataMember * dataMember_

◆ isPublic()

bool edm::MemberWithDict::isPublic ( ) const

Definition at line 38 of file MemberWithDict.cc.

References dataMember_.

38 { return dataMember_->Property() & kIsPublic; }
TDataMember * dataMember_

◆ isStatic()

bool edm::MemberWithDict::isStatic ( ) const

Definition at line 40 of file MemberWithDict.cc.

References dataMember_, and reco::parser::kIsStatic.

40 { return dataMember_->Property() & kIsStatic; }
TDataMember * dataMember_

◆ isTransient()

bool edm::MemberWithDict::isTransient ( ) const

Definition at line 42 of file MemberWithDict.cc.

References dataMember_.

42 { return !dataMember_->IsPersistent(); }
TDataMember * dataMember_

◆ name()

std::string edm::MemberWithDict::name ( void  ) const

◆ offset()

size_t edm::MemberWithDict::offset ( ) const

Definition at line 44 of file MemberWithDict.cc.

References dataMember_.

44 { return dataMember_->GetOffset(); }
TDataMember * dataMember_

◆ operator bool()

edm::MemberWithDict::operator bool ( ) const
explicit

Definition at line 14 of file MemberWithDict.cc.

14 { return dataMember_ != nullptr; }
TDataMember * dataMember_

◆ typeOf()

TypeWithDict edm::MemberWithDict::typeOf ( ) const

Definition at line 18 of file MemberWithDict.cc.

References edm::TypeWithDict::byName(), dataMember_, mps_fire::i, isArray(), and name().

Referenced by get(), reco::parser::MethodInvoker::invoke(), reco::parser::MethodSetter::push(), and reco::parser::MethodInvoker::returnTypeName().

18  {
19  if (isArray()) {
20  std::ostringstream name;
21  name << dataMember_->GetTrueTypeName();
22  for (int i = 0; i < dataMember_->GetArrayDim(); ++i) {
23  name << '[';
24  name << dataMember_->GetMaxIndex(i);
25  name << ']';
26  }
27  return TypeWithDict::byName(name.str());
28  }
29  return TypeWithDict::byName(dataMember_->GetTrueTypeName());
30  }
bool isArray() const
std::string name() const
static TypeWithDict byName(std::string const &name)
Definition: TypeWithDict.cc:74
TDataMember * dataMember_

Member Data Documentation

◆ dataMember_

TDataMember* edm::MemberWithDict::dataMember_
private