Zivid C++ API 2.14.0+e4a0c4a9-1
Zivid::CameraState::Network Class Reference

Current network state. More...

#include <Zivid/CameraState.h>

Classes

class  IPV4
 Current IPv4 protocol state. More...
 
class  LocalInterface
 Current state of the computer's local network interface. More...
 
class  LocalInterfaces
 List of the computer's local network interfaces that discovered the camera. In the most common scenario with the camera connected to the computer with an Ethernet cable, this list will contain only the network interface for that Ethernet port. In more complex network scenarios it can be the case that the camera is discovered by multiple interfaces, and in that case this list will contain multiple network interfaces. However, when CameraState::Status is connected, only the one network interface that has the active TCP/IP connection to the camera will be listed. More...
 

Public Types

using Descendants
 

Public Member Functions

 Network ()
 Default constructor.
 
template<typename... Args>
 Network (Args &&...args)
 Constructor taking variadic number of arguments.
 
template<typename... Args>
void set (Args &&...args)
 Set multiple arguments.
 
template<typename... Args>
Network copyWith (Args &&...args) const
 Returns a copy of this object with the given argument(s) set to the new value(s)
 
const IPV4ipv4 () const
 Get IPV4.
 
IPV4ipv4 ()
 Get IPV4.
 
Networkset (const IPV4 &value)
 Set IPV4.
 
Networkset (const IPV4::Address &value)
 Set IPV4::Address.
 
const LocalInterfaceslocalInterfaces () const
 Get LocalInterfaces.
 
LocalInterfaceslocalInterfaces ()
 Get LocalInterfaces.
 
Networkset (const LocalInterfaces &value)
 Set LocalInterfaces.
 
template<typename T , typename std::enable_if< std::is_same< T, CameraState::Network::IPV4 >::value, int >::type = 0>
const CameraState::Network::IPV4get () const
 
template<typename T , typename std::enable_if< std::is_same< T, CameraState::Network::IPV4::Address >::value, int >::type = 0>
const CameraState::Network::IPV4::Addressget () const
 
template<typename T , typename std::enable_if< std::is_same< T, CameraState::Network::LocalInterfaces >::value, int >::type = 0>
const CameraState::Network::LocalInterfacesget () const
 
template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const CameraState::Network::IPV4get () const
 
template<size_t i, typename std::enable_if< i==1, int >::type = 0>
const CameraState::Network::LocalInterfacesget () 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 Network &other) const
 Equality operator.
 
bool operator!= (const Network &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 char * path { "Network" }
 The full path for this value.
 
static constexpr const char * name { "Network" }
 The name of this value.
 
static constexpr const char * description { R"description(Current network state)description" }
 The description for this value.
 

Friends

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

Detailed Description

Current network state.

Member Typedef Documentation

◆ Descendants

Initial value:
std::tuple<
CameraState::Network::IPV4,
CameraState::Network::IPV4::Address,
CameraState::Network::LocalInterfaces>

Constructor & Destructor Documentation

◆ Network() [1/2]

Zivid::CameraState::Network::Network ( )

Default constructor.

◆ Network() [2/2]

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

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

Member Function Documentation

◆ copyWith()

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

◆ forEach() [1/2]

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

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

◆ get() [1/5]

template<typename T , typename std::enable_if< std::is_same< T, CameraState::Network::IPV4 >::value, int >::type = 0>
const CameraState::Network::IPV4 & Zivid::CameraState::Network::get ( ) const
inline

◆ get() [2/5]

template<typename T , typename std::enable_if< std::is_same< T, CameraState::Network::IPV4::Address >::value, int >::type = 0>
const CameraState::Network::IPV4::Address & Zivid::CameraState::Network::get ( ) const
inline

◆ get() [3/5]

template<typename T , typename std::enable_if< std::is_same< T, CameraState::Network::LocalInterfaces >::value, int >::type = 0>
const CameraState::Network::LocalInterfaces & Zivid::CameraState::Network::get ( ) const
inline

◆ get() [4/5]

template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const CameraState::Network::IPV4 & Zivid::CameraState::Network::get ( ) const
inline

◆ get() [5/5]

template<size_t i, typename std::enable_if< i==1, int >::type = 0>
const CameraState::Network::LocalInterfaces & Zivid::CameraState::Network::get ( ) const
inline

◆ ipv4() [1/2]

IPV4 & Zivid::CameraState::Network::ipv4 ( )
inline

Get IPV4.

◆ ipv4() [2/2]

const IPV4 & Zivid::CameraState::Network::ipv4 ( ) const
inline

Get IPV4.

◆ localInterfaces() [1/2]

LocalInterfaces & Zivid::CameraState::Network::localInterfaces ( )
inline

◆ localInterfaces() [2/2]

const LocalInterfaces & Zivid::CameraState::Network::localInterfaces ( ) const
inline

◆ operator!=()

bool Zivid::CameraState::Network::operator!= ( const Network & other) const

Inequality operator.

◆ operator==()

bool Zivid::CameraState::Network::operator== ( const Network & other) const

Equality operator.

◆ set() [1/4]

template<typename... Args>
void Zivid::CameraState::Network::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 Network. These types can be provided:

◆ set() [2/4]

Network & Zivid::CameraState::Network::set ( const IPV4 & value)
inline

Set IPV4.

◆ set() [3/4]

Network & Zivid::CameraState::Network::set ( const IPV4::Address & value)
inline

◆ set() [4/4]

Network & Zivid::CameraState::Network::set ( const LocalInterfaces & value)
inline

◆ toString()

std::string Zivid::CameraState::Network::toString ( ) const

Get the value as string.

Friends And Related Symbol Documentation

◆ DataModel::Detail::Befriend< Network >

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

◆ operator<<

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

Operator to send the value as string to a stream.

Member Data Documentation

◆ description

const char* Zivid::CameraState::Network::description { R"description(Current network state)description" }
staticconstexpr

The description for this value.

◆ name

const char* Zivid::CameraState::Network::name { "Network" }
staticconstexpr

The name of this value.

◆ nodeType

DataModel::NodeType Zivid::CameraState::Network::nodeType = DataModel::NodeType::group
staticconstexpr

The type of this node.

◆ path

const char* Zivid::CameraState::Network::path { "Network" }
staticconstexpr

The full path for this value.


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