Bazaar developer reference

CvPlayerPolicies::Read(FDataStream &)

Defined in
CvPolicyClasses.cpp, line 2695
Class
CvPlayerPolicies
Hook name
CivHooks::CvPlayerPolicies_Read

Hooks

static bool BeforeCvPlayerPolicies_Read(CvPlayerPolicies* self, FDataStream& kStream);static void AfterCvPlayerPolicies_Read(CvPlayerPolicies* self, FDataStream& kStream);static void ReplaceCvPlayerPolicies_Read(void (*original)(CvPlayerPolicies*, FDataStream&), CvPlayerPolicies* self, FDataStream& kStream);CivRegisterBefore<CivHooks::CvPlayerPolicies_Read>(host, &BeforeCvPlayerPolicies_Read);CivRegisterAfter<CivHooks::CvPlayerPolicies_Read>(host, &AfterCvPlayerPolicies_Read);CivRegisterReplace<CivHooks::CvPlayerPolicies_Read>(host, &ReplaceCvPlayerPolicies_Read);

Code

2694/// Serialization read2695void CvPlayerPolicies::Read(FDataStream& kStream)2696{2697	// Version number to maintain backwards compatibility2698	uint uiVersion;2699	kStream >> uiVersion;2700	MOD_SERIALIZE_INIT_READ(kStream);27012702	CvAssertMsg(m_pPolicies != NULL && m_pPolicies->GetNumPolicies() > 0, "Number of policies to serialize is expected to greater than 0");27032704	uint uiPolicyCount = 0;2705	uint uiPolicyBranchCount = 0;2706	if(m_pPolicies)2707	{2708		uiPolicyCount = m_pPolicies->GetNumPolicies();2709		uiPolicyBranchCount = m_pPolicies->GetNumPolicyBranches();2710	}27112712#if defined(MOD_API_EXTENSIONS)2713	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_pabFreePolicy, uiPolicyCount);2714#endif2715	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_pabHasPolicy, uiPolicyCount);2716	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_pabHasOneShotPolicyFired, uiPolicyCount);2717	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_pabHaveOneShotFreeUnitsFired, uiPolicyCount);27182719	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_pabPolicyBranchUnlocked, uiPolicyBranchCount);2720	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_pabPolicyBranchBlocked, uiPolicyBranchCount);2721	CvInfosSerializationHelper::ReadHashedDataArray(kStream, m_pabPolicyBranchFinished, uiPolicyBranchCount);2722	CvInfosSerializationHelper::ReadHashedTypeArray(kStream, m_paePolicyBranchesChosen, uiPolicyBranchCount);27232724	kStream >> m_iNumExtraBranches;27252726	m_eBranchPicked1 = (PolicyBranchTypes)CvInfosSerializationHelper::ReadHashed(kStream);2727	m_eBranchPicked2 = (PolicyBranchTypes)CvInfosSerializationHelper::ReadHashed(kStream);2728	m_eBranchPicked3 = (PolicyBranchTypes)CvInfosSerializationHelper::ReadHashed(kStream);27292730	if (uiVersion < 2)2731	{2732		int temp;2733		kStream >> temp;  // m_iMaxEffectiveCities moved to player class2734	}27352736	// Now for AI2737	m_pPolicyAI->Read(kStream);27382739	CvAssertMsg(m_piLatestFlavorValues != NULL && GC.getNumFlavorTypes() > 0, "Number of flavor values to serialize is expected to greater than 0");27402741	int iNumFlavors;2742	kStream >> iNumFlavors;27432744	ArrayWrapper<int> wrapm_piLatestFlavorValues(iNumFlavors, m_piLatestFlavorValues);2745	kStream >> wrapm_piLatestFlavorValues;2746}

Calls

Called by