Main Page | Class Hierarchy | Class List | File List | Class Members

Base.h

00001 /**************************************************************************\ 00002 * 00003 * FILE: Base.h 00004 * 00005 * This source file is part of DIME. 00006 * Copyright (C) 1998-1999 by Systems In Motion. All rights reserved. 00007 * 00008 * This library is free software; you can redistribute it and/or modify it 00009 * under the terms of the GNU General Public License, version 2, as 00010 * published by the Free Software Foundation. 00011 * 00012 * This library is distributed in the hope that it will be useful, but 00013 * WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 * General Public License (the accompanying file named COPYING) for more 00016 * details. 00017 * 00018 ************************************************************************** 00019 * 00020 * If you need DIME for a non-GPL project, contact Systems In Motion 00021 * to acquire a Professional Edition License: 00022 * 00023 * Systems In Motion http://www.sim.no/ 00024 * Prof. Brochs gate 6 sales@sim.no 00025 * N-7030 Trondheim Voice: +47 22114160 00026 * NORWAY Fax: +47 67172912 00027 * 00028 \**************************************************************************/ 00029 00030 #ifndef DIME_BASE_H 00031 #define DIME_BASE_H 00032 00033 #include <dime/Basic.h> 00034 #include <stddef.h> // for size_t 00035 00036 class dimeMemHandler; 00037 00038 class DIME_DLL_API dimeBase 00039 { 00040 public: 00041 enum { 00042 dimeBaseType = 1, 00043 dimeRecordType, 00044 dimeStringRecordType, 00045 dimeFloatRecordType, 00046 dimeDoubleRecordType, 00047 dimeInt8RecordType, 00048 dimeInt16RecordType, 00049 dimeInt32RecordType, 00050 dimeHexRecordType, 00051 dimeRecordHolderType, 00052 dimeClassType, 00053 dimeUnknownClassType, 00054 dimeObjectType, 00055 dimeUnknownObjectType, 00056 dimeEntityType, 00057 dimeUnknownEntityType, 00058 dimePolylineType, 00059 dimeVertexType, 00060 dimeFaceEntityType, 00061 dimeExtrusionEntityType, 00062 dime3DFaceType, 00063 dimeSolidType, 00064 dimeTraceType, 00065 dimeLineType, 00066 dimePointType, 00067 dimeBlockType, 00068 dimeInsertType, 00069 dimeCircleType, 00070 dimeArcType, 00071 dimeLWPolylineType, 00072 dimeEllipseType, 00073 dimeSplineType, 00074 dimeSectionType, 00075 dimeUnknownSectionType, 00076 dimeEntitiesSectionType, 00077 dimeBlocksSectionType, 00078 dimeTablesSectionType, 00079 dimeHeaderSectionType, 00080 dimeClassesSectionType, 00081 dimeObjectsSectionType, 00082 dimeTableType, 00083 dimeTableEntryType, 00084 dimeUnknownTableType, 00085 dimeUCSTableType, 00086 dimeLayerTableType, 00087 00088 // this should be last 00089 dimeLastTypeTag 00090 }; 00091 dimeBase(void); 00092 virtual ~dimeBase(); 00093 00094 virtual int typeId() const = 0; 00095 virtual bool isOfType(const int thetypeid) const; 00096 public: 00097 void *operator new(size_t size, dimeMemHandler *memhandler = NULL, 00098 const int alignment = 4); 00099 void operator delete(void *ptr); 00100 00101 }; // class dimeBase 00102 00103 #endif // ! DIME_BASE_H 00104

Copyright © 1998-1999, Systems In Motion <sales@sim.no>. All rights reserved.
System documentation was generated using doxygen.