Core

Core is the packetizer v1 wiring object that owns the transport endpoint, controller, and destination-indexed application endpoints. This page is reference-only; for integration guidance see Packetizer Protocol Core.

Python binding

This C++ class is also exported into Python as rogue.protocols.packetizer.Core.

Python API page: - Core

objects in C++ are referenced by the following shared pointer typedef:

typedef std::shared_ptr<rogue::protocols::packetizer::Core> rogue::protocols::packetizer::CorePtr
[header]

The class description is shown below:

class Core
[header]

Packetizer core wiring object.

Owns and connects transport, controller, and per-destination application endpoints for the packetizer v1 stack.

Public Functions

explicit Core(bool enSsi)
[header] [impl]

Constructs a packetizer core.

Creator.

This constructor is a low-level C++ allocation path. Prefer create() when shared ownership or Python exposure is required.

Parameters:

enSsi – Enable SSI framing behavior.

~Core()
[header] [impl]

Destroys the packetizer core.

Destructor.

std::shared_ptr<rogue::protocols::packetizer::Transport> transport()
[header] [impl]

Returns the transport-facing endpoint.

Get transport interface.

Returns:

Shared transport interface.

std::shared_ptr<rogue::protocols::packetizer::Application> application(uint8_t dest)
[header] [impl]

Returns an application endpoint by destination ID.

Application module.

Parameters:

dest – Destination channel ID.

Returns:

Shared application endpoint.

uint32_t getDropCount()
[header] [impl]

Returns total dropped-frame count reported by the controller.

Get drop count.

Returns:

Number of dropped frames.

void setTimeout(uint32_t timeout)
[header] [impl]

Sets transmit timeout for internal controller operations.

Parameters:

timeout – Timeout in microseconds.

Public Static Functions

static std::shared_ptr<rogue::protocols::packetizer::Core> create(bool enSsi)
[header] [impl]

Creates a packetizer core.

Class creation.

Parameter semantics are identical to the constructor; see Core() for core-construction details. This static factory is the preferred construction path when the object is shared across Rogue graph connections or exposed to Python. It returns std::shared_ptr ownership compatible with Rogue pointer typedefs.

Company : SLAC National Accelerator Laboratory

Description: Packetizer

This file is part of the rogue software platform. It is subject to the license terms in the LICENSE.txt file found in the top-level directory of this distribution and at: https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. No part of the rogue software platform, including this file, may be copied, modified, propagated, or distributed except according to the terms contained in the LICENSE.txt file.

Parameters:

enSsi – Enable SSI framing behavior.

Returns:

Shared pointer to the created packetizer core.

static void setup_python()
[header] [impl]

Registers Python bindings for this class.