aether::netcode::marshaller< Traits > Class Template Referenceabstract

#include <marshalling.hh>

Public Types

using entity_type = typename Traits::entity_type
 
using static_data_type = typename Traits::static_data_type
 
using per_worker_data_type = typename Traits::per_worker_data_type
 

Public Member Functions

virtual void set_static_data (const static_data_type &data)=0
 
virtual void reserve (const size_t count)=0
 
virtual void add_entity (const entity_type &entity)=0
 
virtual void add_worker_data (uint64_t worker_id, const per_worker_data_type &data)=0
 
virtual std::vector< char > encode () const =0
 
virtual ~marshaller ()
 

Member Typedef Documentation

template<typename Traits >
using aether::netcode::marshaller< Traits >::entity_type = typename Traits::entity_type
template<typename Traits >
using aether::netcode::marshaller< Traits >::per_worker_data_type = typename Traits::per_worker_data_type
template<typename Traits >
using aether::netcode::marshaller< Traits >::static_data_type = typename Traits::static_data_type

Constructor & Destructor Documentation

template<typename Traits >
virtual aether::netcode::marshaller< Traits >::~marshaller ( )
inlinevirtual

Member Function Documentation

template<typename Traits >
virtual void aether::netcode::marshaller< Traits >::add_entity ( const entity_type entity)
pure virtual
template<typename Traits >
virtual void aether::netcode::marshaller< Traits >::add_worker_data ( uint64_t  worker_id,
const per_worker_data_type data 
)
pure virtual
template<typename Traits >
virtual std::vector<char> aether::netcode::marshaller< Traits >::encode ( ) const
pure virtual
template<typename Traits >
virtual void aether::netcode::marshaller< Traits >::reserve ( const size_t  count)
pure virtual
template<typename Traits >
virtual void aether::netcode::marshaller< Traits >::set_static_data ( const static_data_type data)
pure virtual