Bazaar developer reference

CvWonderProductionAI::Write(FDataStream &) const

Defined in
CvWonderProductionAI.cpp, line 125
Class
CvWonderProductionAI
Hook name
CivHooks::CvWonderProductionAI_Write

Hooks

static bool BeforeCvWonderProductionAI_Write(const CvWonderProductionAI* self, FDataStream& kStream);static void AfterCvWonderProductionAI_Write(const CvWonderProductionAI* self, FDataStream& kStream);static void ReplaceCvWonderProductionAI_Write(void (*original)(const CvWonderProductionAI*, FDataStream&), const CvWonderProductionAI* self, FDataStream& kStream);CivRegisterBefore<CivHooks::CvWonderProductionAI_Write>(host, &BeforeCvWonderProductionAI_Write);CivRegisterAfter<CivHooks::CvWonderProductionAI_Write>(host, &AfterCvWonderProductionAI_Write);CivRegisterReplace<CivHooks::CvWonderProductionAI_Write>(host, &ReplaceCvWonderProductionAI_Write);

Code

124/// Serialization write125void CvWonderProductionAI::Write(FDataStream& kStream) const126{127	// Current version number128	uint uiVersion = 1;129	kStream << uiVersion;130	MOD_SERIALIZE_INIT_WRITE(kStream);131132	CvAssertMsg(m_piLatestFlavorValues != NULL && GC.getNumFlavorTypes() > 0, "Number of flavor values to serialize is expected to greater than 0");133	kStream << GC.getNumFlavorTypes();134	kStream << ArrayWrapper<int>(GC.getNumFlavorTypes(), m_piLatestFlavorValues);135136	if(m_pBuildings)137	{138		int iNumBuildings = m_pBuildings->GetNumBuildings();139		kStream << iNumBuildings;140141		// Loop through writing each entry142		for(int iI = 0; iI < iNumBuildings; iI++)143		{144			const BuildingTypes eBuilding = static_cast<BuildingTypes>(iI);145			CvBuildingEntry* pkBuildingInfo = GC.getBuildingInfo(eBuilding);146			if(pkBuildingInfo)147			{148				CvInfosSerializationHelper::WriteHashed(kStream, pkBuildingInfo);149				kStream << m_WonderAIWeights.GetWeight(iI);150			}151			else152			{153				kStream << (int)0;154			}155		}156	}157	else158	{159		CvAssertMsg(m_pBuildings != NULL, "Wonder Production AI init failure: building entries are NULL");160	}161}

Calls

Called by