CameraInfo

Read-only metadata about a connected camera (model, serial, firmware revisions, …).

class CameraInfo

Information about camera model, serial number etc.

Public Functions

CameraInfo()

Default constructor.

explicit CameraInfo(const std::string &fileName)

Construct CameraInfo by loading from file.

std::string serialize() const

Serialize to a string.

See also fromSerialized. The returned string is formatted in YAML, and is compatible with the contents of files saved using save.

template<typename ...Args>
inline explicit CameraInfo(Args&&... args)

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing CameraInfo then invoking set(args).

The provided arguments must be descendants of CameraInfo. These types can be provided:

template<typename ...Args>
inline void set(Args&&... args)

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of CameraInfo. These types can be provided:

template<typename ...Args>
inline CameraInfo copyWith(Args&&... args) const

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this CameraInfo object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of CameraInfo. These types can be provided:

inline const FirmwareVersion &firmwareVersion() const

Get FirmwareVersion.

inline FirmwareVersion &firmwareVersion()

Get FirmwareVersion.

inline CameraInfo &set(const FirmwareVersion &value)

Set FirmwareVersion.

inline const HardwareRevision &hardwareRevision() const

Get HardwareRevision.

inline HardwareRevision &hardwareRevision()

Get HardwareRevision.

inline CameraInfo &set(const HardwareRevision &value)

Set HardwareRevision.

inline const Model &model() const

Get Model.

inline Model &model()

Get Model.

inline CameraInfo &set(const Model &value)

Set Model.

inline const ModelName &modelName() const

Get ModelName.

inline ModelName &modelName()

Get ModelName.

inline CameraInfo &set(const ModelName &value)

Set ModelName.

inline const Revision &revision() const

Get Revision.

inline Revision &revision()

Get Revision.

inline CameraInfo &set(const Revision &value)

Set Revision.

inline CameraInfo &set(const Revision::Major &value)

Set Revision::Major.

inline CameraInfo &set(const Revision::Minor &value)

Set Revision::Minor.

inline const SerialNumber &serialNumber() const

Get SerialNumber.

inline SerialNumber &serialNumber()

Get SerialNumber.

inline CameraInfo &set(const SerialNumber &value)

Set SerialNumber.

inline const UserData &userData() const

Get UserData.

inline UserData &userData()

Get UserData.

inline CameraInfo &set(const UserData &value)

Set UserData.

inline CameraInfo &set(const UserData::MaxSizeBytes &value)

Set UserData::MaxSizeBytes.

template<typename F>
inline void forEach(const F &f) const

Run the given function on each direct member with the value of the member as parameter.

template<typename F>
inline void forEach(const F &f)

Run the given function on each direct member with the value of the member as parameter.

bool operator==(const CameraInfo &other) const

Equality operator.

bool operator!=(const CameraInfo &other) const

Inequality operator.

std::string toString() const

Get the value as string.

void save(const std::string &fileName) const

Save to the given file.

void load(const std::string &fileName)

Load from the given file.

Public Static Functions

static CameraInfo fromSerialized(const std::string &value)

Construct a new CameraInfo instance from a previously serialized string.

See also serialize.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::group

The type of this node.

static constexpr const char *path = {""}

The full path for this value.

static constexpr const char *name = {"CameraInfo"}

The name of this value.

static constexpr const char * description  {R"description(Information about cameramodel, serial number etc.)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const CameraInfo &value)

Operator to send the value as string to a stream.

class FirmwareVersion

The firmware version on the camera.

Public Types

using ValueType = std::string

The type of the underlying value.

Public Functions

FirmwareVersion() = default

Default constructor.

inline explicit FirmwareVersion(std::string value)

Constructor.

const std::string &value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const FirmwareVersion &other) const

Comparison operator.

inline bool operator!=(const FirmwareVersion &other) const

Comparison operator.

inline bool operator<(const FirmwareVersion &other) const

Comparison operator.

inline bool operator>(const FirmwareVersion &other) const

Comparison operator.

inline bool operator<=(const FirmwareVersion &other) const

Comparison operator.

inline bool operator>=(const FirmwareVersion &other) const

Comparison operator.

Public Static Functions

static inline constexpr Range<ValueType::size_type> validSize()

The valid sizes for FirmwareVersion.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"FirmwareVersion"}

The full path for this value.

static constexpr const char *name = {"FirmwareVersion"}

The name of this value.

static constexpr const char * description   = { R"description(The firmware version on the camera)description" }

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const FirmwareVersion &value)

Operator to serialize the value to a stream.

class HardwareRevision

Hardware revision of this camera.

This corresponds to the revision string that is printed on the product label.

Public Types

using ValueType = std::string

The type of the underlying value.

Public Functions

HardwareRevision() = default

Default constructor.

inline explicit HardwareRevision(std::string value)

Constructor.

const std::string &value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const HardwareRevision &other) const

Comparison operator.

inline bool operator!=(const HardwareRevision &other) const

Comparison operator.

inline bool operator<(const HardwareRevision &other) const

Comparison operator.

inline bool operator>(const HardwareRevision &other) const

Comparison operator.

inline bool operator<=(const HardwareRevision &other) const

Comparison operator.

inline bool operator>=(const HardwareRevision &other) const

Comparison operator.

Public Static Functions

static inline constexpr Range<ValueType::size_type> validSize()

The valid sizes for HardwareRevision.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"HardwareRevision"}

The full path for this value.

static constexpr const char *name = {"HardwareRevision"}

The name of this value.

static constexpr const char * description  {R"description(Hardwarerevision of this camera. This corresponds to the revisionstring that is printed on the productlabel.)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const HardwareRevision &value)

Operator to serialize the value to a stream.

class Model

The model of the camera.

Public Types

enum class ValueType

The type of the underlying value.

Values:

enumerator zividOnePlusSmall
enumerator zividOnePlusMedium
enumerator zividOnePlusLarge
enumerator zividTwo
enumerator zividTwoL100
enumerator zivid2PlusM130
enumerator zivid2PlusM60
enumerator zivid2PlusL110
enumerator zivid2PlusMR130
enumerator zivid2PlusMR60
enumerator zivid2PlusLR110
enumerator zivid3XL250
enumerator zivid4Trino
enumerator zivid4Quadro
enumerator zivid4Orion
enumerator zivid4Lyra

Public Functions

Model() = default

Default constructor.

inline explicit constexpr Model(ValueType value)

Constructor.

ValueType value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const Model &other) const

Comparison operator.

inline bool operator!=(const Model &other) const

Comparison operator.

Public Static Functions

static inline std::set<ValueType> validValues()

All valid values of Model.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"Model"}

The full path for this value.

static constexpr const char *name = {"Model"}

The name of this value.

static constexpr const char * description   = { R"description(The model of the camera)description" }

The description for this value.

static const Model zividOnePlusSmall

zividOnePlusSmall

static const Model zividOnePlusMedium

zividOnePlusMedium

static const Model zividOnePlusLarge

zividOnePlusLarge

static const Model zividTwo

zividTwo

static const Model zividTwoL100

zividTwoL100

static const Model zivid2PlusM130

zivid2PlusM130

static const Model zivid2PlusM60

zivid2PlusM60

static const Model zivid2PlusL110

zivid2PlusL110

static const Model zivid2PlusMR130

zivid2PlusMR130

static const Model zivid2PlusMR60

zivid2PlusMR60

static const Model zivid2PlusLR110

zivid2PlusLR110

static const Model zivid3XL250

zivid3XL250

static const Model zivid4Trino

zivid4Trino

static const Model zivid4Quadro

zivid4Quadro

static const Model zivid4Orion

zivid4Orion

static const Model zivid4Lyra

