Bazaar developer reference

CvPlayerPolicies::Write(FDataStream &) const

Defined in
CvPolicyClasses.cpp, line 2749
Class
CvPlayerPolicies
Hook name
CivHooks::CvPlayerPolicies_Write

Hooks

static bool BeforeCvPlayerPolicies_Write(const CvPlayerPolicies* self, FDataStream& kStream);static void AfterCvPlayerPolicies_Write(const CvPlayerPolicies* self, FDataStream& kStream);static void ReplaceCvPlayerPolicies_Write(void (*original)(const CvPlayerPolicies*, FDataStream&), const CvPlayerPolicies* self, FDataStream& kStream);CivRegisterBefore<CivHooks::CvPlayerPolicies_Write>(host, &BeforeCvPlayerPolicies_Write);CivRegisterAfter<CivHooks::CvPlayerPolicies_Write>(host, &AfterCvPlayerPolicies_Write);CivRegisterReplace<CivHooks::CvPlayerPolicies_Write>(host, &ReplaceCvPlayerPolicies_Write);

Code

2748/// Serialization write2749void CvPlayerPolicies::Write(FDataStream& kStream) const2750{2751	// Current version number2752	uint uiVersion = 2;2753	kStream << uiVersion;2754	MOD_SERIALIZE_INIT_WRITE(kStream);27552756	CvAssertMsg(m_pPolicies != NULL && GC.getNumPolicyInfos() > 0, "Number of policies to serialize is expected to greater than 0");27572758	uint uiPolicyCount = 0;2759	uint uiPolicyBranchCount = 0;2760	if(m_pPolicies)2761	{2762		uiPolicyCount = m_pPolicies->GetNumPolicies();2763		uiPolicyBranchCount = m_pPolicies->GetNumPolicyBranches();2764	}27652766#if defined(MOD_API_EXTENSIONS)2767	CvInfosSerializationHelper::WriteHashedDataArray<PolicyTypes>(kStream, m_pabFreePolicy, uiPolicyCount);2768#endif2769	CvInfosSerializationHelper::WriteHashedDataArray<PolicyTypes>(kStream, m_pabHasPolicy, uiPolicyCount);2770	CvInfosSerializationHelper::WriteHashedDataArray<PolicyTypes>(kStream, m_pabHasOneShotPolicyFired, uiPolicyCount);2771	CvInfosSerializationHelper::WriteHashedDataArray<PolicyTypes>(kStream, m_pabHaveOneShotFreeUnitsFired, uiPolicyCount);27722773	CvInfosSerializationHelper::WriteHashedDataArray<PolicyBranchTypes>(kStream, m_pabPolicyBranchUnlocked, uiPolicyBranchCount);2774	CvInfosSerializationHelper::WriteHashedDataArray<PolicyBranchTypes>(kStream, m_pabPolicyBranchBlocked, uiPolicyBranchCount);2775	CvInfosSerializationHelper::WriteHashedDataArray<PolicyBranchTypes>(kStream, m_pabPolicyBranchFinished, uiPolicyBranchCount);2776	CvInfosSerializationHelper::WriteHashedTypeArray<PolicyBranchTypes>(kStream, m_paePolicyBranchesChosen, uiPolicyBranchCount);27772778	kStream << m_iNumExtraBranches;27792780	CvInfosSerializationHelper::WriteHashed(kStream, m_eBranchPicked1);2781	CvInfosSerializationHelper::WriteHashed(kStream, m_eBranchPicked2);2782	CvInfosSerializationHelper::WriteHashed(kStream, m_eBranchPicked3);27832784	// Now for AI2785	m_pPolicyAI->Write(kStream);27862787	CvAssertMsg(m_piLatestFlavorValues != NULL && GC.getNumFlavorTypes() > 0, "Number of flavor values to serialize is expected to greater than 0");2788	kStream << GC.getNumFlavorTypes();2789	kStream << ArrayWrapper<int>(GC.getNumFlavorTypes(), m_piLatestFlavorValues);2790}

Calls

Called by