Shkyera Engine
Easy to use, game engine for Python
Loading...
Searching...
No Matches
shkyera::serialization Namespace Reference

Typedefs

template<typename ProtoType >
using ProtoArray = ::google::protobuf::RepeatedPtrField< ProtoType >
 

Functions

glm::vec3 fromProto (const shkyeraProto::Vec3 &vec)
 
template<typename AssetType >
HandleAndAsset< AssetTypefromProto (Registry *registry, const std::map< Entity, Entity > &protoToRegistryEntities, Entity protoEntity)
 
void toProto (const glm::vec3 &vec, shkyeraProto::Vec3 &out)
 
template<typename AssetType >
uint32_t toProto (const HandleAndAsset< AssetType > &asset)
 
template<typename ComponentType , typename ProtoType , typename ConversionFunc >
void loadComponents (Registry *registry, std::map< Entity, Entity > &protoToRegistryEntities, const ProtoArray< ProtoType > &protoComponents, ConversionFunc constructComponent)
 
template<typename ComponentType , typename ProtoType , typename ConversionFunc >
void loadSingletonComponent (Registry *registry, std::map< Entity, Entity > &protoToRegistryEntities, const ProtoType &protoComponent, ConversionFunc constructComponent)
 
std::unique_ptr< shkyera::RegistryfromBinary (std::istream &serialized)
 
template<typename ComponentType , typename ProtoType , typename SerializeFunc >
void serializeComponents (Registry const *registry, ProtoArray< ProtoType > &protoComponents, SerializeFunc serializeFunc)
 
template<typename ComponentType , typename ProtoType , typename SerializeFunc >
void serializeSingletonComponent (Registry const *registry, ProtoType &protoComponent, SerializeFunc serializeFunc)
 
void toBinary (std::ostream &outputStream, Registry const *registry)
 
std::string pathAssetToBinary (const std::filesystem::path &path)
 

Typedef Documentation

◆ ProtoArray

template<typename ProtoType >
using shkyera::serialization::ProtoArray = typedef ::google::protobuf::RepeatedPtrField<ProtoType>

Function Documentation

◆ fromBinary()

std::unique_ptr< Registry > shkyera::serialization::fromBinary ( std::istream &  serialized)

◆ fromProto() [1/2]

glm::vec3 shkyera::serialization::fromProto ( const shkyeraProto::Vec3 &  vec)

◆ fromProto() [2/2]

template<typename AssetType >
HandleAndAsset< AssetType > shkyera::serialization::fromProto ( Registry registry,
const std::map< Entity, Entity > &  protoToRegistryEntities,
Entity  protoEntity 
)

◆ loadComponents()

void shkyera::serialization::loadComponents ( Registry registry,
std::map< Entity, Entity > &  protoToRegistryEntities,
const ProtoArray< ProtoType > &  protoComponents,
ConversionFunc  constructComponent 
)

◆ loadSingletonComponent()

void shkyera::serialization::loadSingletonComponent ( Registry registry,
std::map< Entity, Entity > &  protoToRegistryEntities,
const ProtoType protoComponent,
ConversionFunc  constructComponent 
)

◆ pathAssetToBinary()

std::string shkyera::serialization::pathAssetToBinary ( const std::filesystem::path &  path)

◆ serializeComponents()

void shkyera::serialization::serializeComponents ( Registry const registry,
ProtoArray< ProtoType > &  protoComponents,
SerializeFunc  serializeFunc 
)

◆ serializeSingletonComponent()

void shkyera::serialization::serializeSingletonComponent ( Registry const registry,
ProtoType protoComponent,
SerializeFunc  serializeFunc 
)

◆ toBinary()

void shkyera::serialization::toBinary ( std::ostream &  outputStream,
Registry const registry 
)

◆ toProto() [1/2]

void shkyera::serialization::toProto ( const glm::vec3 &  vec,
shkyeraProto::Vec3 &  out 
)

◆ toProto() [2/2]

template<typename AssetType >
uint32_t shkyera::serialization::toProto ( const HandleAndAsset< AssetType > &  asset)