Polygon Crucher SDK - Documentation
Documentation
Loading...
Searching...
No Matches
3DDummy.h
Go to the documentation of this file.
1//! @file 3DDummy.h
2//! @brief C3DDummy class for handling 3D dummy object
3//!
4//////////////////////////////////////////////////////////////////////
5
6#if !defined(AFX_3DDUMMY_H__5C85DAE7_BE95_4F8B_B661_B0CF9BE55255__INCLUDED_)
7#define AFX_3DDUMMY_H__5C85DAE7_BE95_4F8B_B661_B0CF9BE55255__INCLUDED_
8
9#ifdef _MSC_VER
10#pragma once
11#endif // _MSC_VER
12
13#include "3DBaseObject.h"
14
15BEGIN_MOOTOOLS_NAMESPACE
16
17//! @class C3DDummy
18//! @brief A dummy is a void object that does not contains geometry.
19//! @details A dummy object can encapsulate any kind of specific data using the CCustomData object, retrieved using C3DBaseObject::GetData.
20class DLL_3DFUNCTION C3DDummy : public C3DBaseObject
21{
22 DECLARE_SERIAL_XOBJECT(C3DDummy);
23
24protected:
25 // the internal CCustomData ID value that defines the dummy type
26 typedef enum SpecificData XEnumType(unsigned int)
27 {
28 DUMMY_DATA_TYPE = MAKE_CUSTOM_ID('D', 'Y', 'T', 'Y'), // Dummy type.
29 } SpecificData;
30
31public:
32 //! @enum DummyType
33 //! the kind of dummy
34 typedef enum DummyType XEnumType(unsigned int)
35 {
36 DUMMY_VOID = MAKE_CUSTOM_ID('V', 'O', 'I', 'D'), //!< This is a dummy dummy object. Default one if none specified
37 DUMMY_HELIODON = MAKE_CUSTOM_ID('H', 'E', 'L', 'I'), //!< The dummy matches an heliodon
38 DUMMY_VEGETATION = MAKE_CUSTOM_ID('V', 'E', 'G', 'E'), //!< The dummy matches some vegetation
39 DUMMY_CHARACTER = MAKE_CUSTOM_ID('C', 'H', 'A', 'R'), //!< The dummy matches a character
40 DUMMY_VEHICULE = MAKE_CUSTOM_ID('V', 'E', 'H', 'I'), //!< The dummy matches a car
41 } DummyType;
42
43public:
44 C3DDummy();
45 virtual ~C3DDummy();
46
47 DummyType GetType() const; //!< Get the #DummyType
48 void SetType(DummyType type); //!< Get the #DummyType
49
50 virtual unsigned int GetChecksum(unsigned int checksumFlags = CHECKSUM_ALL) const; // Return a value that only take care of the type. See GetChecksum(unsigned int ignoreCustomDataID, ...) to get advanced checksum computation base on the
51};
52
53END_MOOTOOLS_NAMESPACE
54
55#endif // !defined(AFX_3DDUMMY_H__5C85DAE7_BE95_4F8B_B661_B0CF9BE55255__INCLUDED_)
C3DBaseObject class which is the common base class for all object types.
@ CHECKSUM_ALL
All is used for computing checksum.
Definition 3DType.h:433
This is the base class for any kind of object.
Definition 3DBaseObject.h:106
A dummy is a void object that does not contains geometry.
Definition 3DDummy.h:21
void SetType(DummyType type)
Get the DummyType.
DummyType
Definition 3DDummy.h:35
virtual unsigned int GetChecksum(unsigned int checksumFlags=CHECKSUM_ALL) const
When not overriden, the checksum is only made on the kind of object. When overidden,...
DummyType GetType() const
Get the DummyType.
The class defines an x, y, z 3D point which can use int, float or double.
Definition 3DPoint.h:27