CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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

edm::MemberWithDict::MemberWithDict ( )

Definition at line 10 of file MemberWithDict.cc.

10 : dataMember_(nullptr) {}
TDataMember * dataMember_
edm::MemberWithDict::MemberWithDict ( TDataMember *  dataMember)
explicit

Definition at line 12 of file MemberWithDict.cc.

12 : dataMember_(dataMember) {}
TDataMember * dataMember_

Member Function Documentation

TypeWithDict edm::MemberWithDict::declaringType ( ) const

Definition at line 32 of file MemberWithDict.cc.

References dataMember_.

32 { return TypeWithDict(dataMember_->GetClass()); }
TDataMember * dataMember_
ObjectWithDict edm::MemberWithDict::get ( ) const
ObjectWithDict edm::MemberWithDict::get ( ObjectWithDict const &  obj) const
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_
bool edm::MemberWithDict::isConst ( ) const

Definition at line 36 of file MemberWithDict.cc.

References dataMember_.

Referenced by FWTableViewManager::tableFormats().

36 { return dataMember_->Property() & kIsConstant; }
TDataMember * dataMember_
bool edm::MemberWithDict::isPublic ( ) const

Definition at line 38 of file MemberWithDict.cc.

References dataMember_.

Referenced by reco::findDataMember(), and FWTableViewManager::tableFormats().

38 { return dataMember_->Property() & kIsPublic; }
TDataMember * dataMember_
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_
bool edm::MemberWithDict::isTransient ( ) const

Definition at line 42 of file MemberWithDict.cc.

References dataMember_.

42 { return !dataMember_->IsPersistent(); }
TDataMember * dataMember_
std::string edm::MemberWithDict::name ( void  ) const
size_t edm::MemberWithDict::offset ( ) const

Definition at line 44 of file MemberWithDict.cc.

References dataMember_.

44 { return dataMember_->GetOffset(); }
TDataMember * dataMember_
edm::MemberWithDict::operator bool ( ) const
explicit

Definition at line 14 of file MemberWithDict.cc.

14 { return dataMember_ != nullptr; }
TDataMember * dataMember_
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(), reco::parser::MethodInvoker::returnTypeName(), and FWTableViewManager::tableFormats().

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
static TypeWithDict byName(std::string const &name)
Definition: TypeWithDict.cc:74
TDataMember * dataMember_
std::string name() const

Member Data Documentation

TDataMember* edm::MemberWithDict::dataMember_
private