FrameInfo

每帧的元数据(捕获时间戳、生成该帧的软件版本等)。

FrameInfoclass

Various information for a frame.

Public Functions

FrameInfo()

Default constructor.

FrameInfo( stdstring&const:: fileName)explicit

Construct FrameInfo by loading from file.

stdstringserialize()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.

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

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

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

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

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

< Argstemplatetypename...>
FrameInfocopyWith(Args& &...args)constinline

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

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

Diagnostics&diagnostics()constinlineconst

Get Diagnostics.

Diagnostics&diagnostics()inline

Get Diagnostics.

FrameInfo&set( Diagnostics&const value)inline

Set Diagnostics.

FrameInfo&set( DiagnosticsPacketLoss&const:: value)inline

Set Diagnostics::PacketLoss.

Metrics&metrics()constinlineconst

Get Metrics.

Metrics&metrics()inline

Get Metrics.

FrameInfo&set( Metrics&const value)inline

Set Metrics.

FrameInfo&set( MetricsAcquisitionTime&const:: value)inline

Set Metrics::AcquisitionTime.

FrameInfo&set( MetricsCaptureTime&const:: value)inline

Set Metrics::CaptureTime.

FrameInfo&set( MetricsKernelComputeTime&const:: value)inline

Set Metrics::KernelComputeTime.

FrameInfo&set( MetricsReprocessingTime&const:: value)inline

Set Metrics::ReprocessingTime.

FrameInfo&set( MetricsThrottlingTime&const:: value)inline

Set Metrics::ThrottlingTime.

SoftwareVersion&softwareVersion()constinlineconst

Get SoftwareVersion.

SoftwareVersion&softwareVersion()inline

Get SoftwareVersion.

FrameInfo&set( SoftwareVersion&const value)inline

Set SoftwareVersion.

FrameInfo&set( SoftwareVersionCore&const:: value)inline

Set SoftwareVersion::Core.

SystemInfo&systemInfo()constinlineconst

Get SystemInfo.

SystemInfo&systemInfo()inline

Get SystemInfo.

FrameInfo&set( SystemInfo&const value)inline

Set SystemInfo.

FrameInfo&set( SystemInfoCPU&const:: value)inline

Set SystemInfo::CPU.

FrameInfo&set( SystemInfoCPUModel&const:::: value)inline

Set SystemInfo::CPU::Model.

FrameInfo&set( SystemInfoComputeDevice&const:: value)inline

Set SystemInfo::ComputeDevice.

FrameInfo&set( SystemInfoComputeDeviceModel&const:::: value)inline

Set SystemInfo::ComputeDevice::Model.

FrameInfo&set( SystemInfoComputeDeviceVendor&const:::: value)inline

Set SystemInfo::ComputeDevice::Vendor.

FrameInfo&set( SystemInfoOperatingSystem&const:: value)inline

Set SystemInfo::OperatingSystem.

TimeStamp&timeStamp()constinlineconst

Get TimeStamp.

TimeStamp&timeStamp()inline

Get TimeStamp.

FrameInfo&set( TimeStamp&const value)inline

Set TimeStamp.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

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

< Ftemplatetypename>
forEach( F&const f)inlinevoid

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

==operator( FrameInfo&const other)constbool

Equality operator.

