Application
TODO
Application objects in C++ are referenced by the following shared pointer typedef:
-
typedef std::shared_ptr<rogue::protocols::packetizer::Application> rogue::protocols::packetizer::ApplicationPtr
The class description is shown below:
-
class Application : public rogue::interfaces::stream::Master, public rogue::interfaces::stream::Slave
Packetizer application endpoint.
Provides per-destination stream ingress/egress into the packetizer stack.
Public Functions
-
explicit Application(uint8_t id)
Constructs a packetizer application endpoint.
This constructor is a low-level C++ allocation path. Prefer
create()when shared ownership or Python exposure is required.- Parameters:
id – Destination/application ID.
-
~Application()
Destroys the application endpoint.
Attaches the packetizer controller.
- Parameters:
cntl – Controller instance that handles packetizer state.
Queues a frame for packetized transmission.
- Parameters:
frame – Frame to send through this application channel.
-
virtual std::shared_ptr<rogue::interfaces::stream::Frame> acceptReq(uint32_t size, bool zeroCopyEn)
Allocates a frame for upstream writers.
Called by the stream master side of this endpoint.
- Parameters:
size – Minimum requested payload size in bytes.
zeroCopyEn – True to allow zero-copy allocation when possible.
- Returns:
Newly allocated frame.
Accepts a frame from upstream application logic.
- Parameters:
frame – Input frame to packetize.
Public Static Functions
-
static std::shared_ptr<rogue::protocols::packetizer::Application> create(uint8_t id)
Creates a packetizer application endpoint.
Parameter semantics are identical to the constructor; see
Application()for endpoint-construction details. This static factory is the preferred construction path when the object is shared across Rogue graph connections or exposed to Python. It returnsstd::shared_ptrownership compatible with Rogue pointer typedefs.- Parameters:
id – Destination/application ID.
- Returns:
Shared pointer to the created application endpoint.
-
static void setup_python()
Registers Python bindings for this class.
-
explicit Application(uint8_t id)