class SerializerSource
Serializer › Managed
Derived classes
All members, including inherited
Serialization general interface. Serializer API works with: - primitive types: int, float, string, bool, vector - dynamic containers: array, set, map - static arrays - complex types: classes
NoteSerializer provides deep serialization (it serialize class memebers and their members etc). To avoid serialization of certain class variable, use NonSerialized attribute. \par usage:
class MyData
{
int m_id;
autoptr map<string, float> m_values;
[NonSerialized()]
string m_dbg; // I don't want to serialize this variable
}
void Serialize(Serializer s)
{
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);
}
void Deserialize(Serializer s)
{
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);
}
Constructors 2
protected void Serializer()protected void ~Serializer()Methods 4
proto bool Write(void value_out)Referenced by OptionalLocationWriteToContext(), ActionBase.WriteToContext(), ActionBaseCB.Interrupt(), and 191 more
proto bool Read(void value_in)Referenced by CreateWeaponEventFromContext(), OptionalLocationReadFromContext(), ActionBase.ReadFromContext(), and 241 more
proto native bool CanWrite()Referenced by DayZPlayerInventory.ProcessInputData()
proto native bool CanRead()