10 #ifndef K_API_SERIALIZER_H
11 #define K_API_SERIALIZER_H
900 #define kSerializer_WriteObject_(S, D) kxSerializer_WriteObject_(S, D)
901 #define kSerializer_ReadObject_(S, D, A) kxSerializer_ReadObject_(S, D, A)
903 #define kSerializer_WriteByte_(S, D) kxSerializer_WriteByte_(S, D)
904 #define kSerializer_WriteByteArray_(S, D, C) kxSerializer_WriteByteArray_(S, D, C)
905 #define kSerializer_ReadByte_(S, D) kxSerializer_ReadByte_(S, D)
906 #define kSerializer_ReadByteArray_(S, D, C) kxSerializer_ReadByteArray_(S, D, C)
908 #define kSerializer_WriteChar_(S, D) kxSerializer_WriteChar_(S, D)
909 #define kSerializer_WriteCharArray_(S, D, C) kxSerializer_WriteCharArray_(S, D, C)
910 #define kSerializer_ReadChar_(S, D) kxSerializer_ReadChar_(S, D)
911 #define kSerializer_ReadCharArray_(S, D, C) kxSerializer_ReadCharArray_(S, D, C)
913 #define kSerializer_Write8u_(S, D) kxSerializer_Write8u_(S, D)
914 #define kSerializer_Write8uArray_(S, D, C) kxSerializer_Write8uArray_(S, D, C)
915 #define kSerializer_Read8u_(S, D) kxSerializer_Read8u_(S, D)
916 #define kSerializer_Read8uArray_(S, D, C) kxSerializer_Read8uArray_(S, D, C)
918 #define kSerializer_Write8s_(S, D) kxSerializer_Write8s_(S, D)
919 #define kSerializer_Write8sArray_(S, D, C) kxSerializer_Write8sArray_(S, D, C)
920 #define kSerializer_Read8s_(S, D) kxSerializer_Read8s_(S, D)
921 #define kSerializer_Read8sArray_(S, D, C) kxSerializer_Read8sArray_(S, D, C)
923 #define kSerializer_Write16u_(S, D) kxSerializer_Write16u_(S, D)
924 #define kSerializer_Write16uArray_(S, D, C) kxSerializer_Write16uArray_(S, D, C)
925 #define kSerializer_Read16u_(S, D) kxSerializer_Read16u_(S, D)
926 #define kSerializer_Read16uArray_(S, D, C) kxSerializer_Read16uArray_(S, D, C)
928 #define kSerializer_Write16s_(S, D) kxSerializer_Write16s_(S, D)
929 #define kSerializer_Write16sArray_(S, D, C) kxSerializer_Write16sArray_(S, D, C)
930 #define kSerializer_Read16s_(S, D) kxSerializer_Read16s_(S, D)
931 #define kSerializer_Read16sArray_(S, D, C) kxSerializer_Read16sArray_(S, D, C)
933 #define kSerializer_Write32u_(S, D) kxSerializer_Write32u_(S, D)
934 #define kSerializer_Write32uArray_(S, D, C) kxSerializer_Write32uArray_(S, D, C)
935 #define kSerializer_Read32u_(S, D) kxSerializer_Read32u_(S, D)
936 #define kSerializer_Read32uArray_(S, D, C) kxSerializer_Read32uArray_(S, D, C)
938 #define kSerializer_Write32s_(S, D) kxSerializer_Write32s_(S, D)
939 #define kSerializer_Write32sArray_(S, D, C) kxSerializer_Write32sArray_(S, D, C)
940 #define kSerializer_Read32s_(S, D) kxSerializer_Read32s_(S, D)
941 #define kSerializer_Read32sArray_(S, D, C) kxSerializer_Read32sArray_(S, D, C)
943 #define kSerializer_Write64u_(S, D) kxSerializer_Write64u_(S, D)
944 #define kSerializer_Write64uArray_(S, D, C) kxSerializer_Write64uArray_(S, D, C)
945 #define kSerializer_Read64u_(S, D) kxSerializer_Read64u_(S, D)
946 #define kSerializer_Read64uArray_(S, D, C) kxSerializer_Read64uArray_(S, D, C)
948 #define kSerializer_Write64s_(S, D) kxSerializer_Write64s_(S, D)
949 #define kSerializer_Write64sArray_(S, D, C) kxSerializer_Write64sArray_(S, D, C)
950 #define kSerializer_Read64s_(S, D) kxSerializer_Read64s_(S, D)
951 #define kSerializer_Read64sArray_(S, D, C) kxSerializer_Read64sArray_(S, D, C)
953 #define kSerializer_Write32f_(S, D) kxSerializer_Write32f_(S, D)
954 #define kSerializer_Write32fArray_(S, D, C) kxSerializer_Write32fArray_(S, D, C)
955 #define kSerializer_Read32f_(S, D) kxSerializer_Read32f_(S, D)
956 #define kSerializer_Read32fArray_(S, D, C) kxSerializer_Read32fArray_(S, D, C)
958 #define kSerializer_Write64f_(S, D) kxSerializer_Write64f_(S, D)
959 #define kSerializer_Write64fArray_(S, D, C) kxSerializer_Write64fArray_(S, D, C)
960 #define kSerializer_Read64f_(S, D) kxSerializer_Read64f_(S, D)
961 #define kSerializer_Read64fArray_(S, D, C) kxSerializer_Read64fArray_(S, D, C)
963 #define kSerializer_WriteSize_(S, D) kxSerializer_WriteSize_(S, D)
964 #define kSerializer_WriteSizeArray_(S, D, C) kxSerializer_WriteSizeArray_(S, D, C)
965 #define kSerializer_ReadSize_(S, D) kxSerializer_ReadSize_(S, D)
966 #define kSerializer_ReadSizeArray_(S, D, C) kxSerializer_ReadSizeArray_(S, D, C)
968 #define kSerializer_WriteSSize_(S, D) kxSerializer_WriteSSize_(S, D)
969 #define kSerializer_WriteSSizeArray_(S, D, C) kxSerializer_WriteSSizeArray_(S, D, C)
970 #define kSerializer_ReadSSize_(S, D) kxSerializer_ReadSSize_(S, D)
971 #define kSerializer_ReadSSizeArray_(S, D, C) kxSerializer_ReadSSizeArray_(S, D, C)
973 #define kSerializer_WriteType_(S, T, V) kxSerializer_WriteType_(S, T, V)
974 #define kSerializer_ReadType_(S, T, V) kxSerializer_ReadType_(S, T, V)
976 #define kSerializer_WriteItems_(S, T, V, I, C) kxSerializer_WriteItems_(S, T, V, I, C)
977 #define kSerializer_ReadItems_(S, T, V, I, C) kxSerializer_ReadItems_(S, T, V, I, C)
979 #define kSerializer_BeginWrite_(S, T, I) kxSerializer_BeginWrite_(S, T, I)
980 #define kSerializer_EndWrite_(S) kxSerializer_EndWrite_(S)
981 #define kSerializer_BeginRead_(S, T, I) kxSerializer_BeginRead_(S, T, I)
982 #define kSerializer_EndRead_(S) kxSerializer_EndRead_(S)
983 #define kSerializer_ReadCompleted_(S) kxSerializer_ReadCompleted_(S)
985 #define kSerializer_AdvanceRead_(S, O) kxSerializer_AdvanceRead_(S, O)
986 #define kSerializer_Flush_(S) kxSerializer_Flush_(S)
987 #define kSerializer_Reset_(S) kxSerializer_Reset_(S)
988 #define kSerializer_Stream_(S) kxSerializer_Stream_(S)
994 #include <kApi/Io/kSerializer.x.h>
kStatus kSerializer_Write16s(kSerializer serializer, k16s data)
Writes a k16s value.
kStatus kSerializer_ReadSizeArray(kSerializer serializer, kSize *data, kSize count)
Reads a kSize array.
kStatus kSerializer_ReadCharArray(kSerializer serializer, kChar *data, kSize count)
Reads a kChar array.
Represents a 32-bit unsigned integer.
kStatus kSerializer_Write32sArray(kSerializer serializer, const k32s *data, kSize count)
Writes a k32s array.
kStatus kSerializer_EndWrite(kSerializer serializer)
Ends writing a measured data section.
kStatus kSerializer_Read64u(kSerializer serializer, k64u *data)
Reads a k64u value.
kStatus kSerializer_Write8u(kSerializer serializer, k8u data)
Writes a k8u value.
kStatus kSerializer_ReadChar(kSerializer serializer, kChar *data)
Reads a kChar value.
kStatus kSerializer_Read32f(kSerializer serializer, k32f *data)
Reads a k32f value.
kStatus kSerializer_Write16sArray(kSerializer serializer, const k16s *data, kSize count)
Writes a k16s array.
kStatus kSerializer_Read8u(kSerializer serializer, k8u *data)
Reads a k8u value.
Represents a 64-bit unsigned integer.
kStatus kSerializer_Read8s(kSerializer serializer, k8s *data)
Reads a k8s value.
kStatus kSerializer_WriteCharArray(kSerializer serializer, const kChar *data, kSize count)
Writes a kChar array.
kStatus kSerializer_Read16s(kSerializer serializer, k16s *data)
Reads a k16s value.
kStatus kSerializer_Write8uArray(kSerializer serializer, const k8u *data, kSize count)
Writes a k8u array.
kStatus kSerializer_EndRead(kSerializer serializer)
Ends reading a measured data section.
kStatus kSerializer_Write32uArray(kSerializer serializer, const k32u *data, kSize count)
Writes a k32u array.
Represents a library of types.
kStatus kSerializer_Read64f(kSerializer serializer, k64f *data)
Reads a k64f value.
kStatus kSerializer_SetVersion(kSerializer serializer, kAssembly assembly, kVersion version)
Sets the version to use when serializing types.
kStatus kSerializer_Write32f(kSerializer serializer, k32f data)
Writes a k32f value.
kStatus kSerializer_Read16u(kSerializer serializer, k16u *data)
Reads a k16u value.
kStatus kSerializer_WriteType(kSerializer serializer, kType type, kTypeVersion *version)
Writes a type code.
Represents a 16-bit unsigned integer.
kStatus kSerializer_Write16u(kSerializer serializer, k16u data)
Writes a k16u value.
Represents an unsigned integer that can store a pointer address.
Abstract base class for memory allocator types.
kStatus kSerializer_Write64f(kSerializer serializer, k64f data)
Writes a k64f value.
kStream kSerializer_Stream(kSerializer serializer)
Gets the underlying stream.
kStatus kSerializer_Read64uArray(kSerializer serializer, k64u *data, kSize count)
Reads a k64u array.
kStatus kSerializer_Write64u(kSerializer serializer, k64u data)
Writes a k64u value.
Represents an 8-bit unsigned integer.
kStatus kSerializer_ReadObject(kSerializer serializer, kObject *object, kAlloc allocator)
Reads an object from the underlying stream.
kStatus kSerializer_SaveObject(kObject object, kType serializerType, const kChar *filePath)
Saves an object to file using the specified serializer type.
Represents a single unit (byte) in a UTF-8 character.
kStatus kSerializer_Write64sArray(kSerializer serializer, const k64s *data, kSize count)
Writes a k64s array.
kStatus kSerializer_Write64fArray(kSerializer serializer, const k64f *data, kSize count)
Writes a k64f array.
kStatus kSerializer_WriteSize(kSerializer serializer, kSize data)
Writes a kSize value.
Represents a byte on the current platform.
kStatus kSerializer_WriteByte(kSerializer serializer, kByte data)
Writes a kByte value.
kStatus kSerializer_WriteSSizeArray(kSerializer serializer, const kSSize *data, kSize count)
Writes a kSSize array.
kStatus kSerializer_AdvanceRead(kSerializer serializer, kSize offset)
Reads and discards a specified number of bytes.
Represents a signed integer that can store a pointer address.
kStatus kSerializer_Read32u(kSerializer serializer, k32u *data)
Reads a k32u value.
kStatus kSerializer_WriteItems(kSerializer serializer, kType type, kTypeVersion version, const void *items, kSize count)
Writes an array of values or objects.
kStatus kSerializer_Write8s(kSerializer serializer, k8s data)
Writes a k8s value.
kStatus kSerializer_Read8sArray(kSerializer serializer, k8s *data, kSize count)
Reads a k8s array.
kStatus kSerializer_ReadByte(kSerializer serializer, kByte *data)
Reads a kByte value.
Base class for serialization/deserialization classes.
kStatus kSerializer_Reset(kSerializer serializer)
Discards any streaming context accumulated by the serializer.
kStatus kSerializer_WriteChar(kSerializer serializer, kChar data)
Writes a kChar value.
kStatus kSerializer_Read32uArray(kSerializer serializer, k32u *data, kSize count)
Reads a k32u array.
kStatus kSerializer_Read32s(kSerializer serializer, k32s *data)
Reads a k32s value.
kStatus kSerializer_Write32u(kSerializer serializer, k32u data)
Writes a k32u value.
kStatus kSerializer_BeginWrite(kSerializer serializer, kType sizeType, kBool includeSize)
Begins writing a measured section of data, using an 8, 16, 32, or 64-bit integer to record the size...
kStatus kSerializer_Read64sArray(kSerializer serializer, k64s *data, kSize count)
Reads a k64s array.
kStatus kSerializer_Write32s(kSerializer serializer, k32s data)
Writes a k32s value.
kPointer kTypeVersion
Represents an opaque reference to type version information (used in object serialization).
kStatus kSerializer_BeginRead(kSerializer serializer, kType sizeType, kBool includeSize)
Begins reading a measured data section.
kStatus kSerializer_Write64s(kSerializer serializer, k64s data)
Writes a k64s value.
Core Zen type declarations.
kStatus kSerializer_Read64fArray(kSerializer serializer, k64f *data, kSize count)
Reads a k64f array.
kStatus kSerializer_ReadItems(kSerializer serializer, kType type, kTypeVersion version, void *items, kSize count)
Reads an array of values or objects.
Represents an I/O stream.
kStatus kSerializer_ReadSize(kSerializer serializer, kSize *data)
Reads a kSize value.
Represents a 32-bit signed integer.
kStatus kSerializer_Write16uArray(kSerializer serializer, const k16u *data, kSize count)
Writes a k16u array.
kStatus kSerializer_LoadObject(kObject *object, kType serializerType, const kChar *filePath, kAlloc readAlloc)
Loads an object from file using the specified serializer type.
kStatus kSerializer_Construct(kSerializer *serializer, kStream stream, kType serializerType, kAlloc allocator)
Constructs a serializer object using the specified serialization format.
kStatus kSerializer_Write8sArray(kSerializer serializer, const k8s *data, kSize count)
Writes a k8s array.
kStatus kSerializer_Read64s(kSerializer serializer, k64s *data)
Reads a k64s value.
kStatus kSerializer_Read16sArray(kSerializer serializer, k16s *data, kSize count)
Reads a k16s array.
kStatus kSerializer_WriteSizeArray(kSerializer serializer, const kSize *data, kSize count)
Writes a kSize array.
Represents a 64-bit signed integer.
kStatus kSerializer_ReadText(kSerializer serializer, kChar *data, kSize capacity)
Reads a null-terminated kChar array.
kStatus kSerializer_WriteText(kSerializer serializer, const kChar *data)
Writes a null-terminated kChar array.
kStatus kSerializer_WriteByteArray(kSerializer serializer, const kByte *data, kSize count)
Writes a kByte array.
Represents an 8-bit signed integer.
kStatus kSerializer_ReadByteArray(kSerializer serializer, kByte *data, kSize count)
Reads a kByte array.
kStatus kSerializer_Read32sArray(kSerializer serializer, k32s *data, kSize count)
Reads a k32s array.
Represents metadata about a type (class, interface, or value).
kStatus kSerializer_SetSizeEncoding(kSerializer serializer, k32u byteCount)
Explicitly sets the number of bytes used to encode/decode kSize and kSSize values.
kStatus kSerializer_WriteObject(kSerializer serializer, kObject object)
Writes an object to the underlying stream.
kBool kSerializer_ReadCompleted(kSerializer serializer)
Determines whether the current measured read section has more bytes.
kStatus kSerializer_Write32fArray(kSerializer serializer, const k32f *data, kSize count)
Writes a k32f array.
Represents a 16-bit signed integer.
Represents a 32-bit floating-point number.
Represents a version number.
kStatus kSerializer_Read16uArray(kSerializer serializer, k16u *data, kSize count)
Reads a k16u array.
Represents an error code.
kStatus kSerializer_ReadSSize(kSerializer serializer, kSSize *data)
Reads a kSSize value.
kStatus kSerializer_ReadType(kSerializer serializer, kType *type, kTypeVersion *version)
Reads a type code.
kStatus kSerializer_Read8uArray(kSerializer serializer, k8u *data, kSize count)
Reads a k8u array.
kStatus kSerializer_Write64uArray(kSerializer serializer, const k64u *data, kSize count)
Writes a k64u array.
kStatus kSerializer_ReadSSizeArray(kSerializer serializer, kSSize *data, kSize count)
Reads a kSSize array.
Represents a 64-bit floating-point number.
kStatus kSerializer_Read32fArray(kSerializer serializer, k32f *data, kSize count)
Reads a k32f array.
Represents a boolean value.
kStatus kSerializer_WriteSSize(kSerializer serializer, kSSize data)
Writes a kSSize value.
kStatus kSerializer_Flush(kSerializer serializer)
Flushes the serializer write buffer to the underlying stream.