-/*\r
-BobToolz plugin for GtkRadiant\r
-Copyright (C) 2001 Gordon Biggans\r
-\r
-This library is free software; you can redistribute it and/or\r
-modify it under the terms of the GNU Lesser General Public\r
-License as published by the Free Software Foundation; either\r
-version 2.1 of the License, or (at your option) any later version.\r
-\r
-This library is distributed in the hope that it will be useful,\r
-but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
-Lesser General Public License for more details.\r
-\r
-You should have received a copy of the GNU Lesser General Public\r
-License along with this library; if not, write to the Free Software\r
-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\r
-*/\r
-\r
-// DEntity.h: interface for the DEntity class.\r
-//\r
-//////////////////////////////////////////////////////////////////////\r
-\r
-#if !defined(AFX_DENTITY_H__35B2C523_F0A7_11D4_ACF7_004095A18133__INCLUDED_)\r
-#define AFX_DENTITY_H__35B2C523_F0A7_11D4_ACF7_004095A18133__INCLUDED_\r
-\r
-#include "DBrush.h"\r
-#include "DEPair.h"\r
-#include "DPatch.h"\r
-#include "StdAfx.h" // Added by ClassView\r
-\r
-#if _MSC_VER > 1000\r
-#pragma once\r
-#endif // _MSC_VER > 1000\r
-\r
-class DEntity \r
-{\r
-public:\r
- void RemoveFromRadiant();\r
- entity_t* QER_Entity;\r
- int m_nID;\r
-\r
-// Constrcution/Destruction\r
- DEntity(char* classname = "worldspawn", int ID = -1); // sets classname\r
- virtual ~DEntity();\r
-// ---------------------------------------------\r
-\r
-// epair functions........\r
- void LoadEPairList(epair_t* epl);\r
- void AddEPair(char* key, char* value);\r
- void ClearEPairs();\r
- DEPair* FindEPairByKey(const char* keyname);\r
-// ---------------------------------------------\r
-\r
-// random functions........\r
- bool ResetTextures(const char* textureName, float fScale[2], float fShift[2], int rotation, const char* newTextureName, int bResetTextureName, int bResetScale[2], int bResetShift[2], int bResetRotation, bool rebuild);\r
- void SaveToFile(FILE* pFile);\r
- void SetClassname(char* classname);\r
- int GetIDMax();\r
-\r
- void BuildInRadiant(bool allowDestruction);\r
- void ResetChecks(list<Str>* exclusionList);\r
- void RemoveNonCheckBrushes(list<Str>* exclusionList, bool useDetail);\r
-\r
- DPlane* AddFaceToBrush(vec3_t va, vec3_t vb, vec3_t vc, _QERFaceData* faceData, int ID); // slow, try not to use much\r
- int GetBrushCount( void );\r
- DBrush* FindBrushByPointer( brush_t* brush );\r
-// ---------------------------------------------\r
-\r
-\r
-// bool list functions\r
- void SelectBrushes(bool* selectList);\r
- bool* BuildDuplicateList();\r
- bool* BuildIntersectList();\r
-// ---------------------------------------------\r
- \r
-\r
-// brush operations\r
- void ClearBrushes(); // clears brush list and frees memory for brushes\r
-\r
- DBrush* GetBrushForID(int ID);\r
- DBrush* NewBrush(int ID = -1);\r
-// ---------------------------------------------\r
-\r
-// patch operations\r
- void ClearPatches();\r
-\r
- DPatch* NewPatch();\r
-// ---------------------------------------------\r
-\r
-// vars\r
- list<DEPair*> epairList;\r
- list<DBrush*> brushList;\r
- // new patches, wahey!!!\r
- list<DPatch*> patchList;\r
- Str m_Classname;\r
-// ---------------------------------------------\r
-\r
-\r
- int FixBrushes(bool rebuild);\r
-\r
- bool LoadFromEntity(int id, bool bLoadPatches = FALSE);\r
- bool LoadFromEntity(entity_t* ent, bool bLoadPatches = FALSE);\r
- void LoadSelectedBrushes();\r
- void LoadSelectedPatches();\r
-\r
- bool LoadFromPrt(char* filename);\r
-// ---------------------------------------------\r
- void SpawnString(const char* key, const char* defaultstring, const char** out);\r
- void SpawnInt(const char* key, const char* defaultstring, int* out);\r
- void SpawnFloat(const char* key, const char* defaultstring, float* out);\r
- void SpawnVector(const char* key, const char* defaultstring, vec_t* out);\r
-};\r
-\r
-#endif // !defined(AFX_DENTITY_H__35B2C523_F0A7_11D4_ACF7_004095A18133__INCLUDED_)\r
+/*
+ BobToolz plugin for GtkRadiant
+ Copyright (C) 2001 Gordon Biggans
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+// DEntity.h: interface for the DEntity class.
+//
+//////////////////////////////////////////////////////////////////////
+
+#if !defined( AFX_DENTITY_H__35B2C523_F0A7_11D4_ACF7_004095A18133__INCLUDED_ )
+#define AFX_DENTITY_H__35B2C523_F0A7_11D4_ACF7_004095A18133__INCLUDED_
+
+#if _MSC_VER > 1000
+#pragma once
+#endif // _MSC_VER > 1000
+
+#include <list>
+#include "str.h"
+#include "mathlib.h"
+
+class DEPair;
+class DBrush;
+class DPlane;
+class DPatch;
+class Entity;
+
+namespace scene
+{
+class Node;
+}
+class _QERFaceData;
+
+class DEntity
+{
+public:
+void RemoveFromRadiant();
+scene::Node* QER_Entity;
+int m_nID;
+
+// Constrcution/Destruction
+DEntity( const char* classname = "worldspawn", int ID = -1 ); // sets classname
+virtual ~DEntity();
+// ---------------------------------------------
+
+// epair functions........
+void LoadEPairList( Entity* epl );
+void AddEPair( const char* key, const char* value );
+void ClearEPairs();
+DEPair* FindEPairByKey( const char* keyname );
+// ---------------------------------------------
+
+// random functions........
+bool ResetTextures( const char* textureName, float fScale[2], float fShift[2], int rotation, const char* newTextureName, int bResetTextureName, int bResetScale[2], int bResetShift[2], int bResetRotation, bool rebuild );
+void SaveToFile( FILE* pFile );
+void SetClassname( const char* classname );
+int GetIDMax();
+
+void BuildInRadiant( bool allowDestruction );
+void ResetChecks( std::list<Str>* exclusionList );
+void RemoveNonCheckBrushes( std::list<Str>* exclusionList, bool useDetail );
+
+DPlane* AddFaceToBrush( vec3_t va, vec3_t vb, vec3_t vc, _QERFaceData* faceData, int ID ); // slow, try not to use much
+int GetBrushCount( void );
+DBrush* FindBrushByPointer( scene::Node& brush );
+// ---------------------------------------------
+
+
+// bool list functions
+void SelectBrushes( bool* selectList );
+bool* BuildDuplicateList();
+bool* BuildIntersectList();
+// ---------------------------------------------
+
+
+// brush operations
+void ClearBrushes(); // clears brush list and frees memory for brushes
+
+DBrush* GetBrushForID( int ID );
+DBrush* NewBrush( int ID = -1 );
+// ---------------------------------------------
+
+// patch operations
+void ClearPatches();
+
+DPatch* NewPatch();
+// ---------------------------------------------
+
+// vars
+std::list<DEPair*> epairList;
+std::list<DBrush*> brushList;
+// new patches, wahey!!!
+std::list<DPatch*> patchList;
+Str m_Classname;
+// ---------------------------------------------
+
+
+int FixBrushes();
+
+bool LoadFromEntity( scene::Node& ent, bool bLoadPatches = false );
+void LoadSelectedBrushes();
+void LoadSelectedPatches();
+
+bool LoadFromPrt( char* filename );
+// ---------------------------------------------
+void SpawnString( const char* key, const char* defaultstring, const char** out );
+void SpawnInt( const char* key, const char* defaultstring, int* out );
+void SpawnFloat( const char* key, const char* defaultstring, float* out );
+void SpawnVector( const char* key, const char* defaultstring, vec_t* out );
+};
+
+#endif // !defined(AFX_DENTITY_H__35B2C523_F0A7_11D4_ACF7_004095A18133__INCLUDED_)