EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
BulkMgrService.cpp File Reference
#include "eve-server.h"
#include "PyServiceCD.h"
#include "cache/BulkDB.h"
#include "cache/BulkMgrService.h"
#include "packets/BulkDataPkts.h"
Include dependency graph for BulkMgrService.cpp:

Go to the source code of this file.

Functions

BulkMgrService.cpp

This file is for processing bulkdata Copyright 2017 Alasiya-EVEmu Team

: ozatomic (hacked for static client data) : Allan (added calls and (hacked) updates for new dgm data)

Date
: 24 January 2017
 PyCallable_Make_InnerDispatcher (BulkMgrService) BulkMgrService
 

Function Documentation

PyCallable_Make_InnerDispatcher ( BulkMgrService  )
Todo:
this system will need to work with objectCache, as those ARE the bulkdata files sent to the client. they are already packed and loaded into the server. this system ive created for bulkData is redundant. will have to look into sorting/sending to client eventually, using hash comparison to determine what files to send. (if possible) for now, we'll leave this as-is, because it seems to be working ok, and i MAY NOT have complete data for all the bulkfiles

the client install has default bulkdata files found in the eve/bulkdata directory. need to get these files and compare with what we have to see what needs to be updated, and go from there. next comment has all data used by client (found in code)

Todo:
used by client...
self.dgmunits = self.LoadBulkIndex('dgmunits', const.cacheDogmaUnits, 'unitID')
self.invbptypes = self.LoadBulkIndex('invbptypes', const.cacheInvBlueprintTypes, 'blueprintTypeID')
self.invcategories = self.LoadBulkIndex('invcategories', const.cacheInvCategories, 'categoryID', InvCategory)
self.invmetagroups = self.LoadBulkIndex('invmetagroups', const.cacheInvMetaGroups, 'metaGroupID', InvMetaGroup)
self.invgroups = self.LoadBulkIndex('invgroups', const.cacheInvGroups, 'groupID', InvGroup)
self.invtypes = self.LoadBulkIndex('invtypes', const.cacheInvTypes, 'typeID', InvType)
self.invtypereactions = self.LoadBulkFilter('invtypereactions', const.cacheInvTypeReactions, 'reactionTypeID')
self.invmetatypes = self.LoadBulkIndex('invmetatypes', const.cacheInvMetaTypes, 'typeID')
self.invmetatypesByParent = self.LoadBulkFilter('invmetatypesByParent', const.cacheInvMetaTypes, 'parentTypeID')
invcontrabandtypes = self.LoadBulk(None, const.cacheInvContrabandTypes)

npccharacters = self.LoadBulkIndex(None, const.cacheChrNpcCharacters, 'characterID')

self.regions = self.LoadBulkIndex('regions', const.cacheMapRegionsTable, 'regionID', Region)
self.constellations = self.LoadBulkIndex('constellations', const.cacheMapConstellationsTable, 'constellationID', Constellation)
self.solarsystems = self.LoadBulkIndex('solarsystems', const.cacheMapSolarSystemsTable, 'solarSystemID', SolarSystem)
self.stations = self.LoadBulk('stations', const.cacheStaStationsStatic, Recordset(sys.Row, 'stationID', 'GetStationEx', 'GetMultiStationEx'))

self.messages = self.LoadBulkIndex('messages', const.cacheEveMessages, 'messageKey')
self.graphics = self.LoadBulkIndex('graphics', const.cacheResGraphics, 'graphicID')
self.icons = self.LoadBulkIndex('icons', const.cacheResIcons, 'iconID')
self.sounds = self.LoadBulkIndex('sounds', const.cacheResSounds, 'soundID')
self.detailMeshes = self.LoadBulkIndex('detailMeshes', const.cacheResDetailMeshes, 'detailGraphicID')
self.detailMeshesByTarget = self.LoadBulkFilter('detailMeshesByTarget', const.cacheResDetailMeshes, 'targetGraphicID')
self._worldspacesDistrictsCache = {}
self.worldspaces = self.LoadBulkIndex('worldspaces', const.cacheWorldSpaces, 'worldSpaceTypeID', sys.Worldspaces)
self.entitySpawns = self.LoadBulkIndex('entitySpawns', const.cacheEntitySpawns, 'spawnID')
self.entitySpawnsByWorldSpaceID = self.LoadBulkFilter('entitySpawnsByWorldSpaceID', const.cacheEntitySpawns, 'worldSpaceTypeID')
self.entitySpawnsByRecipeID = self.LoadBulkFilter('entitySpawnsByRecipeID', const.cacheEntitySpawns, 'recipeID')
self.entityIngredientInitialValues = self.LoadBulkFilter('entityIngredientInitialValues', const.cacheEntityIngredientInitialValues, 'ingredientID')
self.entityIngredientsByParentID = self.LoadBulkFilter('entityIngredientsByParentID', const.cacheEntityIngredients, 'parentID')
self.entityIngredientsByRecipeID = self.LoadBulkFilter('entityIngredientsByRecipeID', const.cacheEntityIngredients, 'recipeID')
self.ingredients = self.LoadBulkIndex('ingredients', const.cacheEntityIngredients, 'ingredientID')
self.entitySpawnGroups = self.LoadBulkIndex('entitySpawnGroups', const.cacheEntitySpawnGroups, 'spawnGroupID')
self.entitySpawnsBySpawnGroup = self.LoadBulkFilter('entitySpawnsBySpawnGroup', const.cacheEntitySpawnGroupLinks, 'spawnGroupID')
self.recipes = self.LoadBulkIndex('recipes', const.cacheEntityRecipes, 'recipeID')
self.recipesByParentRecipeID = self.LoadBulkFilter('recipesByParentRecipeID', const.cacheEntityRecipes, 'parentRecipeID')
self.treeNodes = self.LoadBulkIndex('treeNodes', const.cacheTreeNodes, 'treeNodeID')
self.treeLinks = self.LoadBulkFilter('treeLinks', const.cacheTreeLinks, 'parentTreeNodeID')
self.treeNodeProperties = self.LoadBulkIndex('treeNodeProperties', const.cacheTreeProperties, 'propertyID')
self.actionTreeSteps = self.LoadBulkFilter('actionTreeSteps', const.cacheActionTreeSteps, 'actionID')
self.actionTreeProcs = self.LoadBulkFilter('actionTreeProcs', const.cacheActionTreeProcs, 'actionID')
self.actionObjects = self.LoadBulkIndex('actionObjects', const.cacheActionObjects, 'actionObjectID')
self.actionStations = self.LoadBulkIndex('actionStations', const.cacheActionStations, 'actionStationTypeID')
self.actionStationActions = self.LoadBulkFilter('actionStationActions', const.cacheActionStationActions, 'actionStationTypeID')
self.actionObjectStations = self.LoadBulkFilter('actionObjectStations', const.cacheActionObjectStations, 'actionObjectID')
self.actionObjectExits = self.LoadBulkFilter('actionObjectExits', const.cacheActionObjectExits, ['actionObjectID', 'actionStationInstanceID', True])
self.paperdollModifierLocations = self.LoadBulkIndex('paperdollModifierLocations', const.cachePaperdollModifierLocations, 'modifierLocationID')
self.paperdollResources = self.LoadBulkIndex('paperdollResources', const.cachePaperdollResources, 'paperdollResourceID')
self.paperdollSculptingLocations = self.LoadBulkIndex('paperdollSculptingLocations', const.cachePaperdollSculptingLocations, 'sculptLocationID')
self.paperdollColors = self.LoadBulkIndex('paperdollColors', const.cachePaperdollColors, 'colorID')
self.paperdollColorNames = self.LoadBulkIndex('paperdollColorNames', const.cachePaperdollColorNames, 'colorNameID')
self.paperdollColorRestrictions = self.LoadBulkFilter('paperdollColorRestrictions', const.cachePaperdollColorRestrictions, 'colorNameID')
self.perceptionSenses = self.LoadBulkIndex('perceptionSenses', const.cachePerceptionSenses, 'senseID')
self.perceptionStimTypes = self.LoadBulkIndex('perceptionStimTypes', const.cachePerceptionStimTypes, 'stimTypeID')
self.perceptionSubjects = self.LoadBulkIndex('perceptionSubjects', const.cachePerceptionSubjects, 'subjectID')
self.perceptionTargets = self.LoadBulkIndex('perceptionTargets', const.cachePerceptionTargets, 'targetID')
self.perceptionBehaviorSenses = self.LoadBulk('perceptionBehaviorSenses', const.cachePerceptionBehaviorSenses)
self.perceptionBehaviorDecays = self.LoadBulk('perceptionBehaviorDecays', const.cachePerceptionBehaviorDecays)
self.perceptionBehaviorFilters = self.LoadBulk('perceptionBehaviorFilters', const.cachePerceptionBehaviorFilters)
self.encounters = self.LoadBulkIndex('encounters', const.cacheEncounterEncounters, 'encounterID')
self.encounterCoordinateSets = self.LoadBulkIndex('encounterCoordinateSets', const.cacheEncounterCoordinateSets, 'coordinateSetID')
self.encounterCoordinatesBySet = self.LoadBulkFilter('encounterCoordinatesBySet', const.cacheEncounterCoordinates, 'coordinateSetID')
self.encounterCoordinates = self.LoadBulkIndex('encounterCoordinates', const.cacheEncounterCoordinates, 'coordinateID')
self.encounterCoordinateSetsByWorldSpaceID = self.LoadBulkFilter('encounterCoordinateSetsByWorldSpaceID', const.cacheEncounterCoordinateSets, 'worldSpaceTypeID')
self.encountersByCoordinateSet = self.LoadBulkFilter('encountersByCoordinateSet', const.cacheEncounterEncounters, 'coordinateSetID')

Definition at line 103 of file BulkMgrService.cpp.

References m_dispatch, and PyCallable_REG_CALL.

106 : PyService(mgr, "bulkMgr"),
107  m_dispatch(new Dispatcher(this))
108 {
109  _SetCallDispatcher(m_dispatch);
110 
112  PyCallable_REG_CALL(BulkMgrService, UpdateBulk);
113  PyCallable_REG_CALL(BulkMgrService, GetVersion);
114  PyCallable_REG_CALL(BulkMgrService, GetFullFiles);
115  PyCallable_REG_CALL(BulkMgrService, GetAllBulkIDs);
116  PyCallable_REG_CALL(BulkMgrService, GetFullFilesChunk);
117  PyCallable_REG_CALL(BulkMgrService, GetUnsubmittedChunk);
118  PyCallable_REG_CALL(BulkMgrService, GetUnsubmittedChanges);
119 
120 }
Dispatcher *const m_dispatch
#define PyCallable_REG_CALL(c, m)
Definition: PyServiceCD.h:78