Main Page | Namespace List | Class Hierarchy | Compound List | File List | Namespace Members | Compound Members | File Members | Related Pages

rfl::ClassType Class Reference

#include <ClassType.hh>

Inheritance diagram for rfl::ClassType:

Inheritance graph
Collaboration diagram for rfl::ClassType:

Collaboration graph
List of all members.

Public Member Functions

virtual void avStartCall (av_alist &avList, void *fnPtr, void *retVal) const
virtual void avPutArg (av_alist &avList, void *arg) const
int getElmIdx (const mpu::String &name) const
virtual const TypegetElmType (std::size_t idx) const
virtual void * getElmAddr (void *obj, std::size_t idx) const
const mpu::String & getElmName (std::size_t idx) const
std::size_t getBaseClassNo (void) const
const ClassTypegetBaseClass (std::size_t idx) const
void * toBaseClass (void *obj, std::size_t idx) const
virtual unsigned long hash (void) const
virtual bool operator== (const Type &type) const
AspectValuegetElmAspect (std::size_t idx, Aspect::Id aspectId)
const AspectValuegetElmAspect (std::size_t idx, Aspect::Id aspectId) const

Protected Types

typedef std::vector< BaseClassBaseClassList
typedef std::vector< MemberMemberList

Protected Member Functions

 ClassType (const mpu::String &name, std::size_t size, std::size_t alignment, std::size_t elementNum, const std::type_info *typeId, void(*create)(const Type *, void *), void(*cCreate)(const Type *, void *, const void *), void(*destroy)(const Type *, void *), void(*assign)(const Type *, void *, const void *), void *(*newObj)(const Type *), void *(*newCopy)(const Type *, const void *), void(*delObj)(const Type *, void *))

Protected Attributes

BaseClassList bases_
MemberList mbrs_

Member Typedef Documentation

typedef std::vector<BaseClass> rfl::ClassType::BaseClassList [protected]

typedef std::vector<Member> rfl::ClassType::MemberList [protected]

Constructor & Destructor Documentation

rfl::ClassType::ClassType const mpu::String &  name,
std::size_t  size,
std::size_t  alignment,
std::size_t  elementNum,
const std::type_info *  typeId,
void(*  create)(const Type *, void *),
void(*  cCreate)(const Type *, void *, const void *),
void(*  destroy)(const Type *, void *),
void(*  assign)(const Type *, void *, const void *),
void *(*  newObj)(const Type *),
void *(*  newCopy)(const Type *, const void *),
void(*  delObj)(const Type *, void *)
[inline, protected]

Member Function Documentation

virtual void rfl::ClassType::avPutArg av_alist &  avList,
void *  arg
const [virtual]

Implements rfl::Type.

virtual void rfl::ClassType::avStartCall av_alist &  avList,
void *  fnPtr,
void *  retVal
const [virtual]

Implements rfl::Type.

const ClassType & rfl::ClassType::getBaseClass std::size_t  idx  )  const [inline]

std::size_t rfl::ClassType::getBaseClassNo void   )  const [inline]

virtual void* rfl::ClassType::getElmAddr void *  obj,
std::size_t  idx
const [virtual]

Implements rfl::Type.

const AspectValue & rfl::ClassType::getElmAspect std::size_t  idx,
Aspect::Id  aspectId
const [inline]

AspectValue & rfl::ClassType::getElmAspect std::size_t  idx,
Aspect::Id  aspectId

int rfl::ClassType::getElmIdx const mpu::String &  name  )  const

const mpu::String & rfl::ClassType::getElmName std::size_t  idx  )  const [inline]

virtual const Type& rfl::ClassType::getElmType std::size_t  idx  )  const [virtual]

Implements rfl::Type.

virtual unsigned long rfl::ClassType::hash void   )  const [virtual]

This is a little helper to identify types with equal structure

Implements rfl::Type.

virtual bool rfl::ClassType::operator== const Type type  )  const [virtual]

Implements rfl::Type.

void * rfl::ClassType::toBaseClass void *  obj,
std::size_t  idx
const [inline]

Member Data Documentation

BaseClassList rfl::ClassType::bases_ [protected]

MemberList rfl::ClassType::mbrs_ [protected]

The documentation for this class was generated from the following file:
Generated on Thu Dec 18 11:33:00 2003 for Reflection&ServiceLibrary by doxygen 1.3.2