EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
MissionDataMgr.h
Go to the documentation of this file.
1 
12 #ifndef _EVE_SERVER_MISSION_DATAMANAGER_H__
13 #define _EVE_SERVER_MISSION_DATAMANAGER_H__
14 
15 
16 #include "../eve-server.h"
17 #include "missions/MissionDB.h"
18 
19 
21 : public Singleton< MissionDataMgr >
22 {
23 public:
26 
27  int Initialize();
28 
29  void Clear();
30  void Close() { Clear(); }
31  void GetInfo();
32 
33  void Process();
34 
35  void AddMissionOffer(uint32 charID, MissionOffer& data);
36  void UpdateMissionData(uint32 charID, MissionOffer& data);
37  void RemoveMissionOffer(uint32 charID, MissionOffer& data);
38  void LoadMissionOffers(uint32 charID, std::vector<MissionOffer>& data);
39  void LoadAgentOffers(const uint32 agentID, std::map<uint32, MissionOffer>& data);
40  void CreateMissionOffer(uint8 typeID, uint8 level, uint8 raceID, bool important, MissionOffer& data);
41 
42  std::string GetTypeName(uint8 typeID);
43  std::string GetTypeLabel(uint8 typeID);
44 
48 
49 protected:
50  void Populate();
51 
52 private:
54 
55  std::map<std::string, uint32> m_names;
56  std::multimap<uint8, CourierData> m_courier; // level/data
57  std::multimap<uint8, CourierData> m_courierImp; // level/data
58  std::multimap<uint8, CourierData> m_mining; // level/data
59  std::multimap<uint8, CourierData> m_miningImp; // level/data
60  std::multimap<uint8, MissionData> m_missions; // level/data
61  std::multimap<uint8, MissionData> m_missionsImp; // level/data
62  std::multimap<uint32, MissionOffer> m_offers; // charID/data current mission offers by charID
63  std::multimap<uint32, MissionOffer> m_aoffers; // agentID/data current mission offers by agentID
64  std::multimap<uint32, MissionOffer> m_xoffers; // charID/data expired/completed offers by charID
65 
66  // mission png resources...
70 
71 };
72 
73 //Singleton
74 #define sMissionDataMgr \
75 ( MissionDataMgr::get() )
76 
77 
78 #endif // _EVE_SERVER_MISSION_DATAMANAGER_H__
unsigned __int8 uint8
Definition: eve-compat.h:46
std::multimap< uint32, MissionOffer > m_aoffers
std::multimap< uint32, MissionOffer > m_xoffers
std::string GetTypeLabel(uint8 typeID)
Python string.
Definition: PyRep.h:430
std::multimap< uint8, CourierData > m_courier
std::multimap< uint32, MissionOffer > m_offers
PyString * MiningPNG
void LoadMissionOffers(uint32 charID, std::vector< MissionOffer > &data)
std::multimap< uint8, MissionData > m_missionsImp
PyString * CourierPNG
std::multimap< uint8, CourierData > m_miningImp
void CreateMissionOffer(uint8 typeID, uint8 level, uint8 raceID, bool important, MissionOffer &data)
std::multimap< uint8, CourierData > m_mining
PyString * GetCourierRes()
unsigned __int32 uint32
Definition: eve-compat.h:50
#define PyIncRef(op)
Definition: PyRep.h:56
void RemoveMissionOffer(uint32 charID, MissionOffer &data)
void AddMissionOffer(uint32 charID, MissionOffer &data)
std::multimap< uint8, CourierData > m_courierImp
PyString * GetMiningRes()
PyString * KillPNG
void UpdateMissionData(uint32 charID, MissionOffer &data)
std::multimap< uint8, MissionData > m_missions
Template used for singleton classes.
Definition: Singleton.h:43
std::map< std::string, uint32 > m_names
std::string GetTypeName(uint8 typeID)
void LoadAgentOffers(const uint32 agentID, std::map< uint32, MissionOffer > &data)
PyString * GetKillRes()