Class VimbaXCamera

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

  • public std::enable_shared_from_this< VimbaXCamera >

Class Documentation

class VimbaXCamera : public std::enable_shared_from_this<VimbaXCamera>

Public Types

enum class Module : std::size_t

Values:

enumerator System
enumerator Interface
enumerator LocalDevice
enumerator RemoteDevice
enumerator Stream
enumerator ModuleMax
enum class StreamState

Values:

enumerator kStopped
enumerator kStarting
enumerator kActive
enumerator kStopping
using EventMetaDataList = std::vector<std::pair<std::string, std::string>>

Public Functions

~VimbaXCamera()
VimbaXCamera(const VimbaXCamera&) = delete
VimbaXCamera &operator=(const VimbaXCamera&) = delete
result<void> start_streaming(int buffer_count, std::function<void(std::shared_ptr<Frame>)> on_frame, bool start_acquisition = true)
result<void> stop_streaming()
bool is_alive() const
bool has_feature(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<std::vector<std::string>> features_list_get(const Module module = Module::RemoteDevice) const
result<bool> feature_command_is_done(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<void> feature_command_run(const std::string_view &name, const std::optional<std::chrono::milliseconds> &timeout = std::nullopt, const Module module = Module::RemoteDevice) const
result<int64_t> feature_int_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<void> feature_int_set(const std::string_view &name, const int64_t value, const Module module = Module::RemoteDevice) const
result<std::array<int64_t, 3>> feature_int_info_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<_Float64> feature_float_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<void> feature_float_set(const std::string_view &name, const _Float64 value, const Module module = Module::RemoteDevice) const
result<feature_float_info> feature_float_info_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<std::string> feature_string_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<void> feature_string_set(const std::string_view &name, const std::string_view value, const Module module = Module::RemoteDevice) const
result<uint32_t> feature_string_info_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<bool> feature_bool_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<void> feature_bool_set(const std::string_view &name, const bool value, const Module module = Module::RemoteDevice) const
result<std::string> feature_enum_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<void> feature_enum_set(const std::string_view &name, const std::string_view &value, const Module module = Module::RemoteDevice) const
result<std::array<std::vector<std::string>, 2>> feature_enum_info_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<int64_t> feature_enum_as_int_get(const std::string_view &name, const std::string_view &option, const Module module = Module::RemoteDevice) const
result<std::string> feature_enum_as_string_get(const std::string_view &name, const int64_t value, const Module module = Module::RemoteDevice) const
result<std::vector<unsigned char>> feature_raw_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<void> feature_raw_set(const std::string_view &name, const std::vector<uint8_t> buffer, const Module module = Module::RemoteDevice) const
result<uint32_t> feature_raw_info_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<std::array<bool, 2>> feature_access_mode_get(const std::string_view &name, const Module module = Module::RemoteDevice) const
result<std::vector<feature_info>> feature_info_query_list(const std::vector<std::string> &names, const Module module = Module::RemoteDevice) const
result<VmbPixelFormatType> get_pixel_format() const
result<VmbCameraInfo> query_camera_info() const
result<VmbFeatureInfo> feature_info_query(const std::string_view &name, Module module = Module::RemoteDevice) const
result<void> settings_load(const std::string_view &file_name)
result<void> settings_save(const std::string_view &file_name)
result<Info> camera_info_get() const
bool is_streaming() const
result<void> feature_invalidation_register(const std::string_view &name, std::function<void(const std::string&)> callback)
result<void> feature_invalidation_unregister(const std::string_view &name)
result<EventMetaDataList> get_event_meta_data(const std::string_view &name)

Public Static Functions

static std::shared_ptr<VimbaXCamera> open(std::shared_ptr<VmbCAPI> api, const std::string &name = {})
class Frame : public sensor_msgs::msg::Image, public std::enable_shared_from_this<Frame>

Public Functions

~Frame()
Frame(const Frame&) = delete
Frame &operator=(const Frame&) = delete
void set_callback(std::function<void(std::shared_ptr<Frame>)> callback)
int32_t queue() const
std::string get_image_encoding() const
int64_t get_frame_id() const
uint64_t get_timestamp_ns() const
void on_frame_ready()

Public Static Functions

static result<std::shared_ptr<Frame>> create(std::shared_ptr<VimbaXCamera> camera, size_t size, size_t alignment = 1)
struct Info

Public Members

std::string display_name
std::string model_name
std::string firmware_version
std::string device_id
std::string device_user_id
std::string device_serial_number
std::string interface_id
std::string transport_layer_id
std::optional<std::string> ip_address = {std::nullopt}
std::optional<std::string> mac_address = {std::nullopt}
bool streaming
uint32_t width
uint32_t height
double frame_rate
std::string pixel_format
std::vector<TriggerInfo> trigger_info
struct TriggerInfo

Public Functions

inline TriggerInfo(std::string selector, std::string mode, std::string source)

Public Members

std::string selector
std::string mode
std::string source