mal-packet-weaver
C++20 packet serialization/deserialization library.
Loading...
Searching...
No Matches
Todo List
Member mal_packet_weaver::DerivedPacket< PacketType >::deserialize (const ByteView buffer)
: add an ability to choose the archive type.
Member mal_packet_weaver::DerivedPacket< PacketType >::serialize_to_bytearray (ByteArray &buffer) const override
: add an ability to choose the archive type.
Member mal_packet_weaver::DispatcherSession::register_default_handler (PacketHandlerFunc< DerivedPacket > handler, PacketFilterFunc< DerivedPacket > filter={}, float delay=0.0f)
Add an ability to delete handlers
Member mal_packet_weaver::Packet::~Packet ()=default
: use RBAC system to manage permissions
Member mal_packet_weaver::PacketDispatcher::register_default_handler (PacketHandlerFunc< DerivedPacket > handler, PacketFilterFunc< DerivedPacket > filter={}, float delay=0.0f)
Add an ability to delete handlers
Member mal_packet_weaver::PacketDispatcher::register_subsystem_handler (PacketSubsystemID subsystem_id, PacketHandlerFunc< Packet > handler, PacketFilterFunc< Packet > filter={}, float delay=0.0f)
Add an ability to delete handlers
Member mal_packet_weaver::Session::received_packets_
Implement a circular buffer and ByteView handler for the lock-free queue. The ByteView handler should hold a simple pointer to a circular buffer and a ByteView. The circular buffer should automatically free memory allocated by the ByteViewHandler::free() method. This approach optimizes memory usage by avoiding repeated allocation and deallocation from the OS. Another option is to use a default queue of shared pointers, which automatically handles deallocation. The final choice may affect performance and memory usage, and further testing is needed.