rogue
Loading...
Searching...
No Matches
InverterV2.h
Go to the documentation of this file.
1
17#ifndef __ROGUE_PROTOCOLS_BATCHER_INVERTER_V2_H__
18#define __ROGUE_PROTOCOLS_BATCHER_INVERTER_V2_H__
19#include "rogue/Directives.h"
20
21#include <stdint.h>
22
23#include <memory>
24#include <thread>
25
26#include "rogue/Logging.h"
29
30namespace rogue {
31namespace protocols {
32namespace batcher {
33
57 public:
68 static std::shared_ptr<rogue::protocols::batcher::InverterV2> create();
69
71 static void setup_python();
72
80 InverterV2();
81
84
89 void acceptFrame(std::shared_ptr<rogue::interfaces::stream::Frame> frame);
90};
91
92// Convienence
93typedef std::shared_ptr<rogue::protocols::batcher::InverterV2> InverterV2Ptr;
94} // namespace batcher
95} // namespace protocols
96} // namespace rogue
97#endif
Stream master endpoint.
Definition Master.h:65
Stream slave endpoint and default frame pool.
Definition Slave.h:72
In-place inverter for SLAC AXI Batcher v2 framing.
Definition InverterV2.h:56
static std::shared_ptr< rogue::protocols::batcher::InverterV2 > create()
Creates an InverterV2 instance.
InverterV2()
Constructs an InverterV2 instance.
void acceptFrame(std::shared_ptr< rogue::interfaces::stream::Frame > frame)
Accepts, transforms, and forwards one batcher v2 frame.
static void setup_python()
Registers Python bindings for this class.
~InverterV2()
Destroys the inverter.
std::shared_ptr< rogue::protocols::batcher::InverterV2 > InverterV2Ptr
Definition InverterV2.h:93