Zivid C++ API 2.14.0+e4a0c4a9-1
Zivid::Settings::Engine Class Reference

Set the Zivid Vision Engine to use. More...

#include <Zivid/Settings.h>

Public Types

enum class  ValueType { phase , stripe , omni , sage }
 The type of the underlying value. More...
 

Public Member Functions

 Engine ()=default
 Default constructor.
 
constexpr Engine (ValueType value)
 Constructor.
 
ValueType value () const
 Get the value.
 
bool hasValue () const
 Check if the value is set.
 
void reset ()
 Reset the node to unset state.
 
std::string toString () const
 Get the value as string.
 
bool operator== (const Engine &other) const
 Comparison operator.
 
bool operator!= (const Engine &other) const
 Comparison operator.
 

Static Public Member Functions

static std::set< ValueTypevalidValues ()
 All valid values of Engine.
 

Static Public Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::leafValue
 The type of this node.
 
static constexpr const char * path { "Engine" }
 The full path for this value.
 
static constexpr const char * name { "Engine" }
 The name of this value.
 
static constexpr const char * description
 The description for this value.
 
static const Engine phase
 phase
 
static const Engine stripe
 stripe
 
static const Engine omni
 omni
 
static const Engine sage
 sage
 

Friends

struct DataModel::Detail::Befriend< Engine >
 
std::ostream & operator<< (std::ostream &stream, const Engine::ValueType &value)
 Operator to serialize ValueType to a stream.
 
std::ostream & operator<< (std::ostream &stream, const Engine &value)
 Operator to serialize the value to a stream.
 

Detailed Description

Set the Zivid Vision Engine to use.

The Phase Engine is the fastest choice in terms of both acquisition time and total capture time, and is a good compromise between quality and speed. The Phase Engine is recommended for objects that are diffuse, opaque, and slightly specular, and is suitable for applications in logistics such as parcel induction.

The Stripe Engine is built for exceptional point cloud quality in scenes with highly specular reflective objects. This makes the engine suitable for applications such as factory automation, manufacturing, and bin picking. Additional acquisition and processing time are required for the Stripe Engine.

The Omni Engine is built for exceptional point cloud quality on all scenes, including scenes with extremely specular reflective objects, as well as transparent objects. This makes the Omni Engine suitable for applications such as piece picking. Same as for the Stripe Engine, it trades off speed for quality. The Omni Engine is only available for Zivid 2+.

The Sage engine is built for use cases that require all points to be correct/accurate with particularly high confidence. This can be very suitable for eliminating problems such as reflection artifacts. This validation comes at the cost of speed, and sometimes reduced number of valid points due to the removal of low-confidence data. The Sage Engine is only available for Zivid 2+R. The Sage Engine is an experimental engine. This involves that it can be changed or removed in the future.

Member Enumeration Documentation

◆ ValueType

The type of the underlying value.

Enumerator
phase 
stripe 
omni 
sage 

Constructor & Destructor Documentation

◆ Engine() [1/2]

Zivid::Settings::Engine::Engine ( )
default

Default constructor.

◆ Engine() [2/2]

Zivid::Settings::Engine::Engine ( ValueType value)
inlineexplicitconstexpr

Constructor.

Member Function Documentation

◆ hasValue()

bool Zivid::Settings::Engine::hasValue ( ) const

Check if the value is set.

◆ operator!=()

bool Zivid::Settings::Engine::operator!= ( const Engine & other) const
inline

Comparison operator.

◆ operator==()

bool Zivid::Settings::Engine::operator== ( const Engine & other) const
inline

Comparison operator.

◆ reset()

void Zivid::Settings::Engine::reset ( )

Reset the node to unset state.

◆ toString()

std::string Zivid::Settings::Engine::toString ( ) const

Get the value as string.

◆ validValues()

static std::set< ValueType > Zivid::Settings::Engine::validValues ( )
inlinestatic

All valid values of Engine.

◆ value()

ValueType Zivid::Settings::Engine::value ( ) const

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

Friends And Related Symbol Documentation

◆ DataModel::Detail::Befriend< Engine >

friend struct DataModel::Detail::Befriend< Engine >
friend

◆ operator<< [1/2]

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

Operator to serialize the value to a stream.

◆ operator<< [2/2]

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

Operator to serialize ValueType to a stream.

Member Data Documentation

◆ description

const char* Zivid::Settings::Engine::description
staticconstexpr
Initial value:
{ R"description(Set the Zivid Vision Engine to use.
The Phase Engine is the fastest choice in terms of both acquisition time and total capture
time, and is a good compromise between quality and speed. The Phase Engine is recommended for
objects that are diffuse, opaque, and slightly specular, and is suitable for applications in
logistics such as parcel induction.
The Stripe Engine is built for exceptional point cloud quality in scenes with highly specular
reflective objects. This makes the engine suitable for applications such as factory automation,
manufacturing, and bin picking. Additional acquisition and processing time are required for
the Stripe Engine.
The Omni Engine is built for exceptional point cloud quality on all scenes, including scenes
with extremely specular reflective objects, as well as transparent objects. This makes the Omni
Engine suitable for applications such as piece picking. Same as for the Stripe Engine, it trades
off speed for quality. The Omni Engine is only available for Zivid 2+.
The Sage engine is built for use cases that require all points to be correct/accurate with
particularly high confidence. This can be very suitable for eliminating problems such as
reflection artifacts. This validation comes at the cost of speed, and sometimes reduced number
of valid points due to the removal of low-confidence data. The Sage Engine is only available
for Zivid 2+R. The Sage Engine is an experimental engine. This involves that it can be changed
or removed in the future.
)description" }

The description for this value.

◆ name

const char* Zivid::Settings::Engine::name { "Engine" }
staticconstexpr

The name of this value.

◆ nodeType

DataModel::NodeType Zivid::Settings::Engine::nodeType = DataModel::NodeType::leafValue
staticconstexpr

The type of this node.

◆ omni

const Engine Zivid::Settings::Engine::omni
static

omni

◆ path

const char* Zivid::Settings::Engine::path { "Engine" }
staticconstexpr

The full path for this value.

◆ phase

const Engine Zivid::Settings::Engine::phase
static

phase

◆ sage

const Engine Zivid::Settings::Engine::sage
static

sage

◆ stripe

const Engine Zivid::Settings::Engine::stripe
static

stripe


The documentation for this class was generated from the following file: