Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HModelInfo.h
1 //
2 // Copyright (c) 2000 by Tech Soft 3D, LLC.
3 // The information contained herein is confidential and proprietary to
4 // Tech Soft 3D, LLC., and considered a trade secret as defined under
5 // civil and criminal statutes. Tech Soft 3D shall pursue its civil
6 // and criminal remedies in the event of unauthorized use or misappropriation
7 // of its trade secrets. Use of this information by anyone other than
8 // authorized employees of Tech Soft 3D, LLC. is granted only under a
9 // written non-disclosure agreement, expressly prescribing the scope and
10 // manner of such use.
11 //
12 // $Id: 50176d8ab0c1e5abd52d2f48eb6b4e0969cf9ba7 $
13 //
14 #ifndef _HMODELINFO_H
15 #define _HMODELINFO_H
16 
17 #ifdef H_PACK_8
18 #pragma pack(push)
19 #pragma pack(8)
20 #endif
21 
22 #include "HTools.h"
23 
25 
30 class MVO_API HModelInfo
31 {
32 
33 public:
35  HModelInfo (HC_KEY segment_key = INVALID_KEY) {m_SegmentKey=segment_key;ResetCounters();};
36  virtual ~HModelInfo () {;};
37 
45  virtual void ComputeModelInfo (HC_KEY segment_key=INVALID_KEY, bool recurse=true);
46 
48  int GetTotalFaces( void ) { return m_TotalFaces; }
50  int GetTotalVertices( void ) { return m_TotalVertices; }
52  int GetTotalTriangles( void ) { return m_TotalTriangles; }
54  int GetTotalTristrips( void ) { return m_TotalTristrips; }
56  int GetTotalSegments( void ) { return m_TotalSegments; }
58  int GetTotalCircle( void ) { return m_TotalCircle; }
60  int GetTotalCircularArc( void ) { return m_TotalCircularArc; }
62  int GetTotalCircularChord( void ) { return m_TotalCircularChord; }
64  int GetTotalCircularWedge( void ) { return m_TotalCircularWedge; }
66  int GetTotalEllipse( void ) { return m_TotalEllipse; }
68  int GetTotalEllipticalArc( void ) { return m_TotalEllipticalArc; }
70  int GetTotalGrid( void ) { return m_TotalGrid; }
72  int GetTotalImage( void ) { return m_TotalImage; }
74  int GetTotalIncludes( void ) { return m_TotalIncludes; }
76  int GetTotalIncluders( void ) { return m_TotalIncluders; }
78  int GetTotalLine( void ) { return m_TotalLine; }
80  int GetTotalMarker( void ) { return m_TotalMarker; }
82  int GetTotalMesh( void ) { return m_TotalMesh; }
84  int GetTotalPolygon( void ) { return m_TotalPolygon; }
86  int GetTotalPolyline( void ) { return m_TotalPolyline; }
88  int GetTotalShell( void ) { return m_TotalShell; }
90  int GetTotalStringCursor( void ) { return m_TotalStringCursor; }
92  int GetTotalText( void ) { return m_TotalText; }
94  int GetTotalMatrices( void ) { return m_TotalMatrices; }
96  int GetTotalSpotLight( void ) { return m_TotalSpotLight; }
98  int GetTotalDistantLight( void ) { return m_TotalDistantLight; }
100  int GetTotalLocalLight( void ) { return m_TotalLocalLight; }
102  int GetTotalCuttingPlane( void ) { return m_TotalCuttingPlane; }
104  int GetTotalCylinders( void ) { return m_TotalCylinders; }
106  int GetTotalPolyCylinders( void ) { return m_TotalPolyCylinders; }
108  int GetTotalSpheres( void ) { return m_TotalSpheres; }
110  int GetTotalNURBSCurves( void ) { return m_TotalNURBSCurves; }
112  int GetTotalNURBSSurfaces( void ) { return m_TotalNURBSSurfaces; }
114  int GetTotalReferences( void ) { return m_TotalReferences; }
116  int GetTotalInfiniteLines( void ) {return m_TotalInfiniteLines; }
118  int GetTotalInfiniteRays( void ) {return m_TotalInfiniteRays; }
120  int GetTotalOthers( void ) { return m_TotalOthers; }
121 
122 protected:
123 
129  virtual void ResetCounters();
130 
139  virtual void IncrementCounter (char * item_type, HC_KEY item_key);
141  virtual void ComputeSegmentContents(HC_KEY the_key, bool recurse=true);
142 
144 
150 
154 
171 
175 
177 
186 
188 
189 };
190 
191 
192 #ifdef H_PACK_8
193 #pragma pack(pop)
194 #endif
195 
196 #endif
197 
198 
199 
200 
int GetTotalCircle(void)
Definition: HModelInfo.h:58
int m_TotalOthers
For internal use only.
Definition: HModelInfo.h:187
int m_TotalInfiniteLines
For internal use only.
Definition: HModelInfo.h:184
int m_TotalEllipse
For internal use only.
Definition: HModelInfo.h:156
int m_TotalPolyCylinders
For internal use only.
Definition: HModelInfo.h:178
int GetTotalCircularWedge(void)
Definition: HModelInfo.h:64
int GetTotalCuttingPlane(void)
Definition: HModelInfo.h:102
int m_TotalVertices
For internal use only.
Definition: HModelInfo.h:146
int GetTotalCylinders(void)
Definition: HModelInfo.h:104
int GetTotalInfiniteLines(void)
Definition: HModelInfo.h:116
int m_TotalIncludes
For internal use only.
Definition: HModelInfo.h:160
int m_TotalCircularWedge
For internal use only.
Definition: HModelInfo.h:155
int GetTotalOthers(void)
Definition: HModelInfo.h:120
int m_TotalText
For internal use only.
Definition: HModelInfo.h:169
int m_TotalReferences
For internal use only.
Definition: HModelInfo.h:183
#define HC_KEY
int m_TotalCylinders
For internal use only.
Definition: HModelInfo.h:179
int m_TotalMatrices
For internal use only.
Definition: HModelInfo.h:170
int m_TotalMarker
For internal use only.
Definition: HModelInfo.h:163
HModelInfo(HC_KEY segment_key=INVALID_KEY)
Definition: HModelInfo.h:35
int GetTotalStringCursor(void)
Definition: HModelInfo.h:90
int GetTotalPolyline(void)
Definition: HModelInfo.h:86
int m_TotalIncluders
For internal use only.
Definition: HModelInfo.h:161
int m_TotalTriangles
For internal use only.
Definition: HModelInfo.h:147
int m_TotalGrid
For internal use only.
Definition: HModelInfo.h:158
int m_TotalPolygon
For internal use only.
Definition: HModelInfo.h:165
int m_TotalPolyline
For internal use only.
Definition: HModelInfo.h:166
The HModelInfo class computes and stores model information.
Definition: HModelInfo.h:30
int GetTotalLocalLight(void)
Definition: HModelInfo.h:100
int m_TotalTristrips
For internal use only.
Definition: HModelInfo.h:148
int GetTotalText(void)
Definition: HModelInfo.h:92
int GetTotalMatrices(void)
Definition: HModelInfo.h:94
int GetTotalDistantLight(void)
Definition: HModelInfo.h:98
int GetTotalSegments(void)
Definition: HModelInfo.h:56
int m_TotalImage
For internal use only.
Definition: HModelInfo.h:159
int GetTotalGrid(void)
Definition: HModelInfo.h:70
int GetTotalCircularChord(void)
Definition: HModelInfo.h:62
int GetTotalMesh(void)
Definition: HModelInfo.h:82
int GetTotalSpotLight(void)
Definition: HModelInfo.h:96
int m_TotalLocalLight
For internal use only.
Definition: HModelInfo.h:174
int GetTotalSpheres(void)
Definition: HModelInfo.h:108
int GetTotalIncludes(void)
Definition: HModelInfo.h:74
int m_TotalFaces
For internal use only.
Definition: HModelInfo.h:145
int GetTotalInfiniteRays(void)
Definition: HModelInfo.h:118
int GetTotalVertices(void)
Definition: HModelInfo.h:50
int m_TotalSegments
For internal use only.
Definition: HModelInfo.h:149
int m_TotalStringCursor
For internal use only.
Definition: HModelInfo.h:168
int m_TotalNURBSSurfaces
For internal use only.
Definition: HModelInfo.h:182
int m_TotalDistantLight
For internal use only.
Definition: HModelInfo.h:173
int m_TotalSpheres
For internal use only.
Definition: HModelInfo.h:180
int GetTotalTriangles(void)
Definition: HModelInfo.h:52
int m_TotalLine
For internal use only.
Definition: HModelInfo.h:162
int GetTotalMarker(void)
Definition: HModelInfo.h:80
int m_TotalNURBSCurves
For internal use only.
Definition: HModelInfo.h:181
int GetTotalIncluders(void)
Definition: HModelInfo.h:76
int GetTotalPolygon(void)
Definition: HModelInfo.h:84
int GetTotalNURBSCurves(void)
Definition: HModelInfo.h:110
int m_TotalCircle
For internal use only.
Definition: HModelInfo.h:151
int GetTotalNURBSSurfaces(void)
Definition: HModelInfo.h:112
int m_TotalInfiniteRays
For internal use only.
Definition: HModelInfo.h:185
int GetTotalLine(void)
Definition: HModelInfo.h:78
int GetTotalImage(void)
Definition: HModelInfo.h:72
int m_TotalShell
For internal use only.
Definition: HModelInfo.h:167
int m_TotalMesh
For internal use only.
Definition: HModelInfo.h:164
HC_KEY m_SegmentKey
For internal use only
Definition: HModelInfo.h:143
int GetTotalEllipse(void)
Definition: HModelInfo.h:66
int m_TotalCuttingPlane
For internal use only.
Definition: HModelInfo.h:176
int m_TotalEllipticalArc
For internal use only.
Definition: HModelInfo.h:157
int GetTotalPolyCylinders(void)
Definition: HModelInfo.h:106
int GetTotalTristrips(void)
Definition: HModelInfo.h:54
int GetTotalEllipticalArc(void)
Definition: HModelInfo.h:68
int m_TotalCircularArc
For internal use only.
Definition: HModelInfo.h:152
int GetTotalCircularArc(void)
Definition: HModelInfo.h:60
int GetTotalFaces(void)
Definition: HModelInfo.h:48
int GetTotalReferences(void)
Definition: HModelInfo.h:114
int GetTotalShell(void)
Definition: HModelInfo.h:88
int m_TotalCircularChord
For internal use only.
Definition: HModelInfo.h:153
int m_TotalSpotLight
For internal use only.
Definition: HModelInfo.h:172