22#include "hurricane/DBo.h"
23#include "hurricane/Entities.h"
24#include "hurricane/Box.h"
36 class Entity :
public DBo
41 static FastRTTI _fastRTTI;
43 static inline const FastRTTI& fastRTTI ();
44 virtual const FastRTTI& vfastRTTI ()
const;
48 virtual void _toJson ( JsonWriter* )
const;
49 virtual string _getString ()
const;
50 virtual Record* _getRecord ()
const;
51 Quark* _getQuark ( SharedPath* sharedPath = NULL )
const;
55 virtual void _postCreate ();
56 virtual void _preDestroy ();
60 inline const FastRTTI& Entity::fastRTTI () {
return _fastRTTI; }
66 class JsonEntity :
public JsonDBo {
68 JsonEntity (
unsigned long flags );
69 template<
typename T>
inline void update ( JsonStack&, T );
73 template<
typename T>
inline void JsonEntity::update (
JsonStack& stack, T hobject )
77 JsonDBo::update<T>( stack, hobject );
78 stack.addEntity( jsonId, hobject );
87 static void initialize ();
88 JsonEntityRef (
unsigned long flags );
89 virtual string getTypeName ()
const;
90 virtual JsonEntityRef* clone (
unsigned long )
const;
91 virtual void toData ( JsonStack& );
Box description (API)
Definition Box.h:30
The model (API).
Definition Cell.h:64
Occurrenceable objects root class (API).
Definition Entity.h:37
virtual Box getBoundingBox() const =0
virtual Cell * getCell() const =0
Support for JSON export.
Definition JsonObject.h:83
T get(JsonStack &, const std::string &key) const
Definition JsonObject.h:382
JSON Parser Stack.
Definition JsonObject.h:249
Quark description (API)
Definition Quark.h:35
Contains Almost Everything.
Definition BasicLayer.h:39