livoxGen1: Rn PcloudIStimulusBuffer=>PcloudIntensityStimulusBuffer

This commit is contained in:
2025-11-16 00:31:47 -04:00
parent 336bc52a9d
commit addd2e275d
4 changed files with 50 additions and 45 deletions
+2 -2
View File
@@ -511,8 +511,8 @@ public:
// Clear specialized buffer members if they match
if (stimProducer.meshStimulusBuffer == context->stimBuffer)
{ stimProducer.meshStimulusBuffer.reset(); }
if (stimProducer.iStimulusBuffer == context->stimBuffer)
{ stimProducer.iStimulusBuffer.reset(); }
if (stimProducer.intensityStimulusBuffer == context->stimBuffer)
{ stimProducer.intensityStimulusBuffer.reset(); }
if (stimProducer.ambienceStimulusBuffer == context->stimBuffer)
{ stimProducer.ambienceStimulusBuffer.reset(); }
@@ -1,41 +0,0 @@
#ifndef _LIVOX_GEN1_PCLOUD_I_STIMULUS_BUFFER_H
#define _LIVOX_GEN1_PCLOUD_I_STIMULUS_BUFFER_H
#include <memory>
#include <user/stimulusBuffer.h>
namespace smo {
namespace stim_buff {
// Forward declaration
class StimulusProducer;
/**
* PcloudIStimulusBuffer is a specialized StimulusBuffer for intensity point cloud data.
*/
class PcloudIStimulusBuffer
: public StimulusBuffer
{
public:
explicit PcloudIStimulusBuffer(
StimulusProducer& parent,
const std::shared_ptr<device::DeviceAttachmentSpec>& deviceAttachmentSpec,
int histbuffMs,
const SpMcRingBuffer::InputEngineConstraints& ringBufferConstraints)
: StimulusBuffer(
parent, deviceAttachmentSpec, histbuffMs, ringBufferConstraints)
{}
~PcloudIStimulusBuffer() = default;
// Non-copyable, movable
PcloudIStimulusBuffer(const PcloudIStimulusBuffer&) = delete;
PcloudIStimulusBuffer& operator=(const PcloudIStimulusBuffer&) = delete;
PcloudIStimulusBuffer(PcloudIStimulusBuffer&&) = default;
PcloudIStimulusBuffer& operator=(PcloudIStimulusBuffer&&) = default;
};
} // namespace stim_buff
} // namespace smo
#endif // _LIVOX_GEN1_PCLOUD_I_STIMULUS_BUFFER_H
@@ -0,0 +1,46 @@
#ifndef _LIVOX_GEN1_PCLOUD_INTENSITY_STIMULUS_BUFFER_H
#define _LIVOX_GEN1_PCLOUD_INTENSITY_STIMULUS_BUFFER_H
#include <memory>
#include <user/stimulusBuffer.h>
namespace smo {
namespace stim_buff {
// Forward declaration
class StimulusProducer;
/**
* PcloudIntensityStimulusBuffer is a specialized StimulusBuffer for intensity point cloud data.
*/
class PcloudIntensityStimulusBuffer
: public StimulusBuffer
{
public:
explicit PcloudIntensityStimulusBuffer(
StimulusProducer& parent,
const std::shared_ptr<device::DeviceAttachmentSpec>
&deviceAttachmentSpec,
int histbuffMs,
const SpMcRingBuffer::InputEngineConstraints& ringBufferConstraints)
: StimulusBuffer(
parent, deviceAttachmentSpec, histbuffMs, ringBufferConstraints)
{}
~PcloudIntensityStimulusBuffer() = default;
// Non-copyable, movable
PcloudIntensityStimulusBuffer(
const PcloudIntensityStimulusBuffer&) = delete;
PcloudIntensityStimulusBuffer& operator=(
const PcloudIntensityStimulusBuffer&) = delete;
PcloudIntensityStimulusBuffer(
PcloudIntensityStimulusBuffer&&) = default;
PcloudIntensityStimulusBuffer& operator=(
PcloudIntensityStimulusBuffer&&) = default;
};
} // namespace stim_buff
} // namespace smo
#endif // _LIVOX_GEN1_PCLOUD_INTENSITY_STIMULUS_BUFFER_H
@@ -12,7 +12,7 @@
#include "ioUringAssemblyEngine.h"
#include "openClCollatingAndMeshingEngine.h"
#include "meshStimulusBuffer.h"
#include "pcloudIStimulusBuffer.h"
#include "pcloudIntensityStimulusBuffer.h"
#include "pcloudAmbienceStimulusBuffer.h"
namespace smo {
@@ -84,7 +84,7 @@ public:
StagingBuffer collationBuffer;
StimulusFrame tempStimulusFrame;
std::shared_ptr<MeshStimulusBuffer> meshStimulusBuffer;
std::shared_ptr<PcloudIStimulusBuffer> iStimulusBuffer;
std::shared_ptr<PcloudIntensityStimulusBuffer> intensityStimulusBuffer;
std::shared_ptr<PcloudAmbienceStimulusBuffer> ambienceStimulusBuffer;
private: