Main Page
Classes
Files
File List
include
dime
Base.h
1
/**************************************************************************\
2
*
3
* FILE: Base.h
4
*
5
* This source file is part of DIME.
6
* Copyright (C) 1998-1999 by Systems In Motion. All rights reserved.
7
*
8
* This library is free software; you can redistribute it and/or modify it
9
* under the terms of the GNU General Public License, version 2, as
10
* published by the Free Software Foundation.
11
*
12
* This library is distributed in the hope that it will be useful, but
13
* WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* General Public License (the accompanying file named COPYING) for more
16
* details.
17
*
18
**************************************************************************
19
*
20
* If you need DIME for a non-GPL project, contact Systems In Motion
21
* to acquire a Professional Edition License:
22
*
23
* Systems In Motion http://www.sim.no/
24
* Prof. Brochs gate 6 sales@sim.no
25
* N-7030 Trondheim Voice: +47 22114160
26
* NORWAY Fax: +47 67172912
27
*
28
\**************************************************************************/
29
30
#ifndef DIME_BASE_H
31
#define DIME_BASE_H
32
33
#include <dime/Basic.h>
34
#include <stddef.h>
// for size_t
35
36
class
dimeMemHandler
;
37
38
class
DIME_DLL_API
dimeBase
39
{
40
public
:
41
enum
{
42
dimeBaseType = 1,
43
dimeRecordType,
44
dimeStringRecordType,
45
dimeFloatRecordType,
46
dimeDoubleRecordType,
47
dimeInt8RecordType,
48
dimeInt16RecordType,
49
dimeInt32RecordType,
50
dimeHexRecordType,
51
dimeRecordHolderType,
52
dimeClassType,
53
dimeUnknownClassType,
54
dimeObjectType,
55
dimeUnknownObjectType,
56
dimeEntityType,
57
dimeUnknownEntityType,
58
dimePolylineType,
59
dimeVertexType,
60
dimeFaceEntityType,
61
dimeExtrusionEntityType,
62
dime3DFaceType,
63
dimeSolidType,
64
dimeTraceType,
65
dimeLineType,
66
dimePointType,
67
dimeBlockType,
68
dimeInsertType,
69
dimeCircleType,
70
dimeArcType,
71
dimeLWPolylineType,
72
dimeEllipseType,
73
dimeSplineType,
74
dimeSectionType,
75
dimeUnknownSectionType,
76
dimeEntitiesSectionType,
77
dimeBlocksSectionType,
78
dimeTablesSectionType,
79
dimeHeaderSectionType,
80
dimeClassesSectionType,
81
dimeObjectsSectionType,
82
dimeTableType,
83
dimeTableEntryType,
84
dimeUnknownTableType,
85
dimeUCSTableType,
86
dimeLayerTableType,
87
88
// this should be last
89
dimeLastTypeTag
90
};
91
dimeBase
(
void
);
92
virtual
~
dimeBase
();
93
94
virtual
int
typeId()
const
= 0;
95
virtual
bool
isOfType(
const
int
thetypeid)
const
;
96
public
:
97
void
*
operator
new
(
size_t
size,
dimeMemHandler
*memhandler = NULL,
98
const
int
alignment = 4);
99
void
operator
delete
(
void
*ptr);
100
101
};
// class dimeBase
102
103
#endif // ! DIME_BASE_H
104
dimeBase
The dimeBase class is the superclass for most classes in Dime.
Definition:
Base.h:38
dimeMemHandler
The dimeMemHandler class is a special-purpose memory manager.
Definition:
MemHandler.h:35
Copyright © 1998-1999,
Systems In Motion
<
sales@sim.no
>. All rights reserved.
System documentation was generated using
doxygen
.