22 #include "hurricane/DBo.h"
23 #include "hurricane/Entities.h"
24 #include "hurricane/Box.h"
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 )
75 unsigned int jsonId = get<int64_t>(stack,
"_id");
77 JsonDBo::update<T>( stack, hobject );
78 stack.addEntity( jsonId, hobject );
85 class JsonEntityRef :
public JsonObject {
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
DataBase object root class (API).
Definition: DBo.h:45
Occurrenceable objects root class (API).
Definition: Entity.h:37
virtual Cell * getCell() const =0
virtual Box getBoundingBox() const =0
Quark description (API)
Definition: Quark.h:35
Contains Almost Everything.
Definition: BasicLayer.h:39