YAPOG  0.0.1
Yet Another Pokemon Online Game
ServerInfoAddObjectVisitor.hpp
Go to the documentation of this file.
1 #ifndef YAPOG_SERVER_SERVERINFOADDOBJECTVISITOR_HPP
2 # define YAPOG_SERVER_SERVERINFOADDOBJECTVISITOR_HPP
3 
4 # include "YAPOG/Macros.hpp"
5 
7 
8 namespace yap
9 {
10  struct IPacket;
11 
12  class DynamicWorldObject;
13 } // namespace yap
14 
15 namespace yse
16 {
19  {
21 
22  public:
23 
24  explicit ServerInfoAddObjectVisitor (yap::IPacket& packet);
25  virtual ~ServerInfoAddObjectVisitor ();
26 
27  virtual void VisitCharacter (const yap::Character& visitable);
28  virtual void VisitPlayer (const yap::IPlayer& visitable);
29  virtual void VisitTeleporter (const yap::Teleporter& visitable);
30  virtual void VisitDestructibleObject (
31  const yap::DestructibleObject& visitable);
32  virtual void VisitBattleSpawnerArea (
33  const yap::BattleSpawnerArea& visitable);
34 
35  private:
36 
37  void WriteAddObject (const yap::DynamicWorldObject& object);
38 
40  };
41 } // namespace yse
42 
43 #endif // YAPOG_SERVER_SERVERINFOADDOBJECTVISITOR_HPP