Class slamcore::ImageInterface

class slamcore::ImageInterface : public ObjectInterface, public virtual MeasurementPointInterface<camera_clock>

Representing a single video frame.

Public Types

using Ptr = std::shared_ptr<ImageInterface>
using CPtr = std::shared_ptr<const ImageInterface>
using MeasurementPointT = MeasurementPointInterface<camera_clock>

Public Functions

inline virtual ObjectType type() const

Type of the object.

virtual ~ImageInterface() = default
virtual ImageFormat getFormat() const = 0

Get the internal image data format.

virtual std::size_t getWidth() const = 0

Get image width in pixels.

virtual std::size_t getHeight() const = 0

Get image height in pixels.

virtual std::size_t getPitch() const = 0

Get image line stride in bytes.

virtual std::size_t getBytesPerPixel() const = 0

Bytes per pixel.

virtual std::size_t getBufferSize() const = 0

Get image total buffer size in bytes.

inline virtual camera_duration getExposureTime() const

[OPTIONAL] Get image exposure time.

inline virtual float getGain() const

[OPTIONAL] Get image gain.

inline virtual bool getAutoExposureEnabled() const

[OPTIONAL] Get image auto-exposure state.

inline virtual float getLaserPower() const

[OPTIONAL] Get IR laser projector state at the time of capture.

virtual bool isValid() const = 0

Check if the image contains valid data.

virtual const uint8_t *getData() const = 0

Returns the internal buffer with image data.