!=operator( FrameInfo&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

save( stdstring&const:: fileName)constvoid

Save to the given file.

load( stdstring&const:: fileName)void

Load from the given file.

Public Static Functions

FrameInfofromSerialized( stdstring&const:: value)static

Construct a new FrameInfo instance from a previously serialized string.

See also serialize.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* ""

The full path for this value.

name={}staticconstexprconstchar* "FrameInfo"

The name of this value.

static constexpr const char * description   = { R"description(Various information for a frame)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, FrameInfo&const value)inlinefriend::

Operator to send the value as string to a stream.

Diagnosticsclass

Diagnostic information for frame.

Public Functions

Diagnostics()

Default constructor.

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

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

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

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

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

< Argstemplatetypename...>
DiagnosticscopyWith(Args& &...args)constinline

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

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

PacketLoss&packetLoss()constinlineconst

Get PacketLoss.

PacketLoss&packetLoss()inline

Get PacketLoss.

Diagnostics&set( PacketLoss&const value)inline

Set PacketLoss.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

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

< Ftemplatetypename>
forEach( F&const f)inlinevoid

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

==operator( Diagnostics&const other)constbool

Equality operator.

!=operator( Diagnostics&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Diagnostics"

The full path for this value.

name={}staticconstexprconstchar* "Diagnostics"

The name of this value.

static constexpr const char * description   = { R"description(Diagnostic information for frame)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Diagnostics&const value)inlinefriend::

Operator to send the value as string to a stream.

PacketLossclass

Is frame missing any data.

Public Types

ValueType=boolusing

The type of the underlying value.

Public Functions

PacketLoss()=default

Default constructor.

PacketLoss( boolvalue)inlineexplicitconstexpr

Constructor.

value()constbool

Get the value.

stdstringtoString()const::

Get the value as string.

operatorbool()constinlineexplicit

Convert to bool where appropriate.

==operator( PacketLoss&const other)constinlinebool

Comparison operator.

!=operator( PacketLoss&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetbool validValues()staticinline::<>

All valid values of PacketLoss.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Diagnostics/PacketLoss"

The full path for this value.

name={}staticconstexprconstchar* "PacketLoss"

The name of this value.

static constexpr const char * description   = { R"description(Is frame missing any data)description" }

The description for this value.

PacketLossyesstaticconst

On/enabled.

PacketLossnostaticconst

Off/disabled.

Friends

stdostream&<<operator(stdostream&:: stream, PacketLoss&const value)inlinefriend::

Operator to serialize the value to a stream.

Metricsclass

Metrics related to this capture.

Public Functions

Metrics()

Default constructor.

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

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

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

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

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

< Argstemplatetypename...>
MetricscopyWith(Args& &...args)constinline

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

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

AcquisitionTime&acquisitionTime()constinlineconst

Get AcquisitionTime.

AcquisitionTime&acquisitionTime()inline

Get AcquisitionTime.

Metrics&set( AcquisitionTime&const value)inline

Set AcquisitionTime.

CaptureTime&captureTime()constinlineconst

Get CaptureTime.

CaptureTime&captureTime()inline

Get CaptureTime.

Metrics&set( CaptureTime&const value)inline

Set CaptureTime.

KernelComputeTime&kernelComputeTime()constinlineconst

Get KernelComputeTime.

KernelComputeTime&kernelComputeTime()inline

Get KernelComputeTime.

Metrics&set( KernelComputeTime&const value)inline

Set KernelComputeTime.

ReprocessingTime&reprocessingTime()constinlineconst

Get ReprocessingTime.

ReprocessingTime&reprocessingTime()inline

Get ReprocessingTime.

Metrics&set( ReprocessingTime&const value)inline

Set ReprocessingTime.

ThrottlingTime&throttlingTime()constinlineconst

Get ThrottlingTime.

ThrottlingTime&throttlingTime()inline

Get ThrottlingTime.

Metrics&set( ThrottlingTime&const value)inline

Set ThrottlingTime.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

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

< Ftemplatetypename>
forEach( F&const f)inlinevoid

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

==operator( Metrics&const other)constbool

Equality operator.

!=operator( Metrics&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Metrics"

The full path for this value.

name={}staticconstexprconstchar* "Metrics"

The name of this value.

static constexpr const char * description   = { R"description(Metrics related to this capture.)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Metrics&const value)inlinefriend::

Operator to send the value as string to a stream.

AcquisitionTimeclass

Acquisition Time is the duration from the start of the capture to when the camera has acquired the last image.

After this time, the camera has finished its acquisition and you can move the robot, or capture with another camera with overlapping field of view. Acquisition Time is equal to the time it takes for the Camera::capture(settings) API function call to return.

Public Types

ValueType=stdchronomicrosecondsusing ::::

The type of the underlying value.

Public Functions

AcquisitionTime()=default

Default constructor.

AcquisitionTime(stdchronomicrosecondsvalue:::: )inlineexplicitconstexpr

Constructor.

stdchronomicrosecondsvalue()const::::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( AcquisitionTime&const other)constinlinebool

Comparison operator.

!=operator( AcquisitionTime&const other)constinlinebool

Comparison operator.

<operator( AcquisitionTime&const other)constinlinebool

Comparison operator.

>operator( AcquisitionTime&const other)constinlinebool

Comparison operator.

<=operator( AcquisitionTime&const other)constinlinebool

Comparison operator.

>=operator( AcquisitionTime&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangestdchronomicroseconds validRange()staticinlineconstexpr<::::>

The range of valid values for AcquisitionTime.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Metrics/AcquisitionTime"

The full path for this value.

name={}staticconstexprconstchar* "AcquisitionTime"

The name of this value.

static constexpr const char * description  {R"description(Acquisition Time is the duration from the start of the capture to when the camera has acquired thelast image. After this time, the camera has finished its acquisition and you can move the robot,or capture with another camera with overlapping field of view. Acquisition Time is equal to thetime it takes for theCamera::capture(settings) API function call to return.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, AcquisitionTime&const value)inlinefriend::

Operator to serialize the value to a stream.

CaptureTimeclass

Capture Time is the duration from the start of the capture to when all of the data transfer and processing has completed.

After this time the 3D point cloud and/or 2D color image is ready and available on the GPU memory, and can be copied to the system memory (RAM).

Public Types

ValueType=stdchronomicrosecondsusing ::::

The type of the underlying value.

Public Functions

CaptureTime()=default

Default constructor.

CaptureTime(stdchronomicrosecondsvalue:::: )inlineexplicitconstexpr

Constructor.

stdchronomicrosecondsvalue()const::::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( CaptureTime&const other)constinlinebool

Comparison operator.

!=operator( CaptureTime&const other)constinlinebool

Comparison operator.

<operator( CaptureTime&const other)constinlinebool

Comparison operator.

>operator( CaptureTime&const other)constinlinebool

Comparison operator.

<=operator( CaptureTime&const other)constinlinebool

Comparison operator.

>=operator( CaptureTime&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangestdchronomicroseconds validRange()staticinlineconstexpr<::::>

The range of valid values for CaptureTime.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Metrics/CaptureTime"

The full path for this value.

name={}staticconstexprconstchar* "CaptureTime"

The name of this value.

static constexpr const char * description  {R"description(Capture Time is the duration from the start of the capture to when all of the data transfer andprocessing has completed. After this time the 3D point cloud and/or 2D color image is ready andavailable on the GPU memory, and can be copied to the system memory (RAM).)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, CaptureTime&const value)inlinefriend::

Operator to serialize the value to a stream.

KernelComputeTimeclass

Kernel Compute Time is the duration of the compute on the GPU.

It is a subset of Capture Time. Kernel Compute Time depends on the capture settings and the compute power of the GPU. Note that Kernel Compute Time + Acquisition Time is not equal to Capture Time, as acquisition and processing operations can be performed in parallel.

Public Types

ValueType=stdchronomicrosecondsusing ::::

The type of the underlying value.

Public Functions

KernelComputeTime()=default

Default constructor.

KernelComputeTime(stdchronomicrosecondsvalue:::: )inlineexplicitconstexpr

Constructor.

stdchronomicrosecondsvalue()const::::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( KernelComputeTime&const other)constinlinebool

Comparison operator.

!=operator( KernelComputeTime&const other)constinlinebool

Comparison operator.

<operator( KernelComputeTime&const other)constinlinebool

Comparison operator.

>operator( KernelComputeTime&const other)constinlinebool

Comparison operator.

<=operator( KernelComputeTime&const other)constinlinebool

Comparison operator.

>=operator( KernelComputeTime&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangestdchronomicroseconds validRange()staticinlineconstexpr<::::>

The range of valid values for KernelComputeTime.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Metrics/KernelComputeTime"

The full path for this value.

name={}staticconstexprconstchar* "KernelComputeTime"

The name of this value.

static constexpr const char * description  {R"description(Kernel Compute Time is the duration of the compute on the GPU. It is a subset of Capture Time. KernelCompute Time depends on the capture settings and the compute power of the GPU. Note that Kernel ComputeTime + Acquisition Time is not equal to Capture Time, as acquisition and processing operations can beperformed in parallel.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, KernelComputeTime&const value)inlinefriend::

Operator to serialize the value to a stream.

ReprocessingTimeclass

Reprocessing re-runs the entire processing pipeline (including filters, color balance etc.) on a previously acquired frame.

Reprocessing is available in Zivid Studio for captures with Diagnostics Mode enabled. The ReprocessingTime field is only set if this frame was reprocessed after it was initially captured, otherwise it will be unset.

Reprocessing Time is the duration from the start of the reprocessing action and until all processing of the new frame has finished. After this time the 3D point cloud and/or 2D color image is ready and available on the GPU memory and can be copied to the system memory (RAM).

Reprocessing Time depends on the processing settings that are enabled, which capture engine that was used, the pixel sampling setting and the number of acquisitions used. Reprocessing Time also depends on the compute power of the compute device.

Note that for a frame that has been re-processed, the Acquisition Time and Capture Time refers to the originally captured frame. Only Reprocessing Time is updated in a reprocessed frame.

Public Types

ValueType=stdchronomicrosecondsusing ::::

The type of the underlying value.

Public Functions

ReprocessingTime()=default

Default constructor.

ReprocessingTime(stdchronomicrosecondsvalue:::: )inlineexplicitconstexpr

Constructor.

stdchronomicrosecondsvalue()const::::

Get the value.

If this object does not contain a value (see hasValue) then this method throws an exception.

hasValue()constbool

Check if the value is set.

reset()void

Reset the node to unset state.

stdstringtoString()const::

Get the value as string.

==operator( ReprocessingTime&const other)constinlinebool

Comparison operator.

!=operator( ReprocessingTime&const other)constinlinebool

Comparison operator.

<operator( ReprocessingTime&const other)constinlinebool

Comparison operator.

>operator( ReprocessingTime&const other)constinlinebool

Comparison operator.

<=operator( ReprocessingTime&const other)constinlinebool

Comparison operator.

>=operator( ReprocessingTime&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangestdchronomicroseconds validRange()staticinlineconstexpr<::::>

The range of valid values for ReprocessingTime.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Metrics/ReprocessingTime"

The full path for this value.

name={}staticconstexprconstchar* "ReprocessingTime"

The name of this value.

static constexpr const char * description  {R"description(Reprocessing re-runs the entire processing pipeline (including filters, color balance etc.) on apreviously acquired frame. Reprocessing is available in Zivid Studio for captures withDiagnosticsModeenabled. TheReprocessingTime field is only set if this framewas reprocessed after it was initiallycaptured, otherwise it will be unset.Reprocessing Time is the duration from the start of the reprocessing action and until all processingof the newframehas finished. After this time the 3D point cloud and/or 2D color image is ready andavailable on the GPU memory and can be copied to the system memory (RAM).Reprocessing Time depends on the processing settings that are enabled, which capture engine that wasused, the pixel sampling setting and the number of acquisitions used. Reprocessing Time also depends onthe compute power of the compute device.Note that for aframethat has been re-processed, the Acquisition Time and Capture Time refers tothe originally captured frame. Only Reprocessing Time is updated in a reprocessed frame.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, ReprocessingTime&const value)inlinefriend::

Operator to serialize the value to a stream.

ThrottlingTimeclass

Throttling Time is the duration that the capture was paused due to thermal or other constraints on the camera's components while it was capturing this frame.

This duration is part of the overall Acquisition Time. If the camera throttled during a capture, it will result in a longer Acquisition Time.

Whether or not the camera will throttle depends on the ambient temperature, the capture settings, and the how frequently the camera is capturing.

Public Types

ValueType=stdchronomicrosecondsusing ::::

The type of the underlying value.

Public Functions

ThrottlingTime()=default

Default constructor.

ThrottlingTime(stdchronomicrosecondsvalue:::: )inlineexplicitconstexpr

Constructor.

stdchronomicrosecondsvalue()const::::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( ThrottlingTime&const other)constinlinebool

Comparison operator.

!=operator( ThrottlingTime&const other)constinlinebool

Comparison operator.

<operator( ThrottlingTime&const other)constinlinebool

Comparison operator.

>operator( ThrottlingTime&const other)constinlinebool

Comparison operator.

<=operator( ThrottlingTime&const other)constinlinebool

Comparison operator.

>=operator( ThrottlingTime&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangestdchronomicroseconds validRange()staticinlineconstexpr<::::>

The range of valid values for ThrottlingTime.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Metrics/ThrottlingTime"

The full path for this value.

name={}staticconstexprconstchar* "ThrottlingTime"

The name of this value.

static constexpr const char * description  {R"description(Throttling Time is the duration that the capture was paused due to thermal or other constraints on thecamera's components while it was capturing this frame. This duration is part of the overall AcquisitionTime. If the camera throttled during a capture, it will result in a longer Acquisition Time.Whether or not the camera will throttle depends on the ambient temperature, the capture settings, andthe how frequently the camera is capturing.)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, ThrottlingTime&const value)inlinefriend::

Operator to serialize the value to a stream.

SoftwareVersionclass

The version information for installed software at the time of image capture.

Public Functions

SoftwareVersion()

Default constructor.

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

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

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

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

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

< Argstemplatetypename...>
SoftwareVersioncopyWith(Args& &...args)constinline

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

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

Core&core()constinlineconst

Get Core.

Core&core()inline

Get Core.

SoftwareVersion&set( Core&const value)inline

Set Core.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

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

< Ftemplatetypename>
forEach( F&const f)inlinevoid

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

==operator( SoftwareVersion&const other)constbool

Equality operator.

!=operator( SoftwareVersion&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SoftwareVersion"

The full path for this value.

name={}staticconstexprconstchar* "SoftwareVersion"

The name of this value.

static constexpr const char * description  {R"description(Theversioninformation for installed software at the time of image capture)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, SoftwareVersion&const value)inlinefriend::

Operator to send the value as string to a stream.

Coreclass

Core version.

Public Types

ValueType=stdstringusing ::

The type of the underlying value.

Public Functions

Core()=default

Default constructor.

Core(stdstringvalue:: )inlineexplicit

Constructor.

stdstring&value()constconst::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Core&const other)constinlinebool

Comparison operator.

!=operator( Core&const other)constinlinebool

Comparison operator.

<operator( Core&const other)constinlinebool

Comparison operator.

>operator( Core&const other)constinlinebool

Comparison operator.

<=operator( Core&const other)constinlinebool

Comparison operator.

>=operator( Core&const other)constinlinebool

Comparison operator.

Public Static Functions

RangeValueTypesize_type validSize()staticinlineconstexpr<::>

The valid sizes for Core.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SoftwareVersion/Core"

The full path for this value.

name={}staticconstexprconstchar* "Core"

The name of this value.

static constexpr const char * description   = { R"description(Core version)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Core&const value)inlinefriend::

Operator to serialize the value to a stream.

SystemInfoclass

Information about the system that captured this frame.

Public Functions

SystemInfo()

Default constructor.

< Argstemplatetypename...>
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:

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

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:

< Argstemplatetypename...>
SystemInfocopyWith(Args& &...args)constinline

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&cpu()constinlineconst

Get CPU.

CPU&cpu()inline

Get CPU.

SystemInfo&set( CPU&const value)inline

Set CPU.

SystemInfo&set( CPUModel&const:: value)inline

Set CPU::Model.

ComputeDevice&computeDevice()constinlineconst

Get ComputeDevice.

ComputeDevice&computeDevice()inline

Get ComputeDevice.

SystemInfo&set( ComputeDevice&const value)inline

Set ComputeDevice.

SystemInfo&set( ComputeDeviceModel&const:: value)inline

Set ComputeDevice::Model.

SystemInfo&set( ComputeDeviceVendor&const:: value)inline

Set ComputeDevice::Vendor.

OperatingSystem&operatingSystem()constinlineconst

Get OperatingSystem.

OperatingSystem&operatingSystem()inline

Get OperatingSystem.

SystemInfo&set( OperatingSystem&const value)inline

Set OperatingSystem.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

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

< Ftemplatetypename>
forEach( F&const f)inlinevoid

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

==operator( SystemInfo&const other)constbool

Equality operator.

!=operator( SystemInfo&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SystemInfo"

The full path for this value.

name={}staticconstexprconstchar* "SystemInfo"

The name of this value.

static constexpr const char * description  {R"description(Information about the system that captured thisframe)description"}

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, SystemInfo&const value)inlinefriend::

Operator to send the value as string to a stream.

ComputeDeviceclass

Compute device.

Public Functions

ComputeDevice()

Default constructor.

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

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

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

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

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

< Argstemplatetypename...>
ComputeDevicecopyWith(Args& &...args)constinline

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

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

Model&model()constinlineconst

Get Model.

Model&model()inline

Get Model.

ComputeDevice&set( Model&const value)inline

Set Model.

Vendor&vendor()constinlineconst

Get Vendor.

Vendor&vendor()inline

Get Vendor.

ComputeDevice&set( Vendor&const value)inline

Set Vendor.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

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

< Ftemplatetypename>
forEach( F&const f)inlinevoid

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

==operator( ComputeDevice&const other)constbool

Equality operator.

!=operator( ComputeDevice&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SystemInfo/ComputeDevice"

The full path for this value.

name={}staticconstexprconstchar* "ComputeDevice"

The name of this value.

static constexpr const char * description   = { R"description(Compute device)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, ComputeDevice&const value)inlinefriend::

Operator to send the value as string to a stream.

Modelclass

Compute device model.

Public Types

ValueType=stdstringusing ::

The type of the underlying value.

Public Functions

Model()=default

Default constructor.

Model(stdstringvalue:: )inlineexplicit

Constructor.

stdstring&value()constconst::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Model&const other)constinlinebool

Comparison operator.

!=operator( Model&const other)constinlinebool

Comparison operator.

<operator( Model&const other)constinlinebool

Comparison operator.

>operator( Model&const other)constinlinebool

Comparison operator.

<=operator( Model&const other)constinlinebool

Comparison operator.

>=operator( Model&const other)constinlinebool

Comparison operator.

Public Static Functions

RangeValueTypesize_type validSize()staticinlineconstexpr<::>

The valid sizes for Model.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SystemInfo/ComputeDevice/Model"

The full path for this value.

name={}staticconstexprconstchar* "Model"

The name of this value.

static constexpr const char * description   = { R"description(Compute device model)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Model&const value)inlinefriend::

Operator to serialize the value to a stream.

Vendorclass

Compute device vendor.

Public Types

ValueType=stdstringusing ::

The type of the underlying value.

Public Functions

Vendor()=default

Default constructor.

Vendor(stdstringvalue:: )inlineexplicit

Constructor.

stdstring&value()constconst::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Vendor&const other)constinlinebool

Comparison operator.

!=operator( Vendor&const other)constinlinebool

Comparison operator.

<operator( Vendor&const other)constinlinebool

Comparison operator.

>operator( Vendor&const other)constinlinebool

Comparison operator.

<=operator( Vendor&const other)constinlinebool

Comparison operator.

>=operator( Vendor&const other)constinlinebool

Comparison operator.

Public Static Functions

RangeValueTypesize_type validSize()staticinlineconstexpr<::>

The valid sizes for Vendor.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SystemInfo/ComputeDevice/Vendor"

The full path for this value.

name={}staticconstexprconstchar* "Vendor"

The name of this value.

static constexpr const char * description   = { R"description(Compute device vendor)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Vendor&const value)inlinefriend::

Operator to serialize the value to a stream.

CPUclass

CPU.

Public Functions

CPU()

Default constructor.

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

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

< Argstemplatetypename...>
set(Args& &...args)inlinevoid

Set multiple arguments.

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

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

< Argstemplatetypename...>
CPUcopyWith(Args& &...args)constinline

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

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

Model&model()constinlineconst

Get Model.

Model&model()inline

Get Model.

CPU&set( Model&const value)inline

Set Model.

< Ftemplatetypename>
forEach( F&const f)constinlinevoid

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

< Ftemplatetypename>
forEach( F&const f)inlinevoid

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

==operator( CPU&const other)constbool

Equality operator.

!=operator( CPU&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SystemInfo/CPU"

The full path for this value.

name={}staticconstexprconstchar* "CPU"

The name of this value.

static constexpr const char * description   = { R"description(CPU)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, CPU&const value)inlinefriend::

Operator to send the value as string to a stream.

Modelclass

CPU model.

Public Types

ValueType=stdstringusing ::

The type of the underlying value.

Public Functions

Model()=default

Default constructor.

Model(stdstringvalue:: )inlineexplicit

Constructor.

stdstring&value()constconst::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Model&const other)constinlinebool

Comparison operator.

!=operator( Model&const other)constinlinebool

Comparison operator.

<operator( Model&const other)constinlinebool

Comparison operator.

>operator( Model&const other)constinlinebool

Comparison operator.

<=operator( Model&const other)constinlinebool

Comparison operator.

>=operator( Model&const other)constinlinebool

Comparison operator.

Public Static Functions

RangeValueTypesize_type validSize()staticinlineconstexpr<::>

The valid sizes for Model.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SystemInfo/CPU/Model"

The full path for this value.

name={}staticconstexprconstchar* "Model"

The name of this value.

static constexpr const char * description   = { R"description(CPU model)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, Model&const value)inlinefriend::

Operator to serialize the value to a stream.

OperatingSystemclass

Operating system.

Public Types

ValueType=stdstringusing ::

The type of the underlying value.

Public Functions

OperatingSystem()=default

Default constructor.

OperatingSystem(stdstringvalue:: )inlineexplicit

Constructor.

stdstring&value()constconst::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( OperatingSystem&const other)constinlinebool

Comparison operator.

!=operator( OperatingSystem&const other)constinlinebool

Comparison operator.

<operator( OperatingSystem&const other)constinlinebool

Comparison operator.

>operator( OperatingSystem&const other)constinlinebool

Comparison operator.

<=operator( OperatingSystem&const other)constinlinebool

Comparison operator.

>=operator( OperatingSystem&const other)constinlinebool

Comparison operator.

Public Static Functions

RangeValueTypesize_type validSize()staticinlineconstexpr<::>

The valid sizes for OperatingSystem.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "SystemInfo/OperatingSystem"

The full path for this value.

name={}staticconstexprconstchar* "OperatingSystem"

The name of this value.

static constexpr const char * description   = { R"description(Operating system)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, OperatingSystem&const value)inlinefriend::

Operator to serialize the value to a stream.

TimeStampclass

The time of frame capture.

Public Types

ValueType=stdchronosystem_clocktime_pointusing ::::::

The type of the underlying value.

Public Functions

TimeStamp()=default

Default constructor.

TimeStamp(stdchronosystem_clocktime_pointvalue:::::: )inlineexplicitconstexpr

Constructor.

stdchronosystem_clocktime_pointvalue()const::::::

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( TimeStamp&const other)constinlinebool

Comparison operator.

!=operator( TimeStamp&const other)constinlinebool

Comparison operator.

<operator( TimeStamp&const other)constinlinebool

Comparison operator.

>operator( TimeStamp&const other)constinlinebool

Comparison operator.

<=operator( TimeStamp&const other)constinlinebool

Comparison operator.

>=operator( TimeStamp&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangestdchronosystem_clocktime_point validRange()staticinlineconstexpr<::::::>

The range of valid values for TimeStamp.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "TimeStamp"

The full path for this value.

name={}staticconstexprconstchar* "TimeStamp"

The name of this value.

static constexpr const char * description   = { R"description(The time of frame capture)description" }

The description for this value.

Friends

stdostream&<<operator(stdostream&:: stream, TimeStamp&const value)inlinefriend::

Operator to serialize the value to a stream.

FrameInfostruct

Various information for a frame.

Public Functions

System::String ^ Serialize ()

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.

void Save (System::String ^ fileName)

Save to the given file.

void Load (System::String ^ fileName)

Load from the given file.

FrameInfo()inline

Constructor.

FrameInfo ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

FrameInfo ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

System::DateTime^ TimeStamp

The time of frame capture.

Public Static Attributes

static FrameInfo(System::String ^ fileName) FrameInfo FromSerialized )(System::String ^ value)

Construct FrameInfo by loading from file.

Construct a new FrameInfo instance from a previously serialized string

See also Serialize.

DiagnosticsGroupstruct

Diagnostic information for frame.

Public Functions

DiagnosticsGroup()inline

Constructor.

DiagnosticsGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

DiagnosticsGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

PacketLossbool

Is frame missing any data.

MetricsGroupstruct

Metrics related to this capture.

Public Functions

MetricsGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

MetricsGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Public Members

property::Zivid::NET::Duration AcquisitionTime   = {                     ::Zivid::NET::Durationget(){{                             const auto &cppNode = *AcquisitionTimeCppWrapper->GetNativePtr();                              return::Zivid::NET::Duration::FromMicroseconds(cppNode.value().count());                         }}void set(::Zivid::NET::Durationvalue){{                             auto &cppNode = *AcquisitionTimeCppWrapper->GetNativePtr();                              cppNode = Zivid::FrameInfo::Metrics::AcquisitionTime{ std::chrono::microseconds{                                 value.Microseconds } };                         }}}private:ref struct CaptureTimeCppWrapperType{private:   Zivid::FrameInfo::Metrics::CaptureTime  * m_pClass = nullptr; bool m_isDisposed = false; public:;}

Acquisition Time is the duration from the start of the capture to when the camera has acquired the last image.

After this time, the camera has finished its acquisition and you can move the robot, or capture with another camera with overlapping field of view. Acquisition Time is equal to the time it takes for the Camera::capture(settings) API function call to return.

property::Zivid::NET::Duration CaptureTime   = {                     ::Zivid::NET::Durationget(){{                             const auto &cppNode = *CaptureTimeCppWrapper->GetNativePtr();                              return ::Zivid::NET::Duration::FromMicroseconds(cppNode.value().count());                         }}void set(::Zivid::NET::Durationvalue){{                             auto &cppNode = *CaptureTimeCppWrapper->GetNativePtr();                              cppNode = Zivid::FrameInfo::Metrics::CaptureTime{ std::chrono::microseconds{                                 value.Microseconds } };                         }}}private:ref struct KernelComputeTimeCppWrapperType{private:   Zivid::FrameInfo::Metrics::KernelComputeTime  * m_pClass = nullptr; bool m_isDisposed = false; public:;}

Capture Time is the duration from the start of the capture to when all of the data transfer and processing has completed.

After this time the 3D point cloud and/or 2D color image is ready and available on the GPU memory, and can be copied to the system memory (RAM).

property::Zivid::NET::Duration KernelComputeTime   = {                     ::Zivid::NET::Durationget(){{                             const auto &cppNode = *KernelComputeTimeCppWrapper->GetNativePtr();                              return ::Zivid::NET::Duration::FromMicroseconds(cppNode.value().count());                         }}void set(::Zivid::NET::Durationvalue){{                             auto &cppNode = *KernelComputeTimeCppWrapper->GetNativePtr();                              cppNode = Zivid::FrameInfo::Metrics::KernelComputeTime{ std::chrono::microseconds{                                 value.Microseconds } };                         }}}private:ref struct ReprocessingTimeCppWrapperType{private:   Zivid::FrameInfo::Metrics::ReprocessingTime  * m_pClass = nullptr; bool m_isDisposed = false; public:;}

Kernel Compute Time is the duration of the compute on the GPU.

It is a subset of Capture Time. Kernel Compute Time depends on the capture settings and the compute power of the GPU. Note that Kernel Compute Time + Acquisition Time is not equal to Capture Time, as acquisition and processing operations can be performed in parallel.

propertyZividNETDurationThrottlingTime::::::

Throttling Time is the duration that the capture was paused due to thermal or other constraints on the camera's components while it was capturing this frame.

This duration is part of the overall Acquisition Time. If the camera throttled during a capture, it will result in a longer Acquisition Time.

Whether or not the camera will throttle depends on the ambient temperature, the capture settings, and the how frequently the camera is capturing.

Properties

SystemNullable::ZividNETDuration ReprocessingTime::<::::>

Reprocessing re-runs the entire processing pipeline (including filters, color balance etc.) on a previously acquired frame.

Reprocessing is available in Zivid Studio for captures with Diagnostics Mode enabled. The ReprocessingTime field is only set if this frame was reprocessed after it was initially captured, otherwise it will be unset.

Reprocessing Time is the duration from the start of the reprocessing action and until all processing of the new frame has finished. After this time the 3D point cloud and/or 2D color image is ready and available on the GPU memory and can be copied to the system memory (RAM).

Reprocessing Time depends on the processing settings that are enabled, which capture engine that was used, the pixel sampling setting and the number of acquisitions used. Reprocessing Time also depends on the compute power of the compute device.

Note that for a frame that has been re-processed, the Acquisition Time and Capture Time refers to the originally captured frame. Only Reprocessing Time is updated in a reprocessed frame.

SoftwareVersionGroupstruct

The version information for installed software at the time of image capture.

Public Functions

SoftwareVersionGroup()inline

Constructor.

SoftwareVersionGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

SoftwareVersionGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

System::String^ Core

Core version.

SystemInfoGroupstruct

Information about the system that captured this frame.

Public Functions

SystemInfoGroup()inline

Constructor.

SystemInfoGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

SystemInfoGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

System::String^ OperatingSystem

Operating system.

ComputeDeviceGroupstruct

Compute device.

Public Functions

ComputeDeviceGroup()inline

Constructor.

ComputeDeviceGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

ComputeDeviceGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

System::String^ Model

Compute device model.

System::String^ Vendor

Compute device vendor.

CPUGroupstruct

CPU.

Public Functions

CPUGroup()inline

Constructor.

CPUGroup ^ CopyWith (CopyWithDelegate ^ delegate)

Create a clone (deep copy) of the current instance and invoke delegate on the clone.

Creates a clone (deep copy) of this object, then invokes the delegate function on the clone, and finally returns the clone. This method can be used to create a clone of an instance and then change one or more properties on the clone in one method call. The current instance is unchanged.

CPUGroup ^ Clone ()

Create a clone (deep copy) of the current instance.

System::String ^ ToString () override

Get string representation of the object.

Properties

System::String^ Model

CPU model.

classFrameInfo(
:datetime=datetime.datetime.fromtimestamp(0)time_stamp ,
:FrameInfo | None=Nonediagnostics ,
:FrameInfo | None=Nonemetrics ,
:FrameInfo | None=Nonesoftware_version ,
:FrameInfo | None=Nonesystem_info ,
)

Various information for a frame

Initialization

classDiagnostics(:bool=Falsepacket_loss )

Diagnostic information for frame

Initialization

propertypacket_loss

Is frame missing any data

classMetrics(
:timedelta=datetime.timedelta(microseconds=-1)acquisition_time ,
:timedelta=datetime.timedelta(microseconds=-1)capture_time ,
:timedelta=datetime.timedelta(microseconds=-1)kernel_compute_time ,
:timedelta | None=Nonereprocessing_time ,
:timedelta=datetime.timedelta(microseconds=-1)throttling_time ,
)

Metrics related to this capture.

Initialization

propertyacquisition_time

Acquisition Time is the duration from the start of the capture to when the camera has acquired the last image. After this time, the camera has finished its acquisition and you can move the robot, or capture with another camera with overlapping field of view. Acquisition Time is equal to the time it takes for the Camera::capture(settings) API function call to return.

propertycapture_time

Capture Time is the duration from the start of the capture to when all of the data transfer and processing has completed. After this time the 3D point cloud and/or 2D color image is ready and available on the GPU memory, and can be copied to the system memory (RAM).

propertykernel_compute_time

Kernel Compute Time is the duration of the compute on the GPU. It is a subset of Capture Time. Kernel Compute Time depends on the capture settings and the compute power of the GPU. Note that Kernel Compute Time + Acquisition Time is not equal to Capture Time, as acquisition and processing operations can be performed in parallel.

propertyreprocessing_time

Reprocessing re-runs the entire processing pipeline (including filters, color balance etc.) on a previously acquired frame. Reprocessing is available in Zivid Studio for captures with Diagnostics Mode enabled. The ReprocessingTime field is only set if this frame was reprocessed after it was initially captured, otherwise it will be unset. Reprocessing Time is the duration from the start of the reprocessing action and until all processing of the new frame has finished. After this time the 3D point cloud and/or 2D color image is ready and available on the GPU memory and can be copied to the system memory (RAM). Reprocessing Time depends on the processing settings that are enabled, which capture engine that was used, the pixel sampling setting and the number of acquisitions used. Reprocessing Time also depends on the compute power of the compute device. Note that for a frame that has been re-processed, the Acquisition Time and Capture Time refers to the originally captured frame. Only Reprocessing Time is updated in a reprocessed frame.

propertythrottling_time

Throttling Time is the duration that the capture was paused due to thermal or other constraints on the camera's components while it was capturing this frame. This duration is part of the overall Acquisition Time. If the camera throttled during a capture, it will result in a longer Acquisition Time. Whether or not the camera will throttle depends on the ambient temperature, the capture settings, and the how frequently the camera is capturing.

classSoftwareVersion(:str='No-version'core )

The version information for installed software at the time of image capture

Initialization

propertycore

Core version

classSystemInfo(
:str=''operating_system ,
:FrameInfo | None=Nonecpu ,
:FrameInfo | None=Nonecompute_device ,
)

Information about the system that captured this frame

Initialization

classCPU(:str=''model )

CPU

Initialization

propertymodel

CPU model

classComputeDevice(:str=''model , :str=''vendor )

Compute device

Initialization

propertymodel

Compute device model

propertyvendor

Compute device vendor

propertyoperating_system

Operating system

propertycpu

CPU

propertycompute_device

Compute device

propertytime_stamp

The time of frame capture

propertydiagnostics

Diagnostic information for frame

propertymetrics

Metrics related to this capture.

propertysoftware_version

The version information for installed software at the time of image capture

propertysystem_info

Information about the system that captured this frame

classmethodload(file_name)

Construct FrameInfo by loading from file

save(file_name)

Save to the given file

classmethodfrom_serialized(value)

Construct a new FrameInfo instance from a previously serialized string

See also serialize.

serialize()

Serialize to a string

See also from_serialized. The returned string is formatted in YAML, and is compatible with the contents of files saved using save.