SplitterV2
SplitterV2 decodes a Batcher v2 super-frame and emits one Rogue stream
frame per record.
For conceptual guidance, see Batcher Protocol Splitter.
Protocol reference: https://confluence.slac.stanford.edu/x/L2VlK
Python binding
This C++ class is also exported into Python as rogue.protocols.batcher.SplitterV2.
Python API page: - SplitterV2
SplitterV2 objects in C++ are referenced by the following shared pointer typedef:
-
typedef std::shared_ptr<rogue::protocols::batcher::SplitterV2> rogue::protocols::batcher::SplitterV2Ptr
[header]
The class description is shown below:
-
class SplitterV2 : public rogue::interfaces::stream::Master, public rogue::interfaces::stream::Slave
[header] Splits one batcher v2 super-frame into per-record output frames.
Protocol reference: https://confluence.slac.stanford.edu/x/L2VlK
SplitterV2usesCoreV2to parse a batcher super-frame, then emits one Rogue stream frame per parsedDatarecord:Payload bytes copied from record data.
Channel set from record destination.
First/last user fields propagated from record metadata.
Threading model:
No internal worker thread is created.
Processing executes synchronously in the caller thread of
acceptFrame().
Public Functions
-
SplitterV2()
[header] [impl] Constructs a
SplitterV2instance.Creator.
This constructor is a low-level C++ allocation path. Prefer
create()when shared ownership or Python exposure is required.
Accepts one batcher v2 frame and emits parsed records as frames.
Accept a frame from master.
- Parameters:
frame – Input batcher super-frame.
Public Static Functions
-
static std::shared_ptr<rogue::protocols::batcher::SplitterV2> create()
[header] [impl] Creates a
SplitterV2instance.Class creation.
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_ptrownership compatible with Rogue pointer typedefs.Company : SLAC National Accelerator Laboratory
Description: SLAC Splitter 2
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.
- Returns:
Shared pointer to the created splitter.