zivid4Lyra

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const Model::ValueType &value)

Operator to serialize ValueType to a stream.

inline friend std::ostream &operator<<(std::ostream &stream, const Model &value)

Operator to serialize the value to a stream.

class ModelName

The model name of the camera.

This is a user-friendly display name that may contain spaces and special characters. We recommend to use Model instead if you want to programmatically check for camera model.

Public Types

using ValueType = std::string

The type of the underlying value.

Public Functions

ModelName() = default

Default constructor.

inline explicit ModelName(std::string value)

Constructor.

const std::string &value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const ModelName &other) const

Comparison operator.

inline bool operator!=(const ModelName &other) const

Comparison operator.

inline bool operator<(const ModelName &other) const

Comparison operator.

inline bool operator>(const ModelName &other) const

Comparison operator.

inline bool operator<=(const ModelName &other) const

Comparison operator.

inline bool operator>=(const ModelName &other) const

Comparison operator.

Public Static Functions

static inline constexpr Range<ValueType::size_type> validSize()

The valid sizes for ModelName.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"ModelName"}

The full path for this value.

static constexpr const char *name = {"ModelName"}

The name of this value.

static constexpr const char * description  {R"description(Themodel name of the camera. This is a user-friendly display namethat may contain spaces and specialcharacters. We recommend to use `Model` instead if you want to programmatically check for camera model.)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const ModelName &value)

Operator to serialize the value to a stream.

class Revision

Major/Minor hardware revision number.

This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevision instead.

Public Functions

Revision()

Default constructor.

template<typename ...Args>
inline explicit Revision(Args&&... args)

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing Revision then invoking set(args).

The provided arguments must be descendants of Revision. These types can be provided:

template<typename ...Args>
inline void set(Args&&... args)

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of Revision. These types can be provided:

template<typename ...Args>
inline Revision copyWith(Args&&... args) const

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this Revision object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of Revision. These types can be provided:

inline const Major &major() const

Get Major.

inline Major &major()

Get Major.

inline Revision &set(const Major &value)

Set Major.

inline const Minor &minor() const

Get Minor.

inline Minor &minor()

Get Minor.

inline Revision &set(const Minor &value)

Set Minor.

template<typename F>
inline void forEach(const F &f) const

Run the given function on each direct member with the value of the member as parameter.

template<typename F>
inline void forEach(const F &f)

Run the given function on each direct member with the value of the member as parameter.

bool operator==(const Revision &other) const

Equality operator.

bool operator!=(const Revision &other) const

Inequality operator.

std::string toString() const

Get the value as string.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::group

The type of this node.

static constexpr const char *path = {"Revision"}

The full path for this value.

static constexpr const char *name = {"Revision"}

The name of this value.

static constexpr const char * description  {R"description(Major/Minor hardware revision number. This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevisioninstead.)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const Revision &value)

Operator to send the value as string to a stream.

class Major

Major hardware revision number.

This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevision instead.

Public Types

using ValueType = uint32_t

The type of the underlying value.

Public Functions

Major() = default

Default constructor.

inline explicit constexpr Major(uint32_t value)

Constructor.

uint32_t value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const Major &other) const

Comparison operator.

inline bool operator!=(const Major &other) const

Comparison operator.

inline bool operator<(const Major &other) const

Comparison operator.

inline bool operator>(const Major &other) const

Comparison operator.

inline bool operator<=(const Major &other) const

Comparison operator.

inline bool operator>=(const Major &other) const

Comparison operator.

Public Static Functions

static inline constexpr Range<uint32_t> validRange()

The range of valid values for Major.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"Revision/Major"}

The full path for this value.

static constexpr const char *name = {"Major"}

The name of this value.

static constexpr const char * description  {R"description(Major hardware revision number. This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevisioninstead.)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const Major &value)

Operator to serialize the value to a stream.

class Minor

Minor hardware revision number.

This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevision instead.

Public Types

using ValueType = uint32_t

The type of the underlying value.

Public Functions

Minor() = default

Default constructor.

inline explicit constexpr Minor(uint32_t value)

Constructor.

uint32_t value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const Minor &other) const

Comparison operator.

inline bool operator!=(const Minor &other) const

Comparison operator.

inline bool operator<(const Minor &other) const

Comparison operator.

inline bool operator>(const Minor &other) const

Comparison operator.

inline bool operator<=(const Minor &other) const

Comparison operator.

inline bool operator>=(const Minor &other) const

Comparison operator.

Public Static Functions

static inline constexpr Range<uint32_t> validRange()

The range of valid values for Minor.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"Revision/Minor"}

The full path for this value.

static constexpr const char *name = {"Minor"}

The name of this value.

static constexpr const char * description  {R"description(Minor hardware revision number. This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevisioninstead.)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const Minor &value)

Operator to serialize the value to a stream.

class SerialNumber

The serial number of the camera.

Public Types

using ValueType = std::string

The type of the underlying value.

Public Functions

SerialNumber() = default

Default constructor.

inline explicit SerialNumber(std::string value)

Constructor.

const std::string &value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const SerialNumber &other) const

Comparison operator.

inline bool operator!=(const SerialNumber &other) const

Comparison operator.

inline bool operator<(const SerialNumber &other) const

Comparison operator.

inline bool operator>(const SerialNumber &other) const

Comparison operator.

inline bool operator<=(const SerialNumber &other) const

Comparison operator.

inline bool operator>=(const SerialNumber &other) const

Comparison operator.

Public Static Functions

static inline constexpr Range<ValueType::size_type> validSize()

The valid sizes for SerialNumber.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"SerialNumber"}

The full path for this value.

static constexpr const char *name = {"SerialNumber"}

The name of this value.

static constexpr const char * description   = { R"description(The serial number of the camera)description" }

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const SerialNumber &value)

Operator to serialize the value to a stream.

class UserData

Information about user data capabilities of the camera.

Public Functions

UserData()

Default constructor.

template<typename ...Args>
inline explicit UserData(Args&&... args)

Constructor taking variadic number of arguments.

One or more descendant types can be provided. All types not provided will be set to their default value. The result is the same as default constructing UserData then invoking set(args).

The provided arguments must be descendants of UserData. These types can be provided:

template<typename ...Args>
inline void set(Args&&... args)

Set multiple arguments.

The method invokes set(arg) with each of the provided arguments.

The provided arguments must be descendants of UserData. These types can be provided:

template<typename ...Args>
inline UserData copyWith(Args&&... args) const

Returns a copy of this object with the given argument(s) set to the new value(s)

Creates a copy of this UserData object, then invokes set(args) on the copy, and finally returns the copy. This method does not modify the original object.

The provided arguments must be descendants of UserData. These types can be provided:

inline const MaxSizeBytes &maxSizeBytes() const

Get MaxSizeBytes.

inline MaxSizeBytes &maxSizeBytes()

Get MaxSizeBytes.

inline UserData &set(const MaxSizeBytes &value)

Set MaxSizeBytes.

template<typename F>
inline void forEach(const F &f) const

Run the given function on each direct member with the value of the member as parameter.

template<typename F>
inline void forEach(const F &f)

Run the given function on each direct member with the value of the member as parameter.

bool operator==(const UserData &other) const

Equality operator.

bool operator!=(const UserData &other) const

Inequality operator.

std::string toString() const

Get the value as string.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::group

The type of this node.

static constexpr const char *path = {"UserData"}

The full path for this value.

static constexpr const char *name = {"UserData"}

The name of this value.

