Xrtti Namespace Reference


Classes

union  Value
class  Context
class  Incomplete
class  Namespace
class  Structure
class  Base
class  Union
class  Struct
class  Class
class  Member
class  Field
class  Argument
class  DestructorSignature
class  ConstructorSignature
class  MethodSignature
class  Destructor
class  Constructor
class  Method
class  Type
class  Pointer
class  Array
class  Enumeration
class  EnumerationValue
class  TypeEnumeration
class  TypeFunction
class  TypeStructure

Typedefs

typedef XRTTI_U32_ARCH U32
typedef XRTTI_S32_ARCH S32
typedef Generated Generated
typedef enum Xrtti::AccessType AccessType
typedef Xrtti::Value Value

Enumerations

enum  AccessType { AccessType_Public, AccessType_Protected, AccessType_Private }

Functions

void Register (const Generated *pGenerated)
U32 GetContextCount ()
const ContextGetContext (U32 index)
const ContextLookupContext (const char *pFullName)
const StructureLookupStructure (const std::type_info &typeinfo)
void ShutDown ()


Detailed Description

************************************************************************** Everything which follows is in the Xrtti C++ namespace.


Typedef Documentation

typedef XRTTI_U32_ARCH Xrtti::U32
 

The following must be defined before this header file is included: XRTTI_U32_ARCH -- unsigned 32 bit integer XRTTI_S32_ARCH -- signed 32 bit integer 32-bit unsigned integer

typedef XRTTI_S32_ARCH Xrtti::S32
 

32-bit signed integer

typedef struct Generated Xrtti::Generated
 

Generated class, opaque type

typedef enum Xrtti::AccessType Xrtti::AccessType
 

************************************************************************** AccessType defines the access types of C++, which are used to define how code may access classes, structs, methods, fields, and enumerations

typedef union Xrtti::Value Xrtti::Value
 

************************************************************************** Instances of the Value union are passed in as return values (to hold returned values) and as arguments (to hold input arguments) to methods invoked using the Invoke method of the Method class. This union consists of all possible argument types.


Enumeration Type Documentation

enum Xrtti::AccessType
 

************************************************************************** AccessType defines the access types of C++, which are used to define how code may access classes, structs, methods, fields, and enumerations


Function Documentation

void Xrtti::Register const Generated *  pGenerated  ) 
 

Registers a set of objects generated by the xrttigen program. This may be called multiple times with the output of multiple runs of xrttigen to build up a complete set of registered Xrtti objects.

Running xrttigen against your program's header files, and then registering the resulting Generated object with this method, is the means by which the xrtti system gets information about your classes. For each class registered in this way, you can find the class in the list of Contexts using GetContext(), or look it up by full name, using LookupContext().

Parameters:
pGenerated is the set of objects generated by the xrttigen program.

U32 Xrtti::GetContextCount  ) 
 

Returns the number of registered Contexts.

Returns:
the number of registered Contexts.

const Context* Xrtti::GetContext U32  index  ) 
 

Returns a Context. The total number of available contexts is available via a call to GetContextCount().

Parameters:
index is the index of the Context to get; this value must be less than the number of Contexts returned by GetContextCount().
Returns:
the index'th Context.

const Context* Xrtti::LookupContext const char *  pFullName  ) 
 

Looks up a Context by full name, and returns it. Returns NULL if there is no such registered Context.

Parameters:
pFullName is the full name (i.e. foo::bar::baz for C++, or just the struct/union name for C) of the Context to look up and return
Returns:
the Context with the given full name, or NULL if there is no such Context

const Structure* Xrtti::LookupStructure const std::type_info &  typeinfo  ) 
 

Looks up a Structure by C++ RTTI type_info, and returns it. This only works if the Structure was generated by xrttigen with the -r option enabled. Returns NULL if there is no such registered Structure.

Parameters:
typeinfo is the C++ RTTI type_info to fetch the corresponding Structure for. Only works if xrttigen had the -r option specified.
Returns:
the Structure with the given type_info, or NULL if there is no such Structure

void Xrtti::ShutDown  ) 
 

This may be called to shut down the Xrtti system. It will destroy all Xrtti objects created during the registration process. After this function is called, no more Xrtti structures will be present and the Xrtti system should not be used. The purpose of this function is primarily to assist in debugging, where the termination of the program with the Xrtti objects still allocated may look like a memory leak. Calling this function is not at all necessary - the objects don't need to be destroyed before the program exits.


Generated on Sun Apr 29 22:26:04 2007 by  doxygen 1.4.6