CvDllDatabaseUtility::ValidatePrefetchProcess()
- Defined in
- CvDllDatabaseUtility.cpp, line 626
- Class
- CvDllDatabaseUtility
- Hook name
CivHooks::CvDllDatabaseUtility_ValidatePrefetchProcess
Hooks
static bool BeforeCvDllDatabaseUtility_ValidatePrefetchProcess(CvDllDatabaseUtility* self, bool& result);static void AfterCvDllDatabaseUtility_ValidatePrefetchProcess(CvDllDatabaseUtility* self, bool& result);static bool ReplaceCvDllDatabaseUtility_ValidatePrefetchProcess(bool (*original)(CvDllDatabaseUtility*), CvDllDatabaseUtility* self);// CivHooks.h gives this hook point no types, so nothing checks these hooks' parameters.host->RegisterHook(host->pluginIndex, CivHooks::CvDllDatabaseUtility_ValidatePrefetchProcess::ID, CIV_HOOK_BEFORE, (void*)&BeforeCvDllDatabaseUtility_ValidatePrefetchProcess);host->RegisterHook(host->pluginIndex, CivHooks::CvDllDatabaseUtility_ValidatePrefetchProcess::ID, CIV_HOOK_AFTER, (void*)&AfterCvDllDatabaseUtility_ValidatePrefetchProcess);host->RegisterHook(host->pluginIndex, CivHooks::CvDllDatabaseUtility_ValidatePrefetchProcess::ID, CIV_HOOK_REPLACE, (void*)&ReplaceCvDllDatabaseUtility_ValidatePrefetchProcess);
Code
626bool CvDllDatabaseUtility::ValidatePrefetchProcess()627{628 bool bError = false;629 CvGlobals& gc = GC;630631 LogMsg("**** Validating Prefetch Process *****");632 ValidateVectorSize(getNumWorldInfos);633 ValidateVectorSize(getNumClimateInfos);634 ValidateVectorSize(getNumSeaLevelInfos);635 ValidateVectorSize(GetNumColorInfos);636 ValidateVectorSize(GetNumPlayerColorInfos);637 ValidateVectorSize(getNumEntityEventInfos);638 ValidateVectorSize(getNumMultiUnitFormationInfos);639#if defined(MOD_API_PLOT_YIELDS)640 if (MOD_API_PLOT_YIELDS) {641 ValidateVectorSize(getNumPlotInfos);642 }643#endif644 ValidateVectorSize(getNumTerrainInfos);645 ValidateVectorSize(getNumResourceClassInfos);646 ValidateVectorSize(getNumResourceInfos);647 ValidateVectorSize(getNumFeatureInfos);648 ValidateVectorSize(getNumCivilizationInfos);649 ValidateVectorSize(getNumMinorCivInfos);650#if defined(MOD_EVENTS_QUESTS)651 if (MOD_EVENTS_QUESTS) {652 ValidateVectorSize(getNumQuestInfos);653 }654#endif655 ValidateVectorSize(getNumLeaderHeadInfos);656 ValidateVectorSize(getNumTraitInfos);657 ValidateVectorSize(getNumUnitInfos);658 ValidateVectorSize(getNumSpecialUnitInfos);659 ValidateVectorSize(getNumVoteSourceInfos);660 ValidateVectorSize(getNumUnitCombatClassInfos);661662 ValidateCount(gc.getUnitAIInfo().size);663664665 ValidateVectorSize(getNumGameOptionInfos);666 ValidateVectorSize(getNumMPOptionInfos);667668 ValidateCount(gc.getPlayerOptionInfo().size);669 ValidateCount(gc.getYieldInfo().size);670671 ValidateVectorSize(getNumRouteInfos);672 ValidateVectorSize(getNumImprovementInfos);673 ValidateVectorSize(getNumBuildInfos);674 ValidateVectorSize(getNumHandicapInfos);675 ValidateVectorSize(getNumGameSpeedInfos);676 ValidateVectorSize(getNumProcessInfos);677 ValidateVectorSize(getNumVoteInfos);678 ValidateVectorSize(getNumProjectInfos);679 ValidateVectorSize(getNumBuildingClassInfos);680 ValidateVectorSize(getNumBuildingInfos);681 ValidateVectorSize(getNumUnitClassInfos);682 //ValidateVectorSize(getNumActionInfos); //Action Infos are generated as a post process.683684#if defined(MOD_EVENTS_DIPLO_MODIFIERS)685 if (MOD_EVENTS_DIPLO_MODIFIERS) {686 ValidateVectorSize(getNumDiploModifierInfos);687 }688#endif689690 ValidateCount(gc.getMissionInfo().size);691 ValidateCount(gc.getControlInfo().size);692 ValidateCount(gc.getCommandInfo().size);693694 ValidateVectorSize(getNumAutomateInfos);695 ValidateVectorSize(getNumPromotionInfos);696 ValidateVectorSize(getNumSpecialistInfos);697 ValidateVectorSize(getNumEconomicAIStrategyInfos);698 ValidateVectorSize(getNumCitySpecializationInfos);699 ValidateVectorSize(getNumTacticalMoveInfos);700 ValidateVectorSize(getNumMilitaryAIStrategyInfos);701 ValidateVectorSize(getNumAIGrandStrategyInfos);702 ValidateVectorSize(getNumAICityStrategyInfos);703 ValidateVectorSize(getNumPolicyInfos);704 ValidateVectorSize(getNumPolicyBranchInfos);705 ValidateVectorSize(getNumTechInfos);706 ValidateVectorSize(getNumEraInfos);707 ValidateVectorSize(getNumHurryInfos);708 ValidateVectorSize(getNumEmphasisInfos);709 ValidateVectorSize(getNumVictoryInfos);710711 // The domains are a special case in that the contents must match a populated enum exactly.712#define ValidateDomain(domain) { CvDomainInfo* pkDomainInfo; if (GC.getNumUnitDomainInfos() <= (int)domain || (pkDomainInfo = GC.getUnitDomainInfo(domain)) == NULL || strcmp(pkDomainInfo->GetType(), #domain) != 0) bError = true; }713714 ValidateDomain(DOMAIN_SEA);715 ValidateDomain(DOMAIN_AIR);716 ValidateDomain(DOMAIN_LAND);717 ValidateDomain(DOMAIN_IMMOBILE);718 ValidateDomain(DOMAIN_HOVER);719720 if(bError)721 {722 LogMsg("**** VALIDATION FAILED *****");723 }724 else725 {726 LogMsg("**** Validation Success *****");727 }728729 return !bError;730}
Calls
- CustomMods::isAPI_PLOT_YIELDS()
- CustomMods::isEVENTS_DIPLO_MODIFIERS()
- CustomMods::isEVENTS_QUESTS()
- CvBaseInfo::GetType() const
- CvDllDatabaseUtility::LogMsg(const char *, ...) const
- CvGlobals::getCommandInfo()
- CvGlobals::getControlInfo()
- CvGlobals::getMissionInfo()
- CvGlobals::getNumAICityStrategyInfos()
- CvGlobals::getNumAIGrandStrategyInfos()
- CvGlobals::getNumAutomateInfos()
- CvGlobals::getNumBuildInfos()
- CvGlobals::getNumBuildingClassInfos()
- CvGlobals::getNumBuildingInfos()
- CvGlobals::getNumCitySpecializationInfos()
- CvGlobals::getNumCivilizationInfos()
- CvGlobals::getNumClimateInfos()
- CvGlobals::GetNumColorInfos()
- CvGlobals::getNumDiploModifierInfos()
- CvGlobals::getNumEconomicAIStrategyInfos()
- CvGlobals::getNumEmphasisInfos()
- CvGlobals::getNumEntityEventInfos()
- CvGlobals::getNumEraInfos()
- CvGlobals::getNumFeatureInfos()
- CvGlobals::getNumGameOptionInfos()
- CvGlobals::getNumGameSpeedInfos()
- CvGlobals::getNumHandicapInfos()
- CvGlobals::getNumHurryInfos()
- CvGlobals::getNumImprovementInfos()
- CvGlobals::getNumLeaderHeadInfos()
- CvGlobals::getNumMilitaryAIStrategyInfos()
- CvGlobals::getNumMinorCivInfos()
- CvGlobals::getNumMPOptionInfos()
- CvGlobals::getNumMultiUnitFormationInfos()
- CvGlobals::GetNumPlayerColorInfos()
- CvGlobals::getNumPlotInfos()
- CvGlobals::getNumPolicyBranchInfos()
- CvGlobals::getNumPolicyInfos()
- CvGlobals::getNumProcessInfos()
- CvGlobals::getNumProjectInfos()
- CvGlobals::getNumPromotionInfos()
- CvGlobals::getNumQuestInfos()
- CvGlobals::getNumResourceClassInfos()
- CvGlobals::getNumResourceInfos()
- CvGlobals::getNumRouteInfos()
- CvGlobals::getNumSeaLevelInfos()
- CvGlobals::getNumSpecialistInfos()
- CvGlobals::getNumSpecialUnitInfos()
- CvGlobals::getNumTacticalMoveInfos()
- CvGlobals::getNumTechInfos()
- CvGlobals::getNumTerrainInfos()
- CvGlobals::getNumTraitInfos()
- CvGlobals::getNumUnitClassInfos()
- CvGlobals::getNumUnitCombatClassInfos()
- CvGlobals::getNumUnitDomainInfos()
- CvGlobals::getNumUnitInfos()
- CvGlobals::getNumVictoryInfos()
- CvGlobals::getNumVoteInfos()
- CvGlobals::getNumVoteSourceInfos()
- CvGlobals::getNumWorldInfos()
- CvGlobals::getPlayerOptionInfo()
- CvGlobals::getUnitAIInfo()
- CvGlobals::getUnitDomainInfo(DomainTypes)
- CvGlobals::getYieldInfo()
std::vector::sizestd::vector::sizestd::vector::sizestd::vector::sizestd::vector::sizestd::vector::sizestrcmp