PC Stable Documentation
 
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Loading...
Searching...
No Matches
Serializer Class Reference

Serialization general interface. Serializer API works with: More...

Private Member Functions

proto bool Write (void value_out)
 
proto bool Read (void value_in)
 
proto native bool CanWrite ()
 
proto native bool CanRead ()
 
protected void Serializer ()
 
protected void ~Serializer ()
 

Detailed Description

Serialization general interface. Serializer API works with:

  • primitive types: int, float, string, bool, vector
  • dynamic containers: array, set, map
  • static arrays
  • complex types: classes
    Note
    Serializer provides deep serialization (it serialize class memebers and their members etc). To avoid serialization of certain class variable, use NonSerialized attribute.
    usage:
    class MyData
    {
    int m_id;
    autoptr map<string, float> m_values;
    string m_dbg; // I don't want to serialize this variable
    }
    {
    int statArray[4] = {6,9,2,3};
    array<int> dynArray = {8,5,6,4};
    autoptr MyData data = new MyData();
    data.m_id = 965;
    data.m_values = map<string, float>;
    data.m_values.Insert("value1", 5.98);
    data.m_values.Insert("value2", 4.36);
    s.Write(10);
    s.Write("Hello");
    s.Write(statArray);
    s.Write(dynArray);
    s.Write(data);
    }
    {
    int statArray[4];
    array<int> dynArray;
    MyData data;
    int someInt;
    string someString;
    s.Read(someInt);
    s.Read(someString);
    s.Read(statArray);
    s.Read(dynArray);
    s.Read(data);
    }
    void Deserialize()
    Definition Inventory.c:208
    void Serialize()
    Definition Inventory.c:201
    map
    Definition ControlsXboxNew.c:4
    TODO doc.
    Definition EnScript.c:123
    Serialization general interface. Serializer API works with:
    Definition Serializer.c:56
    proto bool Write(void value_out)
    proto bool Read(void value_in)
    Result for an object found in CGame.IsBoxCollidingGeometryProxy.
    Definition IsBoxCollidingGeometryProxyClasses.c:28

Constructor & Destructor Documentation

◆ Serializer()

protected void Serializer ( )
inlineprivate

◆ ~Serializer()

protected void ~Serializer ( )
inlineprivate

Member Function Documentation

◆ CanRead()

proto native bool CanRead ( )
private

◆ CanWrite()

proto native bool CanWrite ( )
private

Referenced by ProcessInputData().

◆ Read()

proto bool Read ( void  value_in)
private

