Zivid C++ API 2.18.0+1b44dbef-1
Zivid::Frame2DStreamStatistics Class Reference

Streaming performance statistics for Frame2DGrabber. More...

#include <Zivid/Frame2DStreamStatistics.h>

Classes

class  AverageGrabInterval
 Average interval between successfully grabbed streamed frames. More...
class  AverageGrabRateHz
 Average rate of successfully grabbed streamed frames in frames per second. More...
class  KernelComputeTime
 Average kernel compute time on the GPU per streamed frame. More...
class  NumberOfFramesUsedForStatistics
 Number of streamed frames included in the stream-level averages. More...

Public Types

using Descendants

Public Member Functions

 Frame2DStreamStatistics ()
 Default constructor.
 Frame2DStreamStatistics (const std::string &fileName)
 Construct Frame2DStreamStatistics by loading from file.
std::string serialize () const
 Serialize to a string.
template<typename... Args>
 Frame2DStreamStatistics (Args &&...args)
 Constructor taking variadic number of arguments.
template<typename... Args>
void set (Args &&...args)
 Set multiple arguments.
template<typename... Args>
Frame2DStreamStatistics copyWith (Args &&...args) const
 Returns a copy of this object with the given argument(s) set to the new value(s)
const AverageGrabIntervalaverageGrabInterval () const
 Get AverageGrabInterval.
AverageGrabIntervalaverageGrabInterval ()
 Get AverageGrabInterval.
Frame2DStreamStatisticsset (const AverageGrabInterval &value)
 Set AverageGrabInterval.
const AverageGrabRateHzaverageGrabRateHz () const
 Get AverageGrabRateHz.
AverageGrabRateHzaverageGrabRateHz ()
 Get AverageGrabRateHz.
Frame2DStreamStatisticsset (const AverageGrabRateHz &value)
 Set AverageGrabRateHz.
const KernelComputeTimekernelComputeTime () const
 Get KernelComputeTime.
KernelComputeTimekernelComputeTime ()
 Get KernelComputeTime.
Frame2DStreamStatisticsset (const KernelComputeTime &value)
 Set KernelComputeTime.
const NumberOfFramesUsedForStatisticsnumberOfFramesUsedForStatistics () const
 Get NumberOfFramesUsedForStatistics.
NumberOfFramesUsedForStatisticsnumberOfFramesUsedForStatistics ()
 Get NumberOfFramesUsedForStatistics.
Frame2DStreamStatisticsset (const NumberOfFramesUsedForStatistics &value)
 Set NumberOfFramesUsedForStatistics.
template<typename T, typename std::enable_if< std::is_same< T, Frame2DStreamStatistics::AverageGrabInterval >::value, int >::type = 0>
const Frame2DStreamStatistics::AverageGrabIntervalget () const
template<typename T, typename std::enable_if< std::is_same< T, Frame2DStreamStatistics::AverageGrabRateHz >::value, int >::type = 0>
const Frame2DStreamStatistics::AverageGrabRateHzget () const
template<typename T, typename std::enable_if< std::is_same< T, Frame2DStreamStatistics::KernelComputeTime >::value, int >::type = 0>
const Frame2DStreamStatistics::KernelComputeTimeget () const
template<typename T, typename std::enable_if< std::is_same< T, Frame2DStreamStatistics::NumberOfFramesUsedForStatistics >::value, int >::type = 0>
const Frame2DStreamStatistics::NumberOfFramesUsedForStatisticsget () const
template<size_t i, typename std::enable_if< i==0, int >::type = 0>
const Frame2DStreamStatistics::AverageGrabIntervalget () const
template<size_t i, typename std::enable_if< i==1, int >::type = 0>
const Frame2DStreamStatistics::AverageGrabRateHzget () const
template<size_t i, typename std::enable_if< i==2, int >::type = 0>
const Frame2DStreamStatistics::KernelComputeTimeget () const
template<size_t i, typename std::enable_if< i==3, int >::type = 0>
const Frame2DStreamStatistics::NumberOfFramesUsedForStatisticsget () 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 Frame2DStreamStatistics &other) const
 Equality operator.
