Zivid C++ API 2.12.0+6afd4961-1
Classes | Public Types | Public Member Functions | Static Public Attributes | Friends | List of all members
Zivid::Settings::RegionOfInterest Class Reference

Removes points outside the region of interest. More...

#include <Zivid/Settings.h>

Classes

class  Box
 Removes points outside the given three-dimensional box. More...
 
class  Depth
 Removes points that reside outside of a depth range, meaning that their Z coordinate falls above a given maximum or below a given minimum. More...
 

Public Types

using Descendants
 

Public Member Functions

 RegionOfInterest ()
 Default constructor.
 
template<typename... Args>
 RegionOfInterest (Args &&...args)
 Constructor taking variadic number of arguments.
 
template<typename... Args>
void set (Args &&...args)
 Set multiple arguments.
 
template<typename... Args>
RegionOfInterest copyWith (Args &&...args) const
 Returns a copy of this object with the given argument(s) set to the new value(s)
 
const Boxbox () const
 Get Box.
 
Boxbox ()
 Get Box.
 
RegionOfInterestset (const Box &value)
 Set Box.
 
RegionOfInterestset (const Box::Enabled &value)
 Set Box::Enabled.
 
RegionOfInterestset (const Box::Extents &value)
 Set Box::Extents.
 
RegionOfInterestset (const Box::PointA &value)
 Set Box::PointA.
 
RegionOfInterestset (const Box::PointB &value)
 Set Box::PointB.
 
RegionOfInterestset (const Box::PointO &value)
 Set Box::PointO.
 
const Depthdepth () const
 Get Depth.
 
Depthdepth ()
 Get Depth.
 
RegionOfInterestset (const Depth &value)
 Set Depth.
 
RegionOfInterestset (const Depth::Enabled &value)
 Set Depth::Enabled.
 
RegionOfInterestset (const Depth::Range &value)
 Set Depth::Range.
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box >::value, int >::type = 0>
const Settings::RegionOfInterest::Boxget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::Enabled >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::Enabledget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::Extents >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::Extentsget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::PointA >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::PointAget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::PointB >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::PointBget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::PointO >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::PointOget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Depth >::value, int >::type = 0>
const Settings::RegionOfInterest::Depthget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Depth::Enabled >::value, int >::type = 0>
const Settings::RegionOfInterest::Depth::Enabledget () const
 
template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Depth::Range >::value, int >::type = 0>
const Settings::RegionOfInterest::Depth::Rangeget () const
 
template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const Settings::RegionOfInterest::Boxget () const
 
template<size_t i, typename std::enable_if< i==1, int >::type = 0>
const Settings::RegionOfInterest::Depthget () const
 
template<typename F >
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 >
void forEach (const F &f)
 Run the given function on each direct member with the value of the member as parameter.
 
bool operator== (const RegionOfInterest &other) const
 Equality operator.
 
bool operator!= (const RegionOfInterest &other) const
 Inequality operator.
 
std::string toString () const
 Get the value as string.
 

Static Public Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::group
 The type of this node.
 
static constexpr const charpath { "RegionOfInterest" }
 The full path for this value.
 
static constexpr const charname { "RegionOfInterest" }
 The name of this value.
 
static constexpr const chardescription
 The description for this value.
 

Friends

struct DataModel::Detail::Befriend< RegionOfInterest >
 
std::ostream & operator<< (std::ostream &stream, const RegionOfInterest &value)
 Operator to send the value as string to a stream.
 

Detailed Description

Removes points outside the region of interest.

Member Typedef Documentation

◆ Descendants

Initial value:
std::tuple<
Settings::RegionOfInterest::Box,
Settings::RegionOfInterest::Box::Enabled,
Settings::RegionOfInterest::Box::Extents,
Settings::RegionOfInterest::Box::PointA,
Settings::RegionOfInterest::Box::PointB,
Settings::RegionOfInterest::Box::PointO,
Settings::RegionOfInterest::Depth,
Settings::RegionOfInterest::Depth::Enabled,
Settings::RegionOfInterest::Depth::Range>

Constructor & Destructor Documentation

◆ RegionOfInterest() [1/2]

Zivid::Settings::RegionOfInterest::RegionOfInterest ( )

Default constructor.

◆ RegionOfInterest() [2/2]

template<typename... Args>
Zivid::Settings::RegionOfInterest::RegionOfInterest ( Args &&... args)
inlineexplicit

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 RegionOfInterest then invoking set(args).

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

Member Function Documentation

◆ box() [1/2]

Box & Zivid::Settings::RegionOfInterest::box ( )
inline

Get Box.

◆ box() [2/2]

const Box & Zivid::Settings::RegionOfInterest::box ( ) const
inline

Get Box.

◆ copyWith()

template<typename... Args>
RegionOfInterest Zivid::Settings::RegionOfInterest::copyWith ( Args &&... args) const
inline

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

Creates a copy of this RegionOfInterest 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 RegionOfInterest. These types can be provided:

◆ depth() [1/2]

Depth & Zivid::Settings::RegionOfInterest::depth ( )
inline

Get Depth.

◆ depth() [2/2]

const Depth & Zivid::Settings::RegionOfInterest::depth ( ) const
inline

Get Depth.

◆ forEach() [1/2]

template<typename F >
void Zivid::Settings::RegionOfInterest::forEach ( const F & f)
inline

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

◆ forEach() [2/2]

template<typename F >
void Zivid::Settings::RegionOfInterest::forEach ( const F & f) const
inline

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

◆ get() [1/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box >::value, int >::type = 0>
const Settings::RegionOfInterest::Box & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [2/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::Enabled >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::Enabled & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [3/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::Extents >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::Extents & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [4/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::PointA >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::PointA & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [5/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::PointB >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::PointB & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [6/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Box::PointO >::value, int >::type = 0>
const Settings::RegionOfInterest::Box::PointO & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [7/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Depth >::value, int >::type = 0>
const Settings::RegionOfInterest::Depth & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [8/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Depth::Enabled >::value, int >::type = 0>
const Settings::RegionOfInterest::Depth::Enabled & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [9/11]

template<typename T , typename std::enable_if< std::is_same< T, Settings::RegionOfInterest::Depth::Range >::value, int >::type = 0>
const Settings::RegionOfInterest::Depth::Range & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [10/11]

template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const Settings::RegionOfInterest::Box & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ get() [11/11]

template<size_t i, typename std::enable_if< i==1, int >::type = 0>
const Settings::RegionOfInterest::Depth & Zivid::Settings::RegionOfInterest::get ( ) const
inline

◆ operator!=()

Inequality operator.

◆ operator==()

Equality operator.

◆ set() [1/10]

template<typename... Args>
void Zivid::Settings::RegionOfInterest::set ( Args &&... args)
inline

◆ set() [2/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Box & value)
inline

Set Box.

◆ set() [3/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Box::Enabled & value)
inline

◆ set() [4/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Box::Extents & value)
inline

◆ set() [5/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Box::PointA & value)
inline

◆ set() [6/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Box::PointB & value)
inline

◆ set() [7/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Box::PointO & value)
inline

◆ set() [8/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Depth & value)
inline

Set Depth.

◆ set() [9/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Depth::Enabled & value)
inline

◆ set() [10/10]

RegionOfInterest & Zivid::Settings::RegionOfInterest::set ( const Depth::Range & value)
inline

◆ toString()

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

Get the value as string.

Friends And Related Symbol Documentation

◆ DataModel::Detail::Befriend< RegionOfInterest >

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

◆ operator<<

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

Operator to send the value as string to a stream.

Member Data Documentation

◆ description

constexpr const char* Zivid::Settings::RegionOfInterest::description
staticconstexpr
Initial value:
{ R"description(Removes points outside the region of interest.
)description" }

The description for this value.

◆ name

constexpr const char* Zivid::Settings::RegionOfInterest::name { "RegionOfInterest" }
staticconstexpr

The name of this value.

◆ nodeType

constexpr DataModel::NodeType Zivid::Settings::RegionOfInterest::nodeType = DataModel::NodeType::group
staticconstexpr

The type of this node.

◆ path

constexpr const char* Zivid::Settings::RegionOfInterest::path { "RegionOfInterest" }
staticconstexpr

The full path for this value.


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