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 Member Functions

 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)
void operator delete (void *ptr)

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.

Implemented 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.