Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

MetaClass Class Reference

#include <meta_class.h>

Inheritance diagram for MetaClass:

Object AggregateMetaClass IIntegerMetaClass IntegerMetaClass ListMetaClass LStringMetaClass PointerMetaClass StringMetaClass ObjectAggregateMetaClass UnionMetaClass STLMetaClass List of all members.

Public Methods

virtual const LStringget_instance_name () const
virtual size_t get_size_of_instance () const
virtual size_t get_alignment_of_instance () const
virtual void read ( const ObjectWrapper &obj, InputStream* inputStream ) const
virtual void write ( const ObjectWrapper &obj, OutputStream* outputStream ) const
virtual Iteratorget_iterator ( ConstAddress instance, Iterator::Contents contents = Iterator::Owned ) const
virtual Iteratorget_iterator ( const ObjectWrapper &obj, Iterator::Contents contents = Iterator::Owned ) const
virtual bool is_elementary () const
virtual const MetaClass* get_meta_class ( Address address ) const
virtual void set_constructor_function ( ConstructorFunction constructorFunction )
virtual ConstructorFunction get_constructor_function () const
virtual void construct_object ( Address address ) const
virtual void initialize ( const ObjectWrapper &obj, InputStream* inputStream ) const
virtual MetaClass* get_link_meta_class () const
virtual void adjust_field_offsets ()
virtual void walk_referenced_meta_classes (MetaClassApplier *x)
virtual MetaClassId get_meta_class_id () const
virtual VirtualNodeget_virtual_node ( const LString &name, const String &what ) const
virtual bool defines_a_subtype_of ( const MetaClass* m ) const
bool object_is_kind_of (const LString &className) const
bool has_constructed_object () const
virtual String get_debug_text () const
virtual void print_debug () const
virtual void destruct ( const ObjectWrapper &obj, bool called_from_destructor ) const
virtual Walker::ApplyStatus walk (const ObjectWrapper &obj, Walker &walk) const
virtual Walker::ApplyStatus walk (const Address address,Walker &walk) const
 MetaClass ( LString metaClassName = LString() )
virtual ~MetaClass ()
virtual void set_size ( size_t size )
virtual void set_alignment (size_t size)
virtual size_t get_size () const
virtual void set_meta_class_of_object ( Address instance ) const
virtual ObjectFactoryget_owning_factory () const

Static Public Methods

const LStringget_class_name ()
 This returns the instance name of this Class - "Object".


Protected Methods

virtual void set_owning_factory ( ObjectFactory* owning_factory )
virtual void set_meta_class_id ( MetaClassId id )

Protected Attributes

InitializerFunction _pre_init
InitializerFunction _post_init
LString _meta_class_name
size_t _size
size_t _alignment
MetaClassId _meta_class_id
ObjectFactory_owning_factory

Static Protected Methods

void constructor_function ( Address place )

Friends

class  ObjectFactory


Detailed Description


Constructor & Destructor Documentation

MetaClass::MetaClass ( LString meta_class_name = LString())

MetaClass::~MetaClass () [virtual]


Member Function Documentation

void MetaClass::adjust_field_offsets () [virtual]

Reimplemented in AggregateMetaClass, ListMetaClass, PointerMetaClass, and UnionMetaClass.

void MetaClass::construct_object ( Address instance) const [virtual]

Reimplemented in AggregateMetaClass, and ObjectAggregateMetaClass.

void MetaClass::constructor_function ( Address address) [static, protected]

Reimplemented in AggregateMetaClass, IIntegerMetaClass, IntegerMetaClass, LStringMetaClass, ObjectAggregateMetaClass, StringMetaClass, and UnionMetaClass.

bool MetaClass::defines_a_subtype_of ( const MetaClass * m) const [virtual]

void MetaClass::destruct ( const ObjectWrapper & obj,
bool called_from_destructor) const [virtual]

Reimplemented in AggregateMetaClass, IIntegerMetaClass, LStringMetaClass, ListMetaClass, PointerMetaClass, STLMetaClass, and StringMetaClass.

size_t MetaClass::get_alignment_of_instance () const [virtual]

const LString & MetaClass::get_class_name () [static]

This returns the instance name of this Class - "Object".

Reimplemented from Object.

Reimplemented in AggregateMetaClass, IIntegerMetaClass, IntegerMetaClass, LStringMetaClass, ListMetaClass, ObjectAggregateMetaClass, PointerMetaClass, STLMetaClass, StringMetaClass, and UnionMetaClass.

ConstructorFunction MetaClass::get_constructor_function () const [virtual]

Reimplemented in AggregateMetaClass, and STLMetaClass.

String MetaClass::get_debug_text () const [virtual]

Reimplemented in AggregateMetaClass.

const LString & MetaClass::get_instance_name () const [virtual]

Iterator * MetaClass::get_iterator ( const ObjectWrapper & obj,
Iterator::Contents contents = Iterator::Owned) const [virtual]

Iterator * MetaClass::get_iterator ( ConstAddress instance,
Iterator::Contents contents = Iterator::Owned) const [virtual]

Reimplemented in AggregateMetaClass, ListMetaClass, PointerMetaClass, and STLMetaClass.

MetaClass * MetaClass::get_link_meta_class () const [virtual]

Reimplemented in AggregateMetaClass, and PointerMetaClass.

const MetaClass * MetaClass::get_meta_class ( Address address) const [virtual]

Reimplemented in AggregateMetaClass, ObjectAggregateMetaClass, and UnionMetaClass.

MetaClassId MetaClass::get_meta_class_id () const [virtual]

ObjectFactory * MetaClass::get_owning_factory () const [virtual]

size_t MetaClass::get_size () const [virtual]

size_t MetaClass::get_size_of_instance () const [virtual]

VirtualNode * MetaClass::get_virtual_node ( const LString & name,
const String & what) const [virtual]

Reimplemented in AggregateMetaClass, ListMetaClass, and PointerMetaClass.

bool MetaClass::has_constructed_object () const

void MetaClass::initialize ( const ObjectWrapper & obj,
InputStream * inputStream) const [virtual]

Reimplemented in AggregateMetaClass, ListMetaClass, PointerMetaClass, and UnionMetaClass.

bool MetaClass::is_elementary () const [virtual]

Reimplemented in AggregateMetaClass, ListMetaClass, and PointerMetaClass.

bool MetaClass::object_is_kind_of ( const LString & className) const

void MetaClass::print_debug () const [virtual]

void MetaClass::read ( const ObjectWrapper & obj,
InputStream * inputStream) const [virtual]

Reimplemented in AggregateMetaClass, IIntegerMetaClass, IntegerMetaClass, LStringMetaClass, ListMetaClass, PointerMetaClass, StringMetaClass, and UnionMetaClass.

void MetaClass::set_alignment ( size_t alignment) [virtual]

void MetaClass::set_constructor_function ( ConstructorFunction constructorFunction) [virtual]

Reimplemented in STLMetaClass.

void MetaClass::set_meta_class_id ( MetaClassId id) [protected, virtual]

void MetaClass::set_meta_class_of_object ( Address instance) const [virtual]

Reimplemented in AggregateMetaClass, ListMetaClass, ObjectAggregateMetaClass, and UnionMetaClass.

void MetaClass::set_owning_factory ( ObjectFactory * owning_factory) [protected, virtual]

void MetaClass::set_size ( size_t size) [virtual]

Walker::ApplyStatus MetaClass::walk ( const Address address,
Walker & w) const [virtual]

Reimplemented in AggregateMetaClass, IIntegerMetaClass, IntegerMetaClass, LStringMetaClass, ListMetaClass, ObjectAggregateMetaClass, PointerMetaClass, StringMetaClass, and UnionMetaClass.

Walker::ApplyStatus MetaClass::walk ( const ObjectWrapper & obj,
Walker & w) const [virtual]

void MetaClass::walk_referenced_meta_classes ( MetaClassApplier * x) [virtual]

Reimplemented in AggregateMetaClass, ListMetaClass, PointerMetaClass, and UnionMetaClass.

void MetaClass::write ( const ObjectWrapper & obj,
OutputStream * outputStream) const [virtual]

Reimplemented in AggregateMetaClass, IIntegerMetaClass, IntegerMetaClass, LStringMetaClass, ListMetaClass, PointerMetaClass, StringMetaClass, and UnionMetaClass.


Friends And Related Function Documentation

class ObjectFactory [friend]

Reimplemented from Object.

Reimplemented in AggregateMetaClass, IIntegerMetaClass, IntegerMetaClass, LStringMetaClass, ListMetaClass, ObjectAggregateMetaClass, PointerMetaClass, STLMetaClass, StringMetaClass, and UnionMetaClass.


Member Data Documentation

size_t MetaClass::_alignment [protected]

MetaClassId MetaClass::_meta_class_id [protected]

LString MetaClass::_meta_class_name [protected]

ObjectFactory * MetaClass::_owning_factory [protected]

InitializerFunction MetaClass::_post_init [protected]

InitializerFunction MetaClass::_pre_init [protected]

size_t MetaClass::_size [protected]


The documentation for this class was generated from the following files:
Generated at Mon Jul 31 13:44:04 2000 for NCI SUIF by doxygen 1.1.2 written by Dimitri van Heesch, © 1997-2000