Bazaar developer reference

CvPolicyAI::Write(FDataStream &)

Defined in
CvPolicyAI.cpp, line 88
Class
CvPolicyAI
Hook name
CivHooks::CvPolicyAI_Write

Hooks

static bool BeforeCvPolicyAI_Write(CvPolicyAI* self, FDataStream& kStream);static void AfterCvPolicyAI_Write(CvPolicyAI* self, FDataStream& kStream);static void ReplaceCvPolicyAI_Write(void (*original)(CvPolicyAI*, FDataStream&), CvPolicyAI* self, FDataStream& kStream);CivRegisterBefore<CivHooks::CvPolicyAI_Write>(host, &BeforeCvPolicyAI_Write);CivRegisterAfter<CivHooks::CvPolicyAI_Write>(host, &AfterCvPolicyAI_Write);CivRegisterReplace<CivHooks::CvPolicyAI_Write>(host, &ReplaceCvPolicyAI_Write);

Code

87/// Serialization write88void CvPolicyAI::Write(FDataStream& kStream)89{90	// Current version number91	uint uiVersion = 1;92	kStream << uiVersion;93	MOD_SERIALIZE_INIT_WRITE(kStream);9495	CvAssertMsg(m_pCurrentPolicies->GetPolicies() != NULL, "Policy AI serialization failure: no policy data");96	CvAssertMsg(m_pCurrentPolicies->GetPolicies()->GetNumPolicies() > 0, "Policy AI serialization failure: number of policies not greater than 0");9798	// Loop through writing each entry99	uint uiPolicyCount = m_pCurrentPolicies->GetPolicies()->GetNumPolicies();100	kStream << uiPolicyCount;101102	for(int i = 0; i < m_pCurrentPolicies->GetPolicies()->GetNumPolicies(); i++)103	{104		CvInfosSerializationHelper::WriteHashed(kStream, static_cast<const PolicyTypes>(i));105		kStream << m_PolicyAIWeights.GetWeight(i);106	}107}

Calls

Called by