GameServer
ShopManager.h
[詳解]
1 
6 #ifndef __SHOPMANAGER_H__
7 #define __SHOPMANAGER_H__
8 
9 #include <vector>
10 #include <boost/unordered_map.hpp>
11 
17 class ShopManager : public boost::noncopyable
18 {
19 
20 private: // 別名定義.
21 
22  typedef std::vector<u32> ItemList;
23  typedef boost::unordered_map<u32, ItemList *> ShopMap;
24 
25 public:
26 
30  virtual ~ShopManager();
31 
36  void Initialize();
37 
44  bool IsValidShop(u32 ShopId) const { return (ShopData.find(ShopId) != ShopData.end()); }
45 
53  bool IsSelling(u32 ShopId, u32 ItemId) const;
54 
55 private:
56 
57  // ショップデータ
58  ShopMap ShopData;
59 
60  // ========== Singleton ============-
61 public:
62 
68  static ShopManager &GetInstance() { return Instance; }
69 
70 private:
71 
72  ShopManager();
73  static ShopManager Instance;
74 
75 };
76 
77 #endif // #ifndef __SHOPMANAGER_H__
ショップ管理 シングルトンクラス
Definition: ShopManager.h:17
void Initialize()
初期化
Definition: ShopManager.cpp:28
unsigned int u32
Definition: TypeDefs.h:10
virtual ~ShopManager()
デストラクタ
Definition: ShopManager.cpp:18
static ShopManager & GetInstance()
シングルトンインスタンスを取得
Definition: ShopManager.h:68
bool IsSelling(u32 ShopId, u32 ItemId) const
売っているか?
Definition: ShopManager.cpp:43
Definition: ItemList.h:9
bool IsValidShop(u32 ShopId) const
有効なショップか?
Definition: ShopManager.h:44