17#ifndef __ROGUE_PROTOCOLS_SRP_SRPV0_H__
18#define __ROGUE_PROTOCOLS_SRP_SRPV0_H__
87 std::shared_ptr<rogue::Logging> log_;
89 static const uint32_t WrHeadLen = 8;
90 static const uint32_t RdHeadLen = 12;
91 static const uint32_t MaxHeadLen = 12;
92 static const uint32_t RxHeadLen = 8;
93 static const uint32_t TailLen = 4;
96 bool setupHeader(std::shared_ptr<rogue::interfaces::memory::Transaction> tran,
113 static std::shared_ptr<rogue::protocols::srp::SrpV0>
create();
140 void doTransaction(std::shared_ptr<rogue::interfaces::memory::Transaction> tran);
151 void acceptFrame(std::shared_ptr<rogue::interfaces::stream::Frame> frame);
155typedef std::shared_ptr<rogue::protocols::srp::SrpV0>
SrpV0Ptr;
Stream slave endpoint and default frame pool.
SRP v0 bridge between Rogue memory transactions and stream frames.
static void setup_python()
Registers Python bindings for this class.
static std::shared_ptr< rogue::protocols::srp::SrpV0 > create()
Creates an SRP v0 interface instance.
void doTransaction(std::shared_ptr< rogue::interfaces::memory::Transaction > tran)
Processes a memory transaction and emits SRP v0 request frame(s).
void acceptFrame(std::shared_ptr< rogue::interfaces::stream::Frame > frame)
Accepts an incoming SRP v0 response frame.
~SrpV0()
Destroys the SRP v0 interface instance.
SrpV0()
Constructs an SRP v0 interface instance.
std::shared_ptr< rogue::protocols::srp::SrpV0 > SrpV0Ptr