EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
StationDataMgr.h
Go to the documentation of this file.
1 
12 #ifndef _EVE_SERVER_STATION_DATAMANAGER_H__
13 #define _EVE_SERVER_STATION_DATAMANAGER_H__
14 
15 
16 #include "../eve-server.h"
17 #include "POD_containers.h"
18 
19 #include "station/StationDB.h"
20 
22 : public Singleton< StationDataMgr >
23 {
24 public:
27 
28  int Initialize();
29 
30  void Clear();
31  void Close();
32  void GetInfo();
33  void AddOffice(uint32 stationID, OfficeData& data);
34  void LoadOffices(uint32 stationID, std::map<uint32, OfficeData>& data);
35  // this will check for locationID type and retrieve appropriate data
36  void GetStationOfficeIDs(uint32 locationID, std::vector<OfficeData> &data);
37 
38  bool GetStationData(uint32 stationID, StationData& data);
39 
40  PyRep* GetStationItemBits(uint32 stationID);
41  PyObject* GetStationPyData(uint32 stationID);
42 
43  uint32 GetOwnerID(uint32 stationID);
44  std::string GetStationName(uint32 stationID);
45  uint32 GetStationSystemID(uint32 stationID);
46 
47  double GetDockPosY(uint32 stationID);
48 
49  uint32 GetOfficeRentalFee(uint32 stationID);
50  uint32 GetOfficeIDForCorp(uint32 stationID, uint32 corpID);
51 
52 protected:
53  void Populate();
54 
55  void LoadStationPyData();
56 
57 
58 private:
59  std::map<int8, int32> m_serviceMask; // operationID/serviceMask
60  std::map<uint32, StationData> m_stationData; // stationID/data
61  std::map<uint32, PyObject*> m_stationPyData; // stationID/data
62 
63  std::multimap<uint32, OfficeData> m_stationOfficeData; // stationID/data
64 
65  // need to add station operation data here...
66 
67 };
68 
69 //Singleton
70 #define stDataMgr \
71  ( StationDataMgr::get() )
72 
73 
74 #endif // _EVE_SERVER_STATION_DATAMANAGER_H__
Base Python wire object.
Definition: PyRep.h:66
std::map< uint32, PyObject * > m_stationPyData
PyObject * GetStationPyData(uint32 stationID)
bool GetStationData(uint32 stationID, StationData &data)
uint32 GetOfficeIDForCorp(uint32 stationID, uint32 corpID)
double GetDockPosY(uint32 stationID)
uint32 GetOfficeRentalFee(uint32 stationID)
uint32 GetStationSystemID(uint32 stationID)
std::map< int8, int32 > m_serviceMask
uint32 GetOwnerID(uint32 stationID)
Python object.
Definition: PyRep.h:826
void LoadOffices(uint32 stationID, std::map< uint32, OfficeData > &data)
std::multimap< uint32, OfficeData > m_stationOfficeData
void AddOffice(uint32 stationID, OfficeData &data)
unsigned __int32 uint32
Definition: eve-compat.h:50
Template used for singleton classes.
Definition: Singleton.h:43
PyRep * GetStationItemBits(uint32 stationID)
std::map< uint32, StationData > m_stationData
void GetStationOfficeIDs(uint32 locationID, std::vector< OfficeData > &data)
std::string GetStationName(uint32 stationID)