/TGame/TCommon/Entity/EntityVisitorIf.h
http://awoe.googlecode.com/ · C Header · 52 lines · 24 code · 11 blank · 17 comment · 0 complexity · dec0f341405b4db54680cb8c5cff6b3c MD5 · raw file
- #ifndef __ENTITY_Visitor_INTERFACE__
- #define __ENTITY_Visitor_INTERFACE__
-
- #include "Entry/LibExportCom.h"
-
- class EntityP;
- class EntityM;
- class EntityD;
- class EntityP;
- class EntityN;
- class EntityS;
- class EntityR;
- class EntityImp;
-
- //
- // Entity Visitor Interface
- // For iterating all entities in the entity container or manage with a for each interface.
- //
- class TCOM_API IEntityVisitor
- {
- public:
- virtual ~IEntityVisitor() {}
-
- //
- // visit player entity
- virtual bool visitP(EntityP& e) = 0;
-
- //
- // visit role entity
- virtual bool visitR(EntityR& e) = 0;
-
- //
- // visit monster entity
- virtual bool visitM(EntityM& e) = 0;
-
- //
- // visit destructible entity
- virtual bool visitD(EntityD& e) = 0;
-
- //
- // visit static entity
- virtual bool visitS(EntityS& e) = 0;
-
- //
- // visit NPC entity
- virtual bool visitN(EntityN& e) = 0;
-
- // visit other entity
- virtual bool visit(EntityImp& e) = 0;
- };
-
- #endif