Referenced by CreateHandEventFromContext(), CreateWeaponEventFromContext(), MenuDefaultCharacterData::DeserializeCharacterData(), Param::Deserializer(), Param7< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7 >::Deserializer(), Param8< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7, Class T8 >::Deserializer(), Param9< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7, Class T8, Class T9 >::Deserializer(), Param10< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7, Class T8, Class T9, Class T10 >::Deserializer(), SyncEvents::Event_OnRPC(), FillAgentArray(), FillServerFinalVars(), PluginBase::GetRPCModifierID(), PluginBase::GetRPCModifierLock(), PluginBase::GetRPCUpdateState(), ManBase::HandleRemoteItemManipulation(), PluginBase::HandleSetTime(), ArrowManagerPlayer::Load(), InventoryItem::LoadAgents(), HFSMBase< WeaponStateBase, WeaponEventBase, WeaponActionBase, WeaponGuardBase >::LoadAndSetCurrentFSMState(), WeaponStateBase::LoadCurrentFSMState(), LoadCurrentFSMState(), Entity::LoadVariables(), OnHandleStoredInputUserData(), OnHandleStoredJunctureData(), DayZPlayer::OnInputForRemote(), DayZPlayer::OnInputFromServer(), OnInputUserDataProcess(), ActionManagerServer::OnInputUserDataProcess(), WeaponManager::OnInputUserDataProcess(), DayZPlayer::OnInputUserDataProcess(), ManBase::OnInputUserDataProcess(), DayZPlayer::OnInputUserDataReceived(), OnInventoryJunctureFailureFromServer(), OnInventoryJunctureFromServer(), SymptomManager::OnRPC(), CfgGameplayHandler::OnRPC(), OnRPC(), CfgPlayerRestrictedAreaHandler::OnRPC(), UndergroundAreaLoader::OnRPC(), OnRPC(), Managed::OnRPC(), PluginBase::OnRPC(), PluginBase::OnRPC(), PluginBase::OnRPC(), Entity::OnRPC(), WrittenNoteData::OnRPC(), InventoryItemSuper::OnRPC(), InventoryItem::OnRPC(), OnRPC(), Backpack_Base::OnRPC(), ManBase::OnRPC(), Trigger::OnRPC(), CGame::OnRPC(), PluginBase::OnRPCAgents(), ScriptConsoleEnfScriptTab::OnRPCEx(), ScriptConsoleGeneralTab::OnRPCEx(), DebugMonitorValues::OnRPCFloat(), PluginBase::OnRPCHealth(), PluginBase::OnRPCHealthSet(), PluginBase::OnRPCHorticultUpdate(), PluginBase::OnRPCHorticultureSpeed(), PluginBase::OnRPCLevels(), PluginBase::OnRPCMods(), PluginBase::OnRPCModsDetailed(), PluginBase::OnRPCServerLogRecieved(), DeveloperTeleport::OnRPCSetPlayerDirection(), DeveloperTeleport::OnRPCSetPlayerPosition(), PluginBase::OnRPCSpawnEntity(), PluginBase::OnRPCSpawnEntityOnCursorDir(), PluginBase::OnRPCSpawnEntityOnGround(), PluginBase::OnRPCSpawnEntityOnGroundPatternGrid(), PluginBase::OnRPCStats(), PluginBase::OnRPCStatSet(), PluginBase::OnRPCStomach(), DebugMonitorValues::OnRPCString(), PluginBase::OnRPCSyncSceneObject(), PluginBase::OnRPCTemp(), GameInventory::OnServerInventoryCommandStatic(), OnSetEntityRequest(), OnSetEntityRPC(), OnStoreLoad(), Entity::OnStoreLoad(), RemotelyActivatedItemBehaviour::OnStoreLoad(), BleedingSourcesManagerBase::OnStoreLoad(), OnStoreLoad(), SymptomManager::OnStoreLoad(), PlayerAgentPool::OnStoreLoad(), Land_Radio_PanelBig::OnStoreLoad(), PowerGeneratorStatic::OnStoreLoad(), InventoryItemSuper::OnStoreLoad(), ItemOptics::OnStoreLoad(), Weapon::OnStoreLoad(), HFSMBase< WeaponStateBase, WeaponEventBase, WeaponActionBase, WeaponGuardBase >::OnStoreLoad(), ItemBase::OnStoreLoad(), InventoryItem::OnStoreLoad(), Barrel_ColorBase::OnStoreLoad(), BaseBuildingBase::OnStoreLoad(), ContainerLockedBase::OnStoreLoad(), Edible_Base::OnStoreLoad(), FireplaceBase::OnStoreLoad(), FireplaceIndoor::OnStoreLoad(), AlarmClock_ColorBase::OnStoreLoad(), FireworksLauncher::OnStoreLoad(), KitchenTimer::OnStoreLoad(), Grenade_Base::OnStoreLoad(), Inventory_Base::OnStoreLoad(), Roadflare::OnStoreLoad(), ScientificBriefcase::OnStoreLoad(), FlammableBase::OnStoreLoad(), ItemTransmitter::OnStoreLoad(), ManBase::OnStoreLoad(), OnStoreLoadCustom(), ManBase::OnStoreLoadLifespan(), OnSyncJuncture(), StaminaHandler::OnSyncJuncture(), WeaponManager::OnSyncJuncture(), InventoryItem::OnSyncVariables(), ProcessInputData(), StaminaHandler::ReadAdditionalStaminaInfo(), DayZPlayerSyncJunctures::ReadBrokenLegsParams(), DayZPlayerSyncJunctures::ReadBrokenLegsParamsEx(), DayZPlayerSyncJunctures::ReadDamageHitParams(), DayZPlayerSyncJunctures::ReadDamageHitParamsEx(), DayZPlayerSyncJunctures::ReadDeathParams(), HandEventRemove::ReadFromContext(), HandEventBase::ReadFromContext(), InventoryLocation::ReadFromContext(), ActionBase::ReadFromContext(), ActionBuildPart::ReadFromContext(), ReadFromContext(), ActionFishingNew::ReadFromContext(), ActionMountBarbedWire::ReadFromContext(), ActionRepairCarPart::ReadFromContext(), ActionRepairPart::ReadFromContext(), ActionRepairTent::ReadFromContext(), ActionRepairTentPart::ReadFromContext(), ActionRepairVehiclePartBase::ReadFromContext(), ActionTransferLiquid::ReadFromContext(), ActionWorldCraft::ReadFromContext(), ActionCarHornLong::ReadFromContext(), ActionBuildShelter::ReadFromContext(), ActionGetOutTransport::ReadFromContext(), DayZPlayerSyncJunctures::ReadInjuryParams(), DayZPlayerSyncJunctures::ReadKuruRequest(), ManBase::ReadLiftWeaponRequest(), DayZPlayerSyncJunctures::ReadPlayerFBModifier(), DayZPlayerSyncJunctures::ReadPlayerSymptomADDParams(), DayZPlayerSyncJunctures::ReadPlayerSymptomFBParams(), DayZPlayerSyncJunctures::ReadPlayerUnconsciousnessParams(), DayZPlayerSyncJunctures::ReadShockParams(), Entity::ReadVarsFromCTX(), InventoryItem::ReadVarsFromCTX(), PlayerAgentPool::RemoteGrowRequestDebug(), SymptomManager::SetAnimation(), ManBase::SetLiftWeapon(), ManBase::SetToDelete(), SyncReceiveActivateCommand(), SyncReceiveInitDebugObject(), SyncReceiveMessage(), SyncReceiveValueBool(), SyncReceiveValueFloat(), and SyncReceiveValueInt().

