17#ifndef __ROGUE_PROTOCOLS_PACKETIZER_APPLICATION_H__
18#define __ROGUE_PROTOCOLS_PACKETIZER_APPLICATION_H__
43 std::shared_ptr<rogue::protocols::packetizer::Controller> cntl_;
72 static std::shared_ptr<rogue::protocols::packetizer::Application>
create(uint8_t
id);
95 void setController(std::shared_ptr<rogue::protocols::packetizer::Controller> cntl);
101 void pushFrame(std::shared_ptr<rogue::interfaces::stream::Frame> frame);
113 std::shared_ptr<rogue::interfaces::stream::Frame>
acceptReq(uint32_t size,
bool zeroCopyEn);
119 void acceptFrame(std::shared_ptr<rogue::interfaces::stream::Frame> frame);
123typedef std::shared_ptr<rogue::protocols::packetizer::Application>
ApplicationPtr;
Thread-safe bounded queue with optional busy threshold.
static std::shared_ptr< rogue::interfaces::stream::Master > create()
Creates a stream master.
Stream slave endpoint and default frame pool.
Packetizer application endpoint.
void pushFrame(std::shared_ptr< rogue::interfaces::stream::Frame > frame)
Queues a frame for packetized transmission.
static void setup_python()
Registers Python bindings for this class.
std::shared_ptr< rogue::interfaces::stream::Frame > acceptReq(uint32_t size, bool zeroCopyEn)
Allocates a frame for upstream writers.
~Application()
Destroys the application endpoint.
void setController(std::shared_ptr< rogue::protocols::packetizer::Controller > cntl)
Attaches the packetizer controller.
void acceptFrame(std::shared_ptr< rogue::interfaces::stream::Frame > frame)
Accepts a frame from upstream application logic.
Packetizer base controller.
std::shared_ptr< rogue::protocols::packetizer::Application > ApplicationPtr