Main Page   Class Hierarchy   Compound List   File List   Compound Members  

dimeBase Class Reference

The dimeBase class is the superclass for most classes in Dime. More...

#include <dime/Base.h>

Inheritance diagram for dimeBase::

dimeRecord dimeRecordHolder dimeSection dimeTable dimeDoubleRecord dimeFloatRecord dimeInt16Record dimeInt32Record dimeInt8Record dimeStringRecord dimeClass dimeEntity dimeObject dimeTableEntry dimeBlocksSection dimeClassesSection dimeEntitiesSection dimeHeaderSection dimeObjectsSection dimeTablesSection dimeUnknownSection List of all members.

Public Types

enum  {
  dimeBaseType = 1, dimeRecordType, dimeStringRecordType, dimeFloatRecordType,
  dimeDoubleRecordType, dimeInt8RecordType, dimeInt16RecordType, dimeInt32RecordType,
  dimeHexRecordType, dimeRecordHolderType, dimeClassType, dimeUnknownClassType,
  dimeObjectType, dimeUnknownObjectType, dimeEntityType, dimeUnknownEntityType,
  dimePolylineType, dimeVertexType, dimeFaceEntityType, dimeExtrusionEntityType,
  dime3DFaceType, dimeSolidType, dimeTraceType, dimeLineType,
  dimePointType, dimeBlockType, dimeInsertType, dimeCircleType,
  dimeArcType, dimeLWPolylineType, dimeEllipseType, dimeSplineType,
  dimeSectionType, dimeUnknownSectionType, dimeEntitiesSectionType, dimeBlocksSectionType,
  dimeTablesSectionType, dimeHeaderSectionType, dimeClassesSectionType, dimeObjectsSectionType,
  dimeTableType, dimeTableEntryType, dimeUnknownTableType, dimeUCSTableType,
  dimeLayerTableType, dimeLastTypeTag
}

Public Methods

 dimeBase (void)
virtual ~dimeBase ()
virtual int typeId () const=0
virtual bool isOfType (const int thetypeid) const
void * operator new (size_t size, dimeMemHandler *memhandler=NULL, const int alignment=4)

Detailed Description

The dimeBase class is the superclass for most classes in Dime.

dimeBase implements the new operator to enable use of the special-purpose memory manager class, dimeMemHandler. It also implements a simple run-time type checking system.


Constructor & Destructor Documentation

dimeBase::dimeBase void   
 

Constructor.

dimeBase::~dimeBase   [virtual]
 

virtual destructor.


Member Function Documentation

bool dimeBase::isOfType const int    thetypeid const [virtual]
 

Returns true if the object is of type typeid or is inherited from it. Function in base class checks whether thetypeid equals the virtual dimeBase::typeId() value or equals dimeBaseType. Must be implemented by all subclasses that are superclasses of other classes, and should check if thetypeid equals its typeId, and then call its parent's isOfType function. Leaf-classes do not have to implement this method.

Reimplemented in dimeClass, dimeEntity, dimeExtrusionEntity, dimeFaceEntity, dimeObject, dimeRecordHolder, dimeSection, and dimeTableEntry.

int dimeBase::typeId   const [pure virtual]
 

Must be implemented by all subclasses, and should return an unique id for that class.

Reimplemented in dimeUnknownClass, dime3DFace, dimeArc, dimeBlock, dimeCircle, dimeEllipse, dimeExtrusionEntity, dimeFaceEntity, dimeInsert, dimeLine, dimeLWPolyline, dimePoint, dimePolyline, dimeSolid, dimeSpline, dimeTrace, dimeUnknownEntity, dimeVertex, dimeObject, dimeUnknownObject, dimeDoubleRecord, dimeFloatRecord, dimeHexRecord, dimeInt16Record, dimeInt32Record, dimeInt8Record, dimeRecord, dimeStringRecord, dimeBlocksSection, dimeClassesSection, dimeEntitiesSection, dimeHeaderSection, dimeObjectsSection, dimeSection, dimeTablesSection, dimeUnknownSection, dimeLayerTable, dimeTable, dimeTableEntry, dimeUCSTable, and dimeUnknownTable.


The documentation for this class was generated from the following files:
Copyright © 1998-1999, Systems In Motion <sales@sim.no>. All rights reserved.
System documentation was generated using doxygen.