Hybrid ICN (hICN) plugin  v21.06-rc0-4-g18fa668
Classes | Public Types | Public Member Functions | Friends | List of all members
transport::core::PacketManager< packet_pool_size, chunk_size > Class Template Reference
Inheritance diagram for transport::core::PacketManager< packet_pool_size, chunk_size >:
Inheritance graph
[legend]
Collaboration diagram for transport::core::PacketManager< packet_pool_size, chunk_size >:
Collaboration graph
[legend]

Classes

struct  PacketStorage
 

Public Types

using MemoryPool = utils::FixedBlockAllocator< chunk_size, packet_pool_size >
 
using RawBuffer = std::pair< uint8_t *, std::size_t >
 

Public Member Functions

utils::MemBuf::Ptr getMemBuf ()
 
utils::MemBuf::Ptr getMemBuf (uint8_t *buffer, std::size_t length)
 
template<typename PacketType , typename... Args, typename = std::enable_if_t<std::is_base_of<Packet, PacketType>::value>>
PacketType::Ptr getPacket (Args &&... args)
 
std::pair< uint8_t *, std::size_t > getRawBuffer ()
 
template<typename PacketType , typename... Args>
PacketType::Ptr getPacketFromExistingBuffer (uint8_t *buffer, std::size_t length, Args &&... args)
 

Friends

class utils::Singleton< PacketManager< packet_pool_size, chunk_size > >
 

Additional Inherited Members

- Static Public Member Functions inherited from utils::Singleton< PacketManager< 1024, 2048 > >
static PacketManager< 1024, 2048 > & getInstance ()
 

The documentation for this class was generated from the following file: