EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
BulkDB.h
Go to the documentation of this file.
1 
12 #ifndef _EVE_CACHE_BULKDB_H_
13 #define _EVE_CACHE_BULKDB_H_
14 
15 
16 #include "../eve-server.h"
17 
18 
19 class BulkDB
20 : public Singleton<BulkDB>
21 {
22 public:
23  BulkDB();
24  ~BulkDB();
25 
26  void Initialize();
27  void Close();
28 
29  uint8 GetNumChunks(uint8 setID=0);
30  int32 GetFileIDfromChunk(uint8 setID, uint8 chunkID);
31 
32  /* updated dogma files to send to client in bulkData */
33  PyRep* GetOperands();
36 
37  /* these are split into ~10k-row chunks for easier handling */
38  PyRep* GetExpressions(uint8 chunkID);
41 
42  /* these are used to get chunks */
43  PyRep* GetBulkData(uint8 chunkID);
44  PyRep* GetBulkDataChunks(uint8 setID, uint8 chunkID);
45 
46 private:
47  bool m_loaded;
49 
50  std::map<uint8, PyRep*> m_bulkData; // chunkID/data (preliminary data)
51  std::map<uint8, PyRep*> m_bulkDataChunks; // chunkID/data
52 };
53 
54 #define sBulkDB \
55 ( BulkDB::get() )
56 
57 #endif // _EVE_CACHE_BULKDB_H_
58 
59 /* notes to keep track of chunkID and the data it refers to
60  *
61  * use this to keep mem map of chunk data, loaded on server start
62  m_stationPyData.insert(std::pair<uint32, PyRep*>(row.GetInt(0), m_sdb.DoGetStation(row.GetInt(0))));
63  *
64  */
Base Python wire object.
Definition: PyRep.h:66
unsigned __int8 uint8
Definition: eve-compat.h:46
std::map< uint8, PyRep * > m_bulkDataChunks
Definition: BulkDB.h:51
BulkDB()
Definition: BulkDB.cpp:15
PyRep * GetBulkDataChunks(uint8 setID, uint8 chunkID)
Definition: BulkDB.cpp:174
uint8 GetNumChunks(uint8 setID=0)
Definition: BulkDB.cpp:101
bool m_loaded
Definition: BulkDB.h:47
void Close()
Definition: BulkDB.cpp:31
std::map< uint8, PyRep * > m_bulkData
Definition: BulkDB.h:50
signed __int32 int32
Definition: eve-compat.h:49
void Initialize()
Definition: BulkDB.cpp:63
PyRep * GetDogmaTypeEffects(uint8 chunkID)
Definition: BulkDB.cpp:325
PyRep * GetBulkData(uint8 chunkID)
Definition: BulkDB.cpp:163
PyRep * GetDogmaAttribs()
Definition: BulkDB.cpp:213
PyRep * GetOperands()
Definition: BulkDB.cpp:201
PyRep * GetDogmaEffects()
Definition: BulkDB.cpp:226
~BulkDB()
Definition: BulkDB.cpp:26
PyRep * GetDogmaTypeAttribs(uint8 chunkID)
Definition: BulkDB.cpp:353
Template used for singleton classes.
Definition: Singleton.h:43
uint8 m_chunks
Definition: BulkDB.h:48
int32 GetFileIDfromChunk(uint8 setID, uint8 chunkID)
Definition: BulkDB.cpp:123
Definition: BulkDB.h:19
PyRep * GetExpressions(uint8 chunkID)
Definition: BulkDB.cpp:302