livoxGen1: Add StimBuffs to PcloudStimProd
* PcloudStimulusProducer now has member sh_ptr<StimulusBuffer>s. * StimulusProducer now has a vector<sh_ptr<StimulusBuffer>s. Created new stimbuff-type-specific Pcloud[Xyz|I|Ambience]StimulusBuffer classes for representing each stim feature exposed by livoxGen1's PcloudStimulusProducer.
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
#ifndef _LIVOX_GEN1_PCLOUD_XYZ_STIMULUS_BUFFER_H
|
||||
#define _LIVOX_GEN1_PCLOUD_XYZ_STIMULUS_BUFFER_H
|
||||
|
||||
#include <memory>
|
||||
#include <user/stimulusBuffer.h>
|
||||
|
||||
namespace smo {
|
||||
namespace stim_buff {
|
||||
|
||||
// Forward declaration
|
||||
class StimulusProducer;
|
||||
|
||||
/**
|
||||
* PcloudXyzStimulusBuffer is a specialized StimulusBuffer for XYZ point cloud data.
|
||||
*/
|
||||
class PcloudXyzStimulusBuffer
|
||||
: public StimulusBuffer
|
||||
{
|
||||
public:
|
||||
explicit PcloudXyzStimulusBuffer(
|
||||
std::shared_ptr<StimulusProducer>& producer,
|
||||
const std::shared_ptr<device::DeviceAttachmentSpec>& deviceAttachmentSpec,
|
||||
int histbuffMs,
|
||||
const SpMcRingBuffer::InputEngineConstraints& ringBufferConstraints)
|
||||
: StimulusBuffer(
|
||||
producer, deviceAttachmentSpec, histbuffMs, ringBufferConstraints)
|
||||
{}
|
||||
|
||||
~PcloudXyzStimulusBuffer() = default;
|
||||
|
||||
// Non-copyable, movable
|
||||
PcloudXyzStimulusBuffer(const PcloudXyzStimulusBuffer&) = delete;
|
||||
PcloudXyzStimulusBuffer& operator=(const PcloudXyzStimulusBuffer&) = delete;
|
||||
PcloudXyzStimulusBuffer(PcloudXyzStimulusBuffer&&) = default;
|
||||
PcloudXyzStimulusBuffer& operator=(PcloudXyzStimulusBuffer&&) = default;
|
||||
};
|
||||
|
||||
} // namespace stim_buff
|
||||
} // namespace smo
|
||||
|
||||
#endif // _LIVOX_GEN1_PCLOUD_XYZ_STIMULUS_BUFFER_H
|
||||
Reference in New Issue
Block a user