void CObjectOStream::WriteChoiceVariant(const CConstObjectInfoCV& object) { const CVariantInfo* variantInfo = object.GetVariantInfo(); TConstObjectPtr choicePtr = object.GetChoiceObject().GetObjectPtr(); variantInfo->DefaultWriteVariant(*this, choicePtr); }
void CWriteChoiceVariantHook::CustomWrite(CObjectOStream& out, const CConstObjectInfoCV& variant, const CConstObjectInfo& custom_object) { out.WriteExternalObject(custom_object.GetObjectPtr(), variant.GetVariantInfo()->GetTypeInfo()); }