/*
- Copyright (C) 1999-2007 id Software, Inc. and contributors.
- For a list of contributors, see the accompanying CONTRIBUTORS file.
+ Copyright (C) 2001-2006, William Joseph.
+ All Rights Reserved.
This file is part of GtkRadiant.
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-// entity.h
+#if !defined( INCLUDED_ENTITY_H )
+#define INCLUDED_ENTITY_H
-// external API
+class EntityCreator;
+EntityCreator& GetEntityCreator();
-// construct
-entity_t* Entity_Alloc();
-// destruct
-void Entity_Free( entity_t *e );
-// construct from entity
-entity_t* Entity_Clone( entity_t *e );
+enum EGameType
+{
+ eGameTypeQuake3,
+ eGameTypeRTCW,
+ eGameTypeDoom3,
+};
-// epair interface
-void SetKeyValue( entity_t *ent, const char *key, const char *value );
-void DeleteKey( entity_t *ent, const char *key );
-const char* ValueForKey( entity_t *ent, const char *key );
-float FloatForKey( entity_t *ent, const char *key );
-int IntForKey( entity_t *ent, const char *key );
-void GetVectorForKey( entity_t *ent, const char *key, vec3_t vec );
+extern EGameType g_gameType;
-void Entity_AddToList( entity_t *e, entity_t *lst );
-void Entity_RemoveFromList( entity_t *e );
+class FilterSystem;
+void Entity_Construct( EGameType gameType = eGameTypeQuake3 );
+void Entity_Destroy();
-void Entity_LinkBrush( entity_t *e, brush_t *b );
-void Entity_UnlinkBrush( brush_t *b );
+extern bool g_showNames;
+extern bool g_showAngles;
+extern bool g_newLightDraw;
+extern bool g_lightRadii;
-// for undo
-int Entity_MemorySize( entity_t *e );
-
-epair_t* Entity_AllocateEpair( const char *key, const char *value );
-epair_t** Entity_GetKeyValList( entity_t *e );
-void Entity_SetKeyValList( entity_t *e, epair_t* ep );
+#endif