diff --git a/stimBuffApis/livoxGen1/pcloudStimulusBuffer.h b/stimBuffApis/livoxGen1/pcloudStimulusBuffer.h index a3fd664..c78ed9e 100644 --- a/stimBuffApis/livoxGen1/pcloudStimulusBuffer.h +++ b/stimBuffApis/livoxGen1/pcloudStimulusBuffer.h @@ -4,6 +4,7 @@ #include #include #include +#include "stagingBuffer.h" namespace smo { namespace stim_buff { @@ -23,10 +24,12 @@ public: explicit PcloudStimulusBuffer( const device::DeviceAttachmentSpec& deviceAttachmentSpec, std::shared_ptr &device, - const PcloudFormatDesc& formatDesc) + const PcloudFormatDesc& formatDesc, + size_t nPointsPerFrame) : StimulusBuffer(deviceAttachmentSpec), deviceAttachmentSpec(deviceAttachmentSpec), device(device), - formatDesc(formatDesc) + formatDesc(formatDesc), stagingBuffer( + IoUringConstraints(), OpenClConstraints(), nPointsPerFrame) {} ~PcloudStimulusBuffer() = default; @@ -41,6 +44,7 @@ public: device::DeviceAttachmentSpec deviceAttachmentSpec; std::shared_ptr device; PcloudFormatDesc formatDesc; + StagingBuffer stagingBuffer; }; } // namespace stim_buff diff --git a/stimBuffApis/livoxGen1/stagingBuffer.h b/stimBuffApis/livoxGen1/stagingBuffer.h index 0752c08..0184583 100644 --- a/stimBuffApis/livoxGen1/stagingBuffer.h +++ b/stimBuffApis/livoxGen1/stagingBuffer.h @@ -72,6 +72,26 @@ private: std::atomic isAssembling_; }; +class IoUringConstraints +: public StagingBuffer::InputEngineConstraints +{ +public: + IoUringConstraints() + : StagingBuffer::InputEngineConstraints() + {} + ~IoUringConstraints() = default; +}; + +class OpenClConstraints +: public StagingBuffer::OutputEngineConstraints +{ +public: + OpenClConstraints() + : StagingBuffer::OutputEngineConstraints() + {} + ~OpenClConstraints() = default; +}; + } // namespace stim_buff } // namespace smo