Zivid C++ API 2.13.1+18e79e79-1
Zivid::NetworkConfiguration Class Reference

Network configuration of a camera. More...

#include <Zivid/NetworkConfiguration.h>

Classes

class  IPV4
 IPv4 network configuration. More...
 

Public Types

using Descendants
 

Public Member Functions

 NetworkConfiguration ()
 Default constructor.
 
 NetworkConfiguration (const std::string &fileName)
 Construct NetworkConfiguration by loading from file.
 
std::string serialize () const
 Serialize to a string.
 
template<typename... Args>
 NetworkConfiguration (Args &&...args)
 Constructor taking variadic number of arguments.
 
template<typename... Args>
void set (Args &&...args)
 Set multiple arguments.
 
template<typename... Args>
NetworkConfiguration 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.
 
NetworkConfigurationset (const IPV4 &value)
 Set IPV4.
 
NetworkConfigurationset (const IPV4::Address &value)
 Set IPV4::Address.
 
NetworkConfigurationset (const IPV4::Mode &value)
 Set IPV4::Mode.
 
NetworkConfigurationset (const IPV4::SubnetMask &value)
 Set IPV4::SubnetMask.
 
template<typename T , typename std::enable_if< std::is_same< T, NetworkConfiguration::IPV4 >::value, int >::type = 0>
const NetworkConfiguration::IPV4get () const
 
template<typename T , typename std::enable_if< std::is_same< T, NetworkConfiguration::IPV4::Address >::value, int >::type = 0>
const NetworkConfiguration::IPV4::Addressget () const
 
template<typename T , typename std::enable_if< std::is_same< T, NetworkConfiguration::IPV4::Mode >::value, int >::type = 0>
const NetworkConfiguration::IPV4::Modeget () const
 
template<typename T , typename std::enable_if< std::is_same< T, NetworkConfiguration::IPV4::SubnetMask >::value, int >::type = 0>
const NetworkConfiguration::IPV4::SubnetMaskget () const
 
template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const NetworkConfiguration::IPV4get () 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 NetworkConfiguration &other) const
 Equality operator.
 
bool operator!= (const NetworkConfiguration &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.
 

Static Public Member Functions

static ZIVID_NODISCARD NetworkConfiguration fromSerialized (const std::string &value)
 Construct a new NetworkConfiguration instance from a previously serialized string.
 

Static Public 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 { "NetworkConfiguration" }
 The name of this value.
 
static constexpr const char * description
 The description for this value.
 
static constexpr size_t version { 1 }
 

Friends

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

Detailed Description

Network configuration of a camera.

Member Typedef Documentation

◆ Descendants

Initial value:
std::tuple<
NetworkConfiguration::IPV4,
NetworkConfiguration::IPV4::Address,
NetworkConfiguration::IPV4::Mode,
NetworkConfiguration::IPV4::SubnetMask>

Constructor & Destructor Documentation

◆ NetworkConfiguration() [1/3]

Zivid::NetworkConfiguration::NetworkConfiguration ( )

Default constructor.

◆ NetworkConfiguration() [2/3]

Zivid::NetworkConfiguration::NetworkConfiguration ( const std::string & fileName)
explicit

Construct NetworkConfiguration by loading from file.

◆ NetworkConfiguration() [3/3]

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

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

Member Function Documentation

◆ copyWith()

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

◆ forEach() [1/2]

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

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

◆ fromSerialized()

static ZIVID_NODISCARD NetworkConfiguration Zivid::NetworkConfiguration::fromSerialized ( const std::string & value)
static

Construct a new NetworkConfiguration instance from a previously serialized string.

See also serialize.

◆ get() [1/5]

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

◆ get() [2/5]

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

◆ get() [3/5]

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

◆ get() [4/5]

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

◆ get() [5/5]

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

◆ ipv4() [1/2]

IPV4 & Zivid::NetworkConfiguration::ipv4 ( )
inline

Get IPV4.

◆ ipv4() [2/2]

const IPV4 & Zivid::NetworkConfiguration::ipv4 ( ) const
inline

Get IPV4.

◆ load()

void Zivid::NetworkConfiguration::load ( const std::string & fileName)

Load from the given file.

◆ operator!=()

bool Zivid::NetworkConfiguration::operator!= ( const NetworkConfiguration & other) const

Inequality operator.

◆ operator==()

bool Zivid::NetworkConfiguration::operator== ( const NetworkConfiguration & other) const

Equality operator.

◆ save()

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

Save to the given file.

◆ serialize()

std::string Zivid::NetworkConfiguration::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.

◆ set() [1/5]

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

◆ set() [2/5]

NetworkConfiguration & Zivid::NetworkConfiguration::set ( const IPV4 & value)
inline

Set IPV4.

◆ set() [3/5]

NetworkConfiguration & Zivid::NetworkConfiguration::set ( const IPV4::Address & value)
inline

◆ set() [4/5]

NetworkConfiguration & Zivid::NetworkConfiguration::set ( const IPV4::Mode & value)
inline

Set IPV4::Mode.

◆ set() [5/5]

NetworkConfiguration & Zivid::NetworkConfiguration::set ( const IPV4::SubnetMask & value)
inline

◆ toString()

std::string Zivid::NetworkConfiguration::toString ( ) const

Get the value as string.

Friends And Related Symbol Documentation

◆ DataModel::Detail::Befriend< NetworkConfiguration >

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

◆ operator<<

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

Operator to send the value as string to a stream.

Member Data Documentation

◆ description

const char* Zivid::NetworkConfiguration::description
staticconstexpr
Initial value:
{ R"description(Network configuration of a camera
)description" }

The description for this value.

◆ name

const char* Zivid::NetworkConfiguration::name { "NetworkConfiguration" }
staticconstexpr

The name of this value.

◆ nodeType

DataModel::NodeType Zivid::NetworkConfiguration::nodeType = DataModel::NodeType::group
staticconstexpr

The type of this node.

◆ path

const char* Zivid::NetworkConfiguration::path { "" }
staticconstexpr

The full path for this value.

◆ version

size_t Zivid::NetworkConfiguration::version { 1 }
staticconstexpr

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