![]() |
LibMultiSense
LibMultiSense Documentation
|
#include <MultiSenseChannel.hh>
Classes | |
struct | Config |
struct | ReceiveBufferConfig |
Certain implementations may use a fixed set of internal buffers to manage incoming camera data. More... | |
Public Types | |
enum | ChannelImplementation { ChannelImplementation::LEGACY } |
Identifiers for the different Channel implementations. More... | |
Public Member Functions | |
Channel ()=default | |
Channel (const Channel &)=delete | |
Non-copyable. More... | |
Channel & | operator= (const Channel &)=delete |
Channel (Channel &&) noexcept=default | |
Movable. More... | |
Channel & | operator= (Channel &&) noexcept=default |
virtual | ~Channel ()=default |
virtual Status | start_streams (const std::vector< DataSource > &sources)=0 |
Start a collection of data sources streaming from the camera. More... | |
virtual Status | stop_streams (const std::vector< DataSource > &sources)=0 |
Stop specific data sources from streaming from the camera. More... | |
virtual void | add_image_frame_callback (std::function< void(const ImageFrame &)> callback)=0 |
Setup user callback that will be invoked whenever a new image frame is received. More... | |
virtual void | add_imu_frame_callback (std::function< void(const ImuFrame &)> callback)=0 |
Setup user callback that will be invoked whenever a new imu frame is received. More... | |
virtual Status | connect (const Config &config)=0 |
Initialize the connection to the camera. More... | |
virtual void | disconnect ()=0 |
Disconnect from the camera. More... | |
virtual std::optional< ImageFrame > | get_next_image_frame ()=0 |
A blocking call that waits for one image frame from the camera. More... | |
virtual std::optional< ImuFrame > | get_next_imu_frame ()=0 |
A blocking call that waits for one imu frame from the camera. More... | |
virtual MultiSenseConfig | get_config ()=0 |
Get the current MultiSense configuration. More... | |
virtual Status | set_config (const MultiSenseConfig &config)=0 |
Get set the current MultiSense configuration. More... | |
virtual StereoCalibration | get_calibration ()=0 |
Get the current stereo calibration. More... | |
virtual Status | set_calibration (const StereoCalibration &calibration)=0 |
Set the current stereo calibration. More... | |
virtual MultiSenseInfo | get_info ()=0 |
Get the static information associated with the camera. More... | |
virtual Status | set_device_info (const MultiSenseInfo::DeviceInfo &device_info, const std::string &key)=0 |
Set the camera's device info. More... | |
virtual std::optional< MultiSenseStatus > | get_system_status ()=0 |
Query the current system status. More... | |
virtual Status | set_network_config (const MultiSenseInfo::NetworkInfo &config)=0 |
Update the network configuration of the MultiSense. More... | |
Static Public Member Functions | |
static std::unique_ptr< Channel > | create (const Config &config, const ChannelImplementation &impl=ChannelImplementation::LEGACY) |
Factory create function which allows for switching between different channel implementations. More... | |
Definition at line 46 of file MultiSenseChannel.hh.
|
strong |
Identifiers for the different Channel implementations.
Used for selecting a implementation at runtime
Enumerator | |
---|---|
LEGACY | Use the Legacy MultiSense wire protocol implemented as part of LibMultiSense. |
Definition at line 52 of file MultiSenseChannel.hh.
|
default |
|
delete |
Non-copyable.
|
defaultnoexcept |
Movable.
|
virtualdefault |
|
pure virtual |
Setup user callback that will be invoked whenever a new image frame is received.
|
pure virtual |
Setup user callback that will be invoked whenever a new imu frame is received.
Initialize the connection to the camera.
|
static |
Factory create function which allows for switching between different channel implementations.
|
pure virtual |
Disconnect from the camera.
|
pure virtual |
Get the current stereo calibration.
The output calibration will correspond to the full-resolution operating mode of the camera
|
pure virtual |
Get the current MultiSense configuration.
|
pure virtual |
Get the static information associated with the camera.
|
pure virtual |
A blocking call that waits for one image frame from the camera.
If you’ve set a receive timeout (via Config), it will block until that timeout expires; otherwise, it blocks indefinitely until data arrives.
|
pure virtual |
|
pure virtual |
Query the current system status.
|
pure virtual |
Set the current stereo calibration.
The calibration is expected to be or the full-resolution operating mode of the camera
|
pure virtual |
Get set the current MultiSense configuration.
|
pure virtual |
Set the camera's device info.
This setting is protected via a key since invalid values in the device info can result in internal camera failures
|
pure virtual |
Update the network configuration of the MultiSense.
This will require a hardware reboot of the MultiSense after it's been succeffully applied
|
pure virtual |
Start a collection of data sources streaming from the camera.
|
pure virtual |
Stop specific data sources from streaming from the camera.
An empty collection of sources will stop all sources