static constexpr const char * description  {R"description(Information about user data capabilities of the camera)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const UserData &value)

Operator to send the value as string to a stream.

class MaxSizeBytes

The maximum number of bytes of user data that can be stored in the camera.

Public Types

using ValueType = uint64_t

The type of the underlying value.

Public Functions

MaxSizeBytes() = default

Default constructor.

inline explicit constexpr MaxSizeBytes(uint64_t value)

Constructor.

uint64_t value() const

Get the value.

std::string toString() const

Get the value as string.

inline bool operator==(const MaxSizeBytes &other) const

Comparison operator.

inline bool operator!=(const MaxSizeBytes &other) const

Comparison operator.

inline bool operator<(const MaxSizeBytes &other) const

Comparison operator.

inline bool operator>(const MaxSizeBytes &other) const

Comparison operator.

inline bool operator<=(const MaxSizeBytes &other) const

Comparison operator.

inline bool operator>=(const MaxSizeBytes &other) const

Comparison operator.

Public Static Functions

static inline constexpr Range<uint64_t> validRange()

The range of valid values for MaxSizeBytes.

Public Static Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue

The type of this node.

static constexpr const char *path = {"UserData/MaxSizeBytes"}

The full path for this value.

static constexpr const char *name = {"MaxSizeBytes"}

The name of this value.

static constexpr const char * description  {R"description(The maximum number of bytes of user data that can be stored in the camera)description"}

The description for this value.

Friends

inline friend std::ostream &operator<<(std::ostream &stream, const MaxSizeBytes &value)

Operator to serialize the value to a stream.

struct CameraInfo

Information about camera model, serial number etc.

Public Types

enum class ModelOption : std::underlying_type<Zivid::CameraInfo::Model::ValueType>::type

The model of the camera.

Values:

enumerator ZividOnePlusSmall
enumerator ZividOnePlusMedium
enumerator ZividOnePlusLarge
enumerator ZividTwo
enumerator ZividTwoL100
enumerator Zivid2PlusM130
enumerator Zivid2PlusM60
enumerator Zivid2PlusL110
enumerator Zivid2PlusMR130
enumerator Zivid2PlusMR60
enumerator Zivid2PlusLR110
enumerator Zivid3XL250
enumerator Zivid4Trino
enumerator Zivid4Quadro
enumerator Zivid4Orion
enumerator Zivid4Lyra

Public Functions

System::String ^ Serialize ()

Serialize to a string.

See also FromSerialized. The returned string is formatted in YAML, and is compatible with the contents of files saved using Save.

void Save (System::String ^ fileName)

Save to the given file.

void Load (System::String ^ fileName)

Load from the given file.

inline CameraInfo()

Constructor.

CameraInfo ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

CameraInfo ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

System::String^ FirmwareVersion

The firmware version on the camera.

System::String^ HardwareRevision

Hardware revision of this camera.

This corresponds to the revision string that is printed on the product label.

ModelOption Model

The model of the camera.

System::String^ ModelName

The model name of the camera.

This is a user-friendly display name that may contain spaces and special characters. We recommend to use Model instead if you want to programmatically check for camera model.

System::String^ SerialNumber

The serial number of the camera.

Public Static Attributes

static CameraInfo(System::String ^ fileName) CameraInfo FromSerialized )(System::String ^ value)

Construct CameraInfo by loading from file.

Construct a new CameraInfo instance from a previously serialized string

See also Serialize.

struct RevisionGroup

Major/Minor hardware revision number.

This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevision instead.

Public Functions

inline RevisionGroup()

Constructor.

RevisionGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

RevisionGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

uint32_t Major

Major hardware revision number.

This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevision instead.

uint32_t Minor

Minor hardware revision number.

This field is deprecated and may be removed in a future version of the SDK. Please use HardwareRevision instead.

struct UserDataGroup

Information about user data capabilities of the camera.

Public Functions

inline UserDataGroup()

Constructor.

UserDataGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

UserDataGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

uint64_t MaxSizeBytes

The maximum number of bytes of user data that can be stored in the camera.

See zivid.CameraInfo in zivid-python.