bool operator!= (const Frame2DStreamStatistics &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 Frame2DStreamStatistics fromSerialized (const std::string &value)
 Construct a new Frame2DStreamStatistics 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 { "Frame2DStreamStatistics" }
 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< Frame2DStreamStatistics >
std::ostream & operator<< (std::ostream &stream, const Frame2DStreamStatistics &value)
 Operator to send the value as string to a stream.

Detailed Description

Streaming performance statistics for Frame2DGrabber.

Member Typedef Documentation

◆ Descendants

Initial value:
std::tuple<
Average interval between successfully grabbed streamed frames.
Definition Frame2DStreamStatistics.h:112
Average rate of successfully grabbed streamed frames in frames per second.
Definition Frame2DStreamStatistics.h:205
Average kernel compute time on the GPU per streamed frame.
Definition Frame2DStreamStatistics.h:298
Number of streamed frames included in the stream-level averages.
Definition Frame2DStreamStatistics.h:391

Constructor & Destructor Documentation

◆ Frame2DStreamStatistics() [1/3]

Zivid::Frame2DStreamStatistics::Frame2DStreamStatistics ( )

Default constructor.

◆ Frame2DStreamStatistics() [2/3]

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

Construct Frame2DStreamStatistics by loading from file.

◆ Frame2DStreamStatistics() [3/3]

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

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

Member Function Documentation

◆ averageGrabInterval() [1/2]

AverageGrabInterval & Zivid::Frame2DStreamStatistics::averageGrabInterval ( )
inline

◆ averageGrabInterval() [2/2]

const AverageGrabInterval & Zivid::Frame2DStreamStatistics::averageGrabInterval ( ) const
inline

◆ averageGrabRateHz() [1/2]

AverageGrabRateHz & Zivid::Frame2DStreamStatistics::averageGrabRateHz ( )
inline

◆ averageGrabRateHz() [2/2]

const AverageGrabRateHz & Zivid::Frame2DStreamStatistics::averageGrabRateHz ( ) const
inline

◆ copyWith()

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

◆ forEach() [1/2]

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

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

◆ fromSerialized()

Frame2DStreamStatistics Zivid::Frame2DStreamStatistics::fromSerialized ( const std::string & value)
staticnodiscard

Construct a new Frame2DStreamStatistics instance from a previously serialized string.

See also serialize.

◆ get() [1/8]

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

◆ get() [2/8]

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

◆ get() [3/8]

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

◆ get() [4/8]

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

◆ get() [5/8]

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

◆ get() [6/8]

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

◆ get() [7/8]

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

◆ get() [8/8]

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

◆ kernelComputeTime() [1/2]

KernelComputeTime & Zivid::Frame2DStreamStatistics::kernelComputeTime ( )
inline

◆ kernelComputeTime() [2/2]

const KernelComputeTime & Zivid::Frame2DStreamStatistics::kernelComputeTime ( ) const
inline

◆ load()

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

Load from the given file.

◆ numberOfFramesUsedForStatistics() [1/2]

NumberOfFramesUsedForStatistics & Zivid::Frame2DStreamStatistics::numberOfFramesUsedForStatistics ( )
inline

◆ numberOfFramesUsedForStatistics() [2/2]

const NumberOfFramesUsedForStatistics & Zivid::Frame2DStreamStatistics::numberOfFramesUsedForStatistics ( ) const
inline

◆ operator!=()

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

Inequality operator.

◆ operator==()

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

Equality operator.

◆ save()

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

Save to the given file.

◆ serialize()

std::string Zivid::Frame2DStreamStatistics::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::Frame2DStreamStatistics::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 Frame2DStreamStatistics. These types can be provided:

◆ set() [2/5]

Frame2DStreamStatistics & Zivid::Frame2DStreamStatistics::set ( const AverageGrabInterval & value)
inline

◆ set() [3/5]

Frame2DStreamStatistics & Zivid::Frame2DStreamStatistics::set ( const AverageGrabRateHz & value)
inline

◆ set() [4/5]

Frame2DStreamStatistics & Zivid::Frame2DStreamStatistics::set ( const KernelComputeTime & value)
inline

◆ set() [5/5]

Frame2DStreamStatistics & Zivid::Frame2DStreamStatistics::set ( const NumberOfFramesUsedForStatistics & value)
inline

◆ toString()

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

Get the value as string.

◆ DataModel::Detail::Befriend< Frame2DStreamStatistics >

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

◆ operator<<

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

Operator to send the value as string to a stream.

Member Data Documentation

◆ description

const char* Zivid::Frame2DStreamStatistics::description
staticconstexpr
Initial value:
{
R"description(Streaming performance statistics for Frame2DGrabber.)description"
}

The description for this value.

◆ name

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

The name of this value.

◆ nodeType

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

The type of this node.

◆ path

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

The full path for this value.

◆ version

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

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