Add PcloudAmbienceStencil, LG1PcloudAmbienceStencil
These two classes represent our first foray into stencil construction. One of them standardizes PcloudAmbience stencils across all stimbuffs, and the other specifies the internal memory constraints and requirements for a LivoxGen1 device's stencils.
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
#ifndef _PCLOUD_AMBIENCE_STENCIL_H
|
||||
#define _PCLOUD_AMBIENCE_STENCIL_H
|
||||
|
||||
#include <cstdint>
|
||||
#include <cstddef>
|
||||
#include <user/stencil.h>
|
||||
|
||||
namespace smo {
|
||||
namespace stim_buff {
|
||||
|
||||
/**
|
||||
* PcloudAmbienceStencil represents stencils for point cloud ambience data.
|
||||
* This is a base class for device-specific implementations.
|
||||
*/
|
||||
class PcloudAmbienceStencil
|
||||
: public smo::cologex::Stencil
|
||||
{
|
||||
public:
|
||||
typedef uint32_t PcloudAmbienceStimulusValue;
|
||||
|
||||
/**
|
||||
* RangeDescriptor describes a contiguous range of body spots for
|
||||
* point cloud ambience stencils.
|
||||
*/
|
||||
struct RangeDescriptor : public Stencil::RangeDescriptor
|
||||
{
|
||||
uint32_t bodySpot;
|
||||
size_t nContiguousSpots;
|
||||
};
|
||||
|
||||
PcloudAmbienceStencil() = default;
|
||||
virtual ~PcloudAmbienceStencil() = default;
|
||||
};
|
||||
|
||||
} // namespace stim_buff
|
||||
} // namespace smo
|
||||
|
||||
#endif // _PCLOUD_AMBIENCE_STENCIL_H
|
||||
Reference in New Issue
Block a user