◆ Write()

proto bool Write ( void  value_out)
private

Referenced by ActionManagerClient::ActionStart(), InventoryItem::CombineItemsClient(), HandEvent(), ActionBaseCB::Interrupt(), OnlineServices::MutePlayer(), OnInputUserDataProcess(), InventoryItem::OnRightClick(), Entity::OnStoreSave(), RemotelyActivatedItemBehaviour::OnStoreSave(), BleedingSourcesManagerBase::OnStoreSave(), OnStoreSave(), SymptomManager::OnStoreSave(), PlayerAgentPool::OnStoreSave(), Land_Radio_PanelBig::OnStoreSave(), PowerGeneratorStatic::OnStoreSave(), InventoryItemSuper::OnStoreSave(), ItemOptics::OnStoreSave(), Weapon::OnStoreSave(), HFSMBase< WeaponStateBase, WeaponEventBase, WeaponActionBase, WeaponGuardBase >::OnStoreSave(), ItemBase::OnStoreSave(), InventoryItem::OnStoreSave(), Barrel_ColorBase::OnStoreSave(), BaseBuildingBase::OnStoreSave(), ContainerLockedBase::OnStoreSave(), Edible_Base::OnStoreSave(), FireplaceBase::OnStoreSave(), FireplaceIndoor::OnStoreSave(), AlarmClock_ColorBase::OnStoreSave(), FireworksLauncher::OnStoreSave(), KitchenTimer::OnStoreSave(), Grenade_Base::OnStoreSave(), Inventory_Base::OnStoreSave(), Roadflare::OnStoreSave(), ScientificBriefcase::OnStoreSave(), FlammableBase::OnStoreSave(), ItemTransmitter::OnStoreSave(), ManBase::OnStoreSave(), OnStoreSaveCustom(), ManBase::OnStoreSaveLifespan(), PostSurrenderRequestServer(), ActionManagerClient::ProcessActionInputEnd(), ActionManagerClient::ProcessActionRequestEnd(), ManBase::ProcessADSSyncResetRequest(), ProcessInputData(), ActionManagerClient::RequestInterruptAction(), RequestPlayerInfo(), PluginBase::RequestUniversalTemperatureSources(), ArrowManagerPlayer::Save(), InventoryItem::SaveAgents(), ManBase::SaveAreaPersistenceFlag(), WeaponStateBase::SaveCurrentFSMState(), SaveCurrentFSMState(), HFSMBase< WeaponStateBase, WeaponEventBase, WeaponActionBase, WeaponGuardBase >::SaveCurrentFSMState(), HFSMBase< WeaponStateBase, WeaponEventBase, WeaponActionBase, WeaponGuardBase >::SaveCurrentUnstableFSMState(), Entity::SaveVariables(), DayZPlayerSyncJunctures::SendActionAcknowledgment(), DayZPlayerSyncJunctures::SendBrokenLegs(), DayZPlayerSyncJunctures::SendBrokenLegsEx(), DayZPlayerSyncJunctures::SendDamageHit(), DayZPlayerSyncJunctures::SendDamageHitEx(), DayZPlayerSyncJunctures::SendDeath(), PluginBase::SendDebug(), DayZPlayerSyncJunctures::SendDeleteItem(), SendEmoteRequestSync(), DayZPlayerSyncJunctures::SendInjury(), DayZPlayerSyncJunctures::SendKuruRequest(), ManBase::SendLiftWeaponSync(), MissionBase::SendMuteListToServer(), NotificationSystem::SendNotificationToPlayerIdentity(), NotificationSystem::SendNotificationToPlayerIdentityExtended(), DayZPlayerSyncJunctures::SendPlayerFBModifier(), DayZPlayerSyncJunctures::SendPlayerSymptomADD(), DayZPlayerSyncJunctures::SendPlayerSymptomFB(), DayZPlayerSyncJunctures::SendPlayerUnconsciousness(), DayZPlayerSyncJunctures::SendQuickbarSetShortcut(), SendRPC(), DayZPlayerSyncJunctures::SendShock(), DayZPlayerSyncJunctures::SendWeaponActionAcknowledgment(), DayZPlayerSyncJunctures::SendWeaponJamChance(), Param::Serialize(), Param7< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7 >::Serialize(), Param8< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7, Class T8 >::Serialize(), Param9< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7, Class T8, Class T9 >::Serialize(), Param10< Class T1, Class T2, Class T3, Class T4, Class T5, Class T6, Class T7, Class T8, Class T9, Class T10 >::Serialize(), MenuDefaultCharacterData::SerializeCharacterData(), InventoryInputUserData::SerializeHandEvent(), InventoryInputUserData::SerializeMove(), InventoryInputUserData::SerializeSwap(), ServerRequestEmoteCancel(), SetEntityShortcut(), ScriptConsoleItemsTab::SpawnPreset(), InventoryItem::SplitIntoStackMaxCargoClient(), InventoryItem::SplitIntoStackMaxClient(), InventoryItem::SplitIntoStackMaxHandsClient(), InventoryItem::SplitIntoStackMaxToInventoryLocationClient(), StaminaHandler::SyncAdditionalStaminaInfo(), Weapon::SyncEventToRemote(), SyncHandEventToRemote(), WeaponManager::Synchronize(), MissionBase::SyncRespawnModeInfo(), StaminaHandler::SyncStamina(), ManBase::TogglePlacingLocal(), VicinityContainer::TraverseShowedItems(), HumanInventory::Update(), Update(), WriteToContext(), HandEventRemove::WriteToContext(), HandEventBase::WriteToContext(), InventoryLocation::WriteToContext(), WeaponEventBase::WriteToContext(), ActionBase::WriteToContext(), ActionBuildPart::WriteToContext(), WriteToContext(), ActionFishingNew::WriteToContext(), ActionMountBarbedWire::WriteToContext(), ActionRepairCarPart::WriteToContext(), ActionRepairPart::WriteToContext(), ActionRepairTent::WriteToContext(), ActionRepairTentPart::WriteToContext(), ActionRepairVehiclePartBase::WriteToContext(), ActionTransferLiquid::WriteToContext(), ActionWorldCraft::WriteToContext(), ActionCarHornLong::WriteToContext(), ActionBuildShelter::WriteToContext(), ActionGetOutTransport::WriteToContext(), Entity::WriteVarsToCTX(), and InventoryItem::WriteVarsToCTX().


The documentation for this class was generated from the following file: