Zivid C++ API 2.9.0+4dbba385-1
Defining the Future of 3D Machine Vision
Classes | Public Types | Public Member Functions | Static Public Attributes | Friends | List of all members
Zivid::FrameInfo::SystemInfo Class Reference

Information about the system that captured this frame More...

#include <Zivid/FrameInfo.h>

Classes

class  ComputeDevice
 Compute device More...
 
class  CPU
 CPU More...
 
class  OperatingSystem
 Operating system More...
 

Public Types

using Descendants = std::tuple< FrameInfo::SystemInfo::CPU, FrameInfo::SystemInfo::CPU::Model, FrameInfo::SystemInfo::ComputeDevice, FrameInfo::SystemInfo::ComputeDevice::Model, FrameInfo::SystemInfo::ComputeDevice::Vendor, FrameInfo::SystemInfo::OperatingSystem >
 

Public Member Functions

 SystemInfo ()
 Default constructor More...
 
template<typename... Args>
 SystemInfo (Args &&...args)
 Constructor taking variadic number of arguments More...
 
template<typename... Args>
void set (Args &&...args)
 Set multiple arguments More...
 
template<typename... Args>
SystemInfo copyWith (Args &&...args) const
 Returns a copy of this object with the given argument(s) set to the new value(s) More...
 
const CPUcpu () const
 Get CPU More...
 
CPUcpu ()
 Get CPU More...
 
SystemInfoset (const CPU &value)
 Set CPU More...
 
SystemInfoset (const CPU::Model &value)
 Set CPU::Model More...
 
const ComputeDevicecomputeDevice () const
 Get ComputeDevice More...
 
ComputeDevicecomputeDevice ()
 Get ComputeDevice More...
 
SystemInfoset (const ComputeDevice &value)
 Set ComputeDevice More...
 
SystemInfoset (const ComputeDevice::Model &value)
 Set ComputeDevice::Model More...
 
SystemInfoset (const ComputeDevice::Vendor &value)
 Set ComputeDevice::Vendor More...
 
const OperatingSystemoperatingSystem () const
 Get OperatingSystem More...
 
OperatingSystemoperatingSystem ()
 Get OperatingSystem More...
 
SystemInfoset (const OperatingSystem &value)
 Set OperatingSystem More...
 
template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::CPU >::value, int >::type = 0>
const FrameInfo::SystemInfo::CPUget () const
 
template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::CPU::Model >::value, int >::type = 0>
const FrameInfo::SystemInfo::CPU::Modelget () const
 
template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::ComputeDevice >::value, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDeviceget () const
 
template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::ComputeDevice::Model >::value, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDevice::Modelget () const
 
template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::ComputeDevice::Vendor >::value, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDevice::Vendorget () const
 
template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::OperatingSystem >::value, int >::type = 0>
const FrameInfo::SystemInfo::OperatingSystemget () const
 
template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const FrameInfo::SystemInfo::CPUget () const
 
template<size_t i, typename std::enable_if< i==1, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDeviceget () const
 
template<size_t i, typename std::enable_if< i==2, int >::type = 0>
const FrameInfo::SystemInfo::OperatingSystemget () 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 More...
 
template<typename F >
void forEach (const F &f)
 Run the given function on each direct member with the value of the member as parameter More...
 
bool operator== (const SystemInfo &other) const
 Equality operator More...
 
bool operator!= (const SystemInfo &other) const
 Inequality operator More...
 
std::string toString () const
 Get the value as string More...
 

Static Public Attributes

static constexpr DataModel::NodeType nodeType = DataModel::NodeType::group
 The type of this node More...
 
static constexpr const char * path { "SystemInfo" }
 The full path for this value More...
 
static constexpr const char * name { "SystemInfo" }
 The name of this value More...
 
static constexpr const char * description
 The description for this value More...
 

Friends

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

Detailed Description

Information about the system that captured this frame

Member Typedef Documentation

◆ Descendants

Constructor & Destructor Documentation

◆ SystemInfo() [1/2]

Zivid::FrameInfo::SystemInfo::SystemInfo ( )

Default constructor

◆ SystemInfo() [2/2]

template<typename... Args>
Zivid::FrameInfo::SystemInfo::SystemInfo ( 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 SystemInfo then invoking set(args).

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

Member Function Documentation

◆ computeDevice() [1/2]

ComputeDevice & Zivid::FrameInfo::SystemInfo::computeDevice ( )
inline

◆ computeDevice() [2/2]

const ComputeDevice & Zivid::FrameInfo::SystemInfo::computeDevice ( ) const
inline

◆ copyWith()

template<typename... Args>
SystemInfo Zivid::FrameInfo::SystemInfo::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 SystemInfo 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 SystemInfo. These types can be provided:

◆ cpu() [1/2]

CPU & Zivid::FrameInfo::SystemInfo::cpu ( )
inline

Get CPU

◆ cpu() [2/2]

const CPU & Zivid::FrameInfo::SystemInfo::cpu ( ) const
inline

Get CPU

◆ forEach() [1/2]

template<typename F >
void Zivid::FrameInfo::SystemInfo::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::FrameInfo::SystemInfo::forEach ( const F &  f) const
inline

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

◆ get() [1/9]

template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::CPU >::value, int >::type = 0>
const FrameInfo::SystemInfo::CPU & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [2/9]

template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::CPU::Model >::value, int >::type = 0>
const FrameInfo::SystemInfo::CPU::Model & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [3/9]

template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::ComputeDevice >::value, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDevice & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [4/9]

template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::ComputeDevice::Model >::value, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDevice::Model & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [5/9]

template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::ComputeDevice::Vendor >::value, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDevice::Vendor & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [6/9]

template<typename T , typename std::enable_if< std::is_same< T, FrameInfo::SystemInfo::OperatingSystem >::value, int >::type = 0>
const FrameInfo::SystemInfo::OperatingSystem & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [7/9]

template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const FrameInfo::SystemInfo::CPU & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [8/9]

template<size_t i, typename std::enable_if< i==1, int >::type = 0>
const FrameInfo::SystemInfo::ComputeDevice & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ get() [9/9]

template<size_t i, typename std::enable_if< i==2, int >::type = 0>
const FrameInfo::SystemInfo::OperatingSystem & Zivid::FrameInfo::SystemInfo::get ( ) const
inline

◆ operatingSystem() [1/2]

OperatingSystem & Zivid::FrameInfo::SystemInfo::operatingSystem ( )
inline

◆ operatingSystem() [2/2]

const OperatingSystem & Zivid::FrameInfo::SystemInfo::operatingSystem ( ) const
inline

◆ operator!=()

bool Zivid::FrameInfo::SystemInfo::operator!= ( const SystemInfo other) const

Inequality operator

◆ operator==()

bool Zivid::FrameInfo::SystemInfo::operator== ( const SystemInfo other) const

Equality operator

◆ set() [1/7]

template<typename... Args>
void Zivid::FrameInfo::SystemInfo::set ( Args &&...  args)
inline

Set multiple arguments

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

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

◆ set() [2/7]

SystemInfo & Zivid::FrameInfo::SystemInfo::set ( const ComputeDevice value)
inline

◆ set() [3/7]

SystemInfo & Zivid::FrameInfo::SystemInfo::set ( const ComputeDevice::Model value)
inline

◆ set() [4/7]

SystemInfo & Zivid::FrameInfo::SystemInfo::set ( const ComputeDevice::Vendor value)
inline

◆ set() [5/7]

SystemInfo & Zivid::FrameInfo::SystemInfo::set ( const CPU value)
inline

Set CPU

◆ set() [6/7]

SystemInfo & Zivid::FrameInfo::SystemInfo::set ( const CPU::Model value)
inline

◆ set() [7/7]

SystemInfo & Zivid::FrameInfo::SystemInfo::set ( const OperatingSystem value)
inline

◆ toString()

std::string Zivid::FrameInfo::SystemInfo::toString ( ) const

Get the value as string

Friends And Related Function Documentation

◆ DataModel::Detail::Befriend< SystemInfo >

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

◆ operator<<

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

Operator to send the value as string to a stream

Member Data Documentation

◆ description

constexpr const char* Zivid::FrameInfo::SystemInfo::description
staticconstexpr
Initial value:
{
R"description(Information about the system that captured this frame)description"
}

The description for this value

◆ name

constexpr const char* Zivid::FrameInfo::SystemInfo::name { "SystemInfo" }
staticconstexpr

The name of this value

◆ nodeType

constexpr DataModel::NodeType Zivid::FrameInfo::SystemInfo::nodeType = DataModel::NodeType::group
staticconstexpr

The type of this node

◆ path

constexpr const char* Zivid::FrameInfo::SystemInfo::path { "SystemInfo" }
staticconstexpr

The full path for this value


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