CameraHealth

Result of running the camera's built-in health checks, obtained by calling Camera::checkHealth(). See 相机健康检查 for what each check measures and how to interpret its status.

CameraHealthclass

Result of running the camera's health checks.

Each check has a Status (severity) and a Value (the underlying measurement, when available). The Overall field aggregates the worst severity across all populated checks.

Status values:

  • OK: Optimal.

  • Suboptimal: Degraded but functional.

  • Error: Faulty or out of spec.

  • Unknown: Check was not performed, or its outcome could not be determined.

Public Functions

CameraHealth()

Default constructor.

CameraHealth( stdstring&const:: fileName)explicit

Construct CameraHealth 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...>
CameraHealth(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 CameraHealth then invoking set(args).

The provided arguments must be descendants of CameraHealth. 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 CameraHealth. These types can be provided:

< Argstemplatetypename...>
CameraHealthcopyWith(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 CameraHealth 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 CameraHealth. These types can be provided:

Fan&fan()constinlineconst

Get Fan.

Fan&fan()inline

Get Fan.

CameraHealth&set( Fan&const value)inline

Set Fan.

CameraHealth&set( FanStatus&const:: value)inline

Set Fan::Status.

CameraHealth&set( FanValue&const:: value)inline

Set Fan::Value.

InfieldVerification&infieldVerification()constinlineconst

Get InfieldVerification.

InfieldVerification&infieldVerification()inline

Get InfieldVerification.

CameraHealth&set( InfieldVerification&const value)inline

Set InfieldVerification.

CameraHealth&set( InfieldVerificationStatus&const:: value)inline

Set InfieldVerification::Status.

CameraHealth&set( InfieldVerificationValue&const:: value)inline

Set InfieldVerification::Value.

MaxTransferSpeed&maxTransferSpeed()constinlineconst

Get MaxTransferSpeed.

MaxTransferSpeed&maxTransferSpeed()inline

Get MaxTransferSpeed.

CameraHealth&set( MaxTransferSpeed&const value)inline

Set MaxTransferSpeed.

CameraHealth&set( MaxTransferSpeedStatus&const:: value)inline

Set MaxTransferSpeed::Status.

CameraHealth&set( MaxTransferSpeedValue&const:: value)inline

Set MaxTransferSpeed::Value.

Memory&memory()constinlineconst

Get Memory.

Memory&memory()inline

Get Memory.

CameraHealth&set( Memory&const value)inline

Set Memory.

CameraHealth&set( MemoryStatus&const:: value)inline

Set Memory::Status.

CameraHealth&set( MemoryValue&const:: value)inline

Set Memory::Value.

Overall&overall()constinlineconst

Get Overall.

Overall&overall()inline

Get Overall.

CameraHealth&set( Overall&const value)inline

Set Overall.

Temperature&temperature()constinlineconst

Get Temperature.

Temperature&temperature()inline

Get Temperature.

CameraHealth&set( Temperature&const value)inline

Set Temperature.

CameraHealth&set( TemperatureDMD&const:: value)inline

Set Temperature::DMD.

CameraHealth&set( TemperatureDMDStatus&const:::: value)inline

Set Temperature::DMD::Status.

CameraHealth&set( TemperatureDMDValue&const:::: value)inline

Set Temperature::DMD::Value.

CameraHealth&set( TemperatureLED&const:: value)inline

Set Temperature::LED.

CameraHealth&set( TemperatureLEDStatus&const:::: value)inline

Set Temperature::LED::Status.

CameraHealth&set( TemperatureLEDValue&const:::: value)inline

Set Temperature::LED::Value.

CameraHealth&set( TemperatureLens&const:: value)inline

Set Temperature::Lens.

CameraHealth&set( TemperatureLensStatus&const:::: value)inline

Set Temperature::Lens::Status.

CameraHealth&set( TemperatureLensValue&const:::: value)inline

Set Temperature::Lens::Value.

< 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( CameraHealth&const other)constbool

Equality operator.

!=operator( CameraHealth&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

CameraHealthfromSerialized( stdstring&const:: value)static

Construct a new CameraHealth 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* "CameraHealth"

The name of this value.

static constexpr const char * description  {R"description(Result of running the camera's health checks. Each check has a`Status` (severity) and a `Value` (the underlying measurement, whenavailable). The `Overall` field aggregates the worst severity acrossall populated checks.Status values:- OK: Optimal.- Suboptimal: Degraded but functional.- Error: Faulty or out of spec.- Unknown: Check was not performed, or its outcome could not be determined.)description"}

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Fanclass

The status of the camera's fan.

  • OK: Fan operating as expected.

  • Error: Unexpected fan stop.

  • Unknown: Fan status could not be determined.

Public Functions

Fan()

Default constructor.

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

The provided arguments must be descendants of Fan. 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 Fan. These types can be provided:

< Argstemplatetypename...>
FancopyWith(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 Fan 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 Fan. These types can be provided:

Status&status()constinlineconst

Get Status.

Status&status()inline

Get Status.

Fan&set( Status&const value)inline

Set Status.

Value&value()constinlineconst

Get Value.

Value&value()inline

Get Value.

Fan&set( Value&const value)inline

Set Value.

< 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( Fan&const other)constbool

Equality operator.

!=operator( Fan&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Fan"

The full path for this value.

name={}staticconstexprconstchar* "Fan"

The name of this value.

static constexpr const char * description   = { R"description(The statusof the camera's fan.- OK:Fanoperating as expected.- Error: Unexpectedfanstop.- Unknown:Fan statuscould not be determined.)description" }

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Statusclass

Severity of the fan check.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Status()=default

Default constructor.

Status(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Status&const other)constinlinebool

Comparison operator.

!=operator( Status&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Status.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Fan/Status"

The full path for this value.

name={}staticconstexprconstchar* "Status"

The name of this value.

static constexpr const char * description   = { R"description(Severity of the fan check.)description" }

The description for this value.

Statusokstaticconst

ok

Statussuboptimalstaticconst

suboptimal

Statuserrorstaticconst

error

Statusunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Valueclass

Whether the fan is operating as expected, or stopped unexpectedly.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
unexpectedFanStopenumerator

Public Functions

Value()=default

Default constructor.

Value(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()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( Value&const other)constinlinebool

Comparison operator.

!=operator( Value&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Value.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Fan/Value"

The full path for this value.

name={}staticconstexprconstchar* "Value"

The name of this value.

static constexpr const char * description  {R"description(Whether thefanis operating as expected, or stopped unexpectedly.)description"}

The description for this value.

Valueokstaticconst

ok

ValueunexpectedFanStopstaticconst

unexpectedFanStop

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

InfieldVerificationclass

The status of the camera's most recent infield verification.

  • OK: Last verification performed within the past year

  • Suboptimal: Last verification older than one year

  • Unknown: Camera has never been verified in the field

Public Functions

InfieldVerification()

Default constructor.

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

The provided arguments must be descendants of InfieldVerification. 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 InfieldVerification. These types can be provided:

< Argstemplatetypename...>
InfieldVerificationcopyWith(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 InfieldVerification 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 InfieldVerification. These types can be provided:

Status&status()constinlineconst

Get Status.

Status&status()inline

Get Status.

InfieldVerification&set( Status&const value)inline

Set Status.

Value&value()constinlineconst

Get Value.

Value&value()inline

Get Value.

InfieldVerification&set( Value&const value)inline

Set Value.

< 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( InfieldVerification&const other)constbool

Equality operator.

!=operator( InfieldVerification&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "InfieldVerification"

The full path for this value.

name={}staticconstexprconstchar* "InfieldVerification"

The name of this value.

static constexpr const char * description  {R"description(Thestatusof the camera's most recent infield verification.- OK: Last verification performed within the past year- Suboptimal: Last verification older than one year- Unknown:Camerahas never been verified in the field)description"}

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Statusclass

Severity of the infield verification check.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Status()=default

Default constructor.

Status(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Status&const other)constinlinebool

Comparison operator.

!=operator( Status&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Status.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "InfieldVerification/Status"

The full path for this value.

name={}staticconstexprconstchar* "Status"

The name of this value.

static constexpr const char * description  {R"description(Severity of the infield verification check.)description"}

The description for this value.

Statusokstaticconst

ok

Statussuboptimalstaticconst

suboptimal

Statuserrorstaticconst

error

Statusunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Valueclass

Time of the most recent infield verification.

Public Types

ValueType=stdchronosystem_clocktime_pointusing ::::::

The type of the underlying value.

Public Functions

Value()=default

Default constructor.

Value(stdchronosystem_clocktime_pointvalue:::::: )inlineexplicitconstexpr

Constructor.

stdchronosystem_clocktime_pointvalue()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( Value&const other)constinlinebool

Comparison operator.

!=operator( Value&const other)constinlinebool

Comparison operator.

<operator( Value&const other)constinlinebool

Comparison operator.

>operator( Value&const other)constinlinebool

Comparison operator.

<=operator( Value&const other)constinlinebool

Comparison operator.

>=operator( Value&const other)constinlinebool

Comparison operator.

Public Static Functions

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

The range of valid values for Value.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "InfieldVerification/Value"

The full path for this value.

name={}staticconstexprconstchar* "Value"

The name of this value.

static constexpr const char * description  {R"description(Time of the most recent infield verification.)description"}

The description for this value.

Friends

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

Operator to serialize the value to a stream.

MaxTransferSpeedclass

The end-to-end link speed between the camera and the host computer, defined as the minimum of the camera's link speed and the PC's link speed.

  • OK: Max transfer speed > 1 Gbps

  • Suboptimal: Max transfer speed = 1 Gbps

  • Error: Max transfer speed < 1 Gbps

  • Unknown: Max transfer speed could not be determined

Public Functions

MaxTransferSpeed()

Default constructor.

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

The provided arguments must be descendants of MaxTransferSpeed. 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 MaxTransferSpeed. These types can be provided:

< Argstemplatetypename...>
MaxTransferSpeedcopyWith(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 MaxTransferSpeed 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 MaxTransferSpeed. These types can be provided:

Status&status()constinlineconst

Get Status.

Status&status()inline

Get Status.

MaxTransferSpeed&set( Status&const value)inline

Set Status.

Value&value()constinlineconst

Get Value.

Value&value()inline

Get Value.

MaxTransferSpeed&set( Value&const value)inline

Set Value.

< 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( MaxTransferSpeed&const other)constbool

Equality operator.

!=operator( MaxTransferSpeed&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "MaxTransferSpeed"

The full path for this value.

name={}staticconstexprconstchar* "MaxTransferSpeed"

The name of this value.

static constexpr const char * description  {R"description(Theend-to-endlink speed between the camera and the hostcomputer, defined as the minimum of the camera's link speedand the PC's link speed.- OK: Max transfer speed > 1 Gbps- Suboptimal: Max transfer speed = 1 Gbps- Error: Max transfer speed < 1 Gbps- Unknown: Max transfer speed could not be determined)description"}

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Statusclass

Severity of the max transfer speed check.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Status()=default

Default constructor.

Status(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Status&const other)constinlinebool

Comparison operator.

!=operator( Status&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Status.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "MaxTransferSpeed/Status"

The full path for this value.

name={}staticconstexprconstchar* "Status"

The name of this value.

static constexpr const char * description  {R"description(Severity of the max transfer speed check.)description"}

The description for this value.

Statusokstaticconst

ok

Statussuboptimalstaticconst

suboptimal

Statuserrorstaticconst

error

Statusunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Valueclass

Max transfer speed in megabits per second (Mbps).

Public Types

ValueType=uint32_tusing

The type of the underlying value.

Public Functions

Value()=default

Default constructor.

Value(uint32_tvalue )inlineexplicitconstexpr

Constructor.

uint32_tvalue()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( Value&const other)constinlinebool

Comparison operator.

!=operator( Value&const other)constinlinebool

Comparison operator.

<operator( Value&const other)constinlinebool

Comparison operator.

>operator( Value&const other)constinlinebool

Comparison operator.

<=operator( Value&const other)constinlinebool

Comparison operator.

>=operator( Value&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangeuint32_t validRange()staticinlineconstexpr<>

The range of valid values for Value.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "MaxTransferSpeed/Value"

The full path for this value.

name={}staticconstexprconstchar* "Value"

The name of this value.

static constexpr const char * description  {R"description(Max transfer speed in megabits per second (Mbps).)description"}

The description for this value.

Friends

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

Operator to serialize the value to a stream.

Memoryclass

The status of the camera's memory test.

  • OK: Memory was tested and reported zero errors

  • Error: Memory was tested and an error was located

  • Unknown: Memory test was not performed

Public Functions

Memory()

Default constructor.

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

The provided arguments must be descendants of Memory. 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 Memory. These types can be provided:

< Argstemplatetypename...>
MemorycopyWith(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 Memory 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 Memory. These types can be provided:

Status&status()constinlineconst

Get Status.

Status&status()inline

Get Status.

Memory&set( Status&const value)inline

Set Status.

Value&value()constinlineconst

Get Value.

Value&value()inline

Get Value.

Memory&set( Value&const value)inline

Set Value.

< 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( Memory&const other)constbool

Equality operator.

!=operator( Memory&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Memory"

The full path for this value.

name={}staticconstexprconstchar* "Memory"

The name of this value.

static constexpr const char * description   = { R"description(The status of the camera's memorytest.- OK:Memorywas tested and reported zero errors- Error:Memorywas tested and an error was located- Unknown:Memorytest was not performed)description" }

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Statusclass

Severity of the memory check.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Status()=default

Default constructor.

Status(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Status&const other)constinlinebool

Comparison operator.

!=operator( Status&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Status.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Memory/Status"

The full path for this value.

name={}staticconstexprconstchar* "Status"

The name of this value.

static constexpr const char * description   = { R"description(Severity of the memory check.)description" }

The description for this value.

Statusokstaticconst

ok

Statussuboptimalstaticconst

suboptimal

Statuserrorstaticconst

error

Statusunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Valueclass

Number of memory errors detected by the memory test.

Public Types

ValueType=uint32_tusing

The type of the underlying value.

Public Functions

Value()=default

Default constructor.

Value(uint32_tvalue )inlineexplicitconstexpr

Constructor.

uint32_tvalue()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( Value&const other)constinlinebool

Comparison operator.

!=operator( Value&const other)constinlinebool

Comparison operator.

<operator( Value&const other)constinlinebool

Comparison operator.

>operator( Value&const other)constinlinebool

Comparison operator.

<=operator( Value&const other)constinlinebool

Comparison operator.

>=operator( Value&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangeuint32_t validRange()staticinlineconstexpr<>

The range of valid values for Value.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Memory/Value"

The full path for this value.

name={}staticconstexprconstchar* "Value"

The name of this value.

static constexpr const char * description  {R"description(Number ofmemory errors detected by the memorytest.)description"}

The description for this value.

Friends

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

Operator to serialize the value to a stream.

Overallclass

The aggregated severity across all checks, taking the highest-precedence severity among them.

Precedence from highest to lowest is Error, Unknown, Suboptimal, OK: a failing check is the most important to surface, and a check whose outcome could not be determined (Unknown) takes precedence over a Suboptimal one.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Overall()=default

Default constructor.

Overall(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Overall&const other)constinlinebool

Comparison operator.

!=operator( Overall&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Overall.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Overall"

The full path for this value.

name={}staticconstexprconstchar* "Overall"

The name of this value.

static constexpr const char * description  {R"description(The aggregated severity across all checks, taking thehighest-precedence severity among them. Precedence from highest tolowest is Error, Unknown, Suboptimal, OK: a failing check is themost important to surface, and a check whose outcome could not bedetermined (Unknown) takes precedence over a Suboptimal one.)description"}

The description for this value.

Overallokstaticconst

ok

Overallsuboptimalstaticconst

suboptimal

Overallerrorstaticconst

error

Overallunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Temperatureclass

The status of the camera's temperatures.

Each sub-status reflects the temperature of a specific component.

Public Functions

Temperature()

Default constructor.

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

The provided arguments must be descendants of Temperature. 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 Temperature. These types can be provided:

< Argstemplatetypename...>
TemperaturecopyWith(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 Temperature 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 Temperature. These types can be provided:

DMD&dmd()constinlineconst

Get DMD.

DMD&dmd()inline

Get DMD.

Temperature&set( DMD&const value)inline

Set DMD.

Temperature&set( DMDStatus&const:: value)inline

Set DMD::Status.

Temperature&set( DMDValue&const:: value)inline

Set DMD::Value.

LED&led()constinlineconst

Get LED.

LED&led()inline

Get LED.

Temperature&set( LED&const value)inline

Set LED.

Temperature&set( LEDStatus&const:: value)inline

Set LED::Status.

Temperature&set( LEDValue&const:: value)inline

Set LED::Value.

Lens&lens()constinlineconst

Get Lens.

Lens&lens()inline

Get Lens.

Temperature&set( Lens&const value)inline

Set Lens.

Temperature&set( LensStatus&const:: value)inline

Set Lens::Status.

Temperature&set( LensValue&const:: value)inline

Set Lens::Value.

< 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( Temperature&const other)constbool

Equality operator.

!=operator( Temperature&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature"

The full path for this value.

name={}staticconstexprconstchar* "Temperature"

The name of this value.

static constexpr const char * description  {R"description(The status of the camera's temperatures. Each sub-statusreflects thetemperatureof a specific component.)description"}

The description for this value.

Friends

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

Operator to send the value as string to a stream.

DMDclass

The status of the DMD (Digital Micromirror Device) temperature, in degrees Celsius.

Public Functions

DMD()

Default constructor.

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

The provided arguments must be descendants of DMD. 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 DMD. These types can be provided:

< Argstemplatetypename...>
DMDcopyWith(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 DMD 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 DMD. These types can be provided:

Status&status()constinlineconst

Get Status.

Status&status()inline

Get Status.

DMD&set( Status&const value)inline

Set Status.

Value&value()constinlineconst

Get Value.

Value&value()inline

Get Value.

DMD&set( Value&const value)inline

Set Value.

< 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( DMD&const other)constbool

Equality operator.

!=operator( DMD&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/DMD"

The full path for this value.

name={}staticconstexprconstchar* "DMD"

The name of this value.

static constexpr const char * description  {R"description(Thestatus of the DMD (Digital Micromirror Device) temperature, in degrees Celsius.- OK:Temperaturein (0, 50)- Suboptimal:Temperaturein [50, 60]- Error:Temperature< 0 or > 60)description"}

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Statusclass

Severity of the DMD temperature check.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Status()=default

Default constructor.

Status(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Status&const other)constinlinebool

Comparison operator.

!=operator( Status&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Status.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/DMD/Status"

The full path for this value.

name={}staticconstexprconstchar* "Status"

The name of this value.

static constexpr const char * description  {R"description(Severity of theDMD temperaturecheck.)description"}

The description for this value.

Statusokstaticconst

ok

Statussuboptimalstaticconst

suboptimal

Statuserrorstaticconst

error

Statusunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Valueclass

DMD temperature in degrees Celsius.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Value()=default

Default constructor.

Value( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

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( Value&const other)constinlinebool

Comparison operator.

!=operator( Value&const other)constinlinebool

Comparison operator.

<operator( Value&const other)constinlinebool

Comparison operator.

>operator( Value&const other)constinlinebool

Comparison operator.

<=operator( Value&const other)constinlinebool

Comparison operator.

>=operator( Value&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Value.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/DMD/Value"

The full path for this value.

name={}staticconstexprconstchar* "Value"

The name of this value.

static constexpr const char * description  {R"description(DMD temperaturein degrees Celsius.)description"}

The description for this value.

Friends

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

Operator to serialize the value to a stream.

LEDclass

The status of the LED temperature, in degrees Celsius.

Public Functions

LED()

Default constructor.

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

The provided arguments must be descendants of LED. 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 LED. These types can be provided:

< Argstemplatetypename...>
LEDcopyWith(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 LED 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 LED. These types can be provided:

Status&status()constinlineconst

Get Status.

Status&status()inline

Get Status.

LED&set( Status&const value)inline

Set Status.

Value&value()constinlineconst

Get Value.

Value&value()inline

Get Value.

LED&set( Value&const value)inline

Set Value.

< 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( LED&const other)constbool

Equality operator.

!=operator( LED&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/LED"

The full path for this value.

name={}staticconstexprconstchar* "LED"

The name of this value.

static constexpr const char * description  {R"description(Thestatus of the LED temperature, in degrees Celsius.- OK:Temperaturein (0, 60)- Suboptimal:Temperaturein [60, 70]- Error:Temperature< 0 or > 70)description"}

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Statusclass

Severity of the LED temperature check.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Status()=default

Default constructor.

Status(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Status&const other)constinlinebool

Comparison operator.

!=operator( Status&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Status.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/LED/Status"

The full path for this value.

name={}staticconstexprconstchar* "Status"

The name of this value.

static constexpr const char * description  {R"description(Severity of theLED temperaturecheck.)description"}

The description for this value.

Statusokstaticconst

ok

Statussuboptimalstaticconst

suboptimal

Statuserrorstaticconst

error

Statusunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Valueclass

LED temperature in degrees Celsius.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Value()=default

Default constructor.

Value( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

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( Value&const other)constinlinebool

Comparison operator.

!=operator( Value&const other)constinlinebool

Comparison operator.

<operator( Value&const other)constinlinebool

Comparison operator.

>operator( Value&const other)constinlinebool

Comparison operator.

<=operator( Value&const other)constinlinebool

Comparison operator.

>=operator( Value&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Value.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/LED/Value"

The full path for this value.

name={}staticconstexprconstchar* "Value"

The name of this value.

static constexpr const char * description  {R"description(LED temperaturein degrees Celsius.)description"}

The description for this value.

Friends

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

Operator to serialize the value to a stream.

Lensclass

The status of the lens temperature, in degrees Celsius.

Public Functions

Lens()

Default constructor.

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

The provided arguments must be descendants of Lens. 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 Lens. These types can be provided:

< Argstemplatetypename...>
LenscopyWith(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 Lens 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 Lens. These types can be provided:

Status&status()constinlineconst

Get Status.

Status&status()inline

Get Status.

Lens&set( Status&const value)inline

Set Status.

Value&value()constinlineconst

Get Value.

Value&value()inline

Get Value.

Lens&set( Value&const value)inline

Set Value.

< 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( Lens&const other)constbool

Equality operator.

!=operator( Lens&const other)constbool

Inequality operator.

stdstringtoString()const::

Get the value as string.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypegroupstaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/Lens"

The full path for this value.

name={}staticconstexprconstchar* "Lens"

The name of this value.

static constexpr const char * description  {R"description(Thestatus of the lens temperature, in degrees Celsius.- OK:Temperaturein (0, 50)- Suboptimal:Temperaturein [50, 60]- Error:Temperature< 0 or > 60)description"}

The description for this value.

Friends

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

Operator to send the value as string to a stream.

Statusclass

Severity of the lens temperature check.

Public Types

ValueTypeenumclass

The type of the underlying value.

Values:

okenumerator
suboptimalenumerator
errorenumerator
unknownenumerator

Public Functions

Status()=default

Default constructor.

Status(ValueTypevalue )inlineexplicitconstexpr

Constructor.

ValueTypevalue()const

Get the value.

stdstringtoString()const::

Get the value as string.

==operator( Status&const other)constinlinebool

Comparison operator.

!=operator( Status&const other)constinlinebool

Comparison operator.

Public Static Functions

stdsetValueType validValues()staticinline::<>

All valid values of Status.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/Lens/Status"

The full path for this value.

name={}staticconstexprconstchar* "Status"

The name of this value.

static constexpr const char * description  {R"description(Severity of thelens temperaturecheck.)description"}

The description for this value.

Statusokstaticconst

ok

Statussuboptimalstaticconst

suboptimal

Statuserrorstaticconst

error

Statusunknownstaticconst

unknown

Friends

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

Operator to serialize ValueType to a stream.

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

Operator to serialize the value to a stream.

Valueclass

Lens temperature in degrees Celsius.

Public Types

ValueType=doubleusing

The type of the underlying value.

Public Functions

Value()=default

Default constructor.

Value( doublevalue)inlineexplicitconstexpr

Constructor.

value()constdouble

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( Value&const other)constinlinebool

Comparison operator.

!=operator( Value&const other)constinlinebool

Comparison operator.

<operator( Value&const other)constinlinebool

Comparison operator.

>operator( Value&const other)constinlinebool

Comparison operator.

<=operator( Value&const other)constinlinebool

Comparison operator.

>=operator( Value&const other)constinlinebool

Comparison operator.

Public Static Functions

Rangedouble validRange()staticinlineconstexpr<>

The range of valid values for Value.

Public Static Attributes

DataModelNodeTypenodeType=DataModelNodeTypeleafValuestaticconstexpr:: ::::

The type of this node.

path={}staticconstexprconstchar* "Temperature/Lens/Value"

The full path for this value.

name={}staticconstexprconstchar* "Value"

The name of this value.

static constexpr const char * description  {R"description(Lens temperaturein degrees Celsius.)description"}

The description for this value.

Friends

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

Operator to serialize the value to a stream.

CameraHealthstruct

Result of running the camera's health checks.

Each check has a Status (severity) and a Value (the underlying measurement, when available). The Overall field aggregates the worst severity across all populated checks.

Status values:

  • OK: Optimal.

  • Suboptimal: Degraded but functional.

  • Error: Faulty or out of spec.

  • Unknown: Check was not performed, or its outcome could not be determined.

Public Types

OverallOption:stdunderlying_typeZividCameraHealthOverallValueType::typeenumclass ::<::::::>

The aggregated severity across all checks, taking the highest-precedence severity among them.

Precedence from highest to lowest is Error, Unknown, Suboptimal, OK: a failing check is the most important to surface, and a check whose outcome could not be determined (Unknown) takes precedence over a Suboptimal one.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator

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.

CameraHealth()inline

Constructor.

CameraHealth ^ 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.

CameraHealth ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

OverallOptionOverall

The aggregated severity across all checks, taking the highest-precedence severity among them.

Precedence from highest to lowest is Error, Unknown, Suboptimal, OK: a failing check is the most important to surface, and a check whose outcome could not be determined (Unknown) takes precedence over a Suboptimal one.

Public Static Attributes

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

Construct CameraHealth by loading from file.

Construct a new CameraHealth instance from a previously serialized string

See also Serialize.

FanGroupstruct

The status of the camera's fan.

  • OK: Fan operating as expected.

  • Error: Unexpected fan stop.

  • Unknown: Fan status could not be determined.

Public Types

StatusOption:stdunderlying_typeZividCameraHealthFanStatusValueType::typeenumclass ::<::::::::>

Severity of the fan check.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator
ValueOption:stdunderlying_typeZividCameraHealthFanValueValueType::typeenumclass ::<::::::::>

Whether the fan is operating as expected, or stopped unexpectedly.

Values:

Okenumerator
UnexpectedFanStopenumerator

Public Functions

FanGroup()inline

Constructor.

FanGroup ^ 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.

FanGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

StatusOptionStatus

Severity of the fan check.

SystemNullableValueOption Value::<>

Whether the fan is operating as expected, or stopped unexpectedly.

InfieldVerificationGroupstruct

The status of the camera's most recent infield verification.

  • OK: Last verification performed within the past year

  • Suboptimal: Last verification older than one year

  • Unknown: Camera has never been verified in the field

Public Types

StatusOption:stdunderlying_typeZividCameraHealthInfieldVerificationStatusValueType::typeenumclass ::<::::::::>

Severity of the infield verification check.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator

Public Functions

InfieldVerificationGroup()inline

Constructor.

InfieldVerificationGroup ^ 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.

InfieldVerificationGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

StatusOptionStatus

Severity of the infield verification check.

System::DateTime^ Value

Time of the most recent infield verification.

MaxTransferSpeedGroupstruct

The end-to-end link speed between the camera and the host computer, defined as the minimum of the camera's link speed and the PC's link speed.

  • OK: Max transfer speed > 1 Gbps

  • Suboptimal: Max transfer speed = 1 Gbps

  • Error: Max transfer speed < 1 Gbps

  • Unknown: Max transfer speed could not be determined

Public Types

StatusOption:stdunderlying_typeZividCameraHealthMaxTransferSpeedStatusValueType::typeenumclass ::<::::::::>

Severity of the max transfer speed check.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator

Public Functions

MaxTransferSpeedGroup()inline

Constructor.

MaxTransferSpeedGroup ^ 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.

MaxTransferSpeedGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

StatusOptionStatus

Severity of the max transfer speed check.

SystemNullableuint32_t Value::<>

Max transfer speed in megabits per second (Mbps).

MemoryGroupstruct

The status of the camera's memory test.

  • OK: Memory was tested and reported zero errors

  • Error: Memory was tested and an error was located

  • Unknown: Memory test was not performed

Public Types

StatusOption:stdunderlying_typeZividCameraHealthMemoryStatusValueType::typeenumclass ::<::::::::>

Severity of the memory check.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator

Public Functions

MemoryGroup()inline

Constructor.

MemoryGroup ^ 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.

MemoryGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

StatusOptionStatus

Severity of the memory check.

SystemNullableuint32_t Value::<>

Number of memory errors detected by the memory test.

TemperatureGroupstruct

The status of the camera's temperatures.

Each sub-status reflects the temperature of a specific component.

Public Functions

TemperatureGroup()inline

Constructor.

TemperatureGroup ^ 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.

TemperatureGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

DMDGroupstruct

The status of the DMD (Digital Micromirror Device) temperature, in degrees Celsius.

  • OK: Temperature in (0, 50)

  • Suboptimal: Temperature in [50, 60]

  • Error: Temperature < 0 or > 60

Public Types

StatusOption:stdunderlying_typeZividCameraHealthTemperatureDMDStatusValueType::typeenumclass ::<::::::::::>

Severity of the DMD temperature check.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator

Public Functions

DMDGroup()inline

Constructor.

DMDGroup ^ 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.

DMDGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

StatusOptionStatus

Severity of the DMD temperature check.

SystemNullabledouble Value::<>

DMD temperature in degrees Celsius.

LEDGroupstruct

The status of the LED temperature, in degrees Celsius.

  • OK: Temperature in (0, 60)

  • Suboptimal: Temperature in [60, 70]

  • Error: Temperature < 0 or > 70

Public Types

StatusOption:stdunderlying_typeZividCameraHealthTemperatureLEDStatusValueType::typeenumclass ::<::::::::::>

Severity of the LED temperature check.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator

Public Functions

LEDGroup()inline

Constructor.

LEDGroup ^ 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.

LEDGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

StatusOptionStatus

Severity of the LED temperature check.

SystemNullabledouble Value::<>

LED temperature in degrees Celsius.

LensGroupstruct

The status of the lens temperature, in degrees Celsius.

  • OK: Temperature in (0, 50)

  • Suboptimal: Temperature in [50, 60]

  • Error: Temperature < 0 or > 60

Public Types

StatusOption:stdunderlying_typeZividCameraHealthTemperatureLensStatusValueType::typeenumclass ::<::::::::::>

Severity of the lens temperature check.

Values:

OKenumerator
Suboptimalenumerator
Errorenumerator
Unknownenumerator

Public Functions

LensGroup()inline

Constructor.

LensGroup ^ 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.

LensGroup ^ Clone ()

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

System::String ^ ToString () override

Get string representation of the object.

Properties

StatusOptionStatus

Severity of the lens temperature check.

SystemNullabledouble Value::<>

Lens temperature in degrees Celsius.

classCameraHealth(
:str='Unknown'overall ,
:CameraHealth | None=Nonefan ,
:CameraHealth | None=Noneinfield_verification ,
:CameraHealth | None=Nonemax_transfer_speed ,
:CameraHealth | None=Nonememory ,
:CameraHealth | None=Nonetemperature ,
)

Result of running the camera's health checks. Each check has a Status (severity) and a Value (the underlying measurement, when available). The Overall field aggregates the worst severity across all populated checks. Status values: - OK: Optimal. - Suboptimal: Degraded but functional. - Error: Faulty or out of spec. - Unknown: Check was not performed, or its outcome could not be determined.

Initialization

classFan(:str='Unknown'status , :str | None=Nonevalue )

The status of the camera's fan. - OK: Fan operating as expected. - Error: Unexpected fan stop. - Unknown: Fan status could not be determined.

Initialization

classStatus

Severity of the fan check.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Status

classValue

Whether the fan is operating as expected, or stopped unexpectedly.

ok='ok'
unexpectedFanStop='unexpectedFanStop'
classmethodvalid_values()

All valid values of Value

propertystatus

Severity of the fan check.

propertyvalue

Whether the fan is operating as expected, or stopped unexpectedly.

classInfieldVerification(:str='Unknown'status , :datetime | None=Nonevalue )

The status of the camera's most recent infield verification. - OK: Last verification performed within the past year - Suboptimal: Last verification older than one year - Unknown: Camera has never been verified in the field

Initialization

classStatus

Severity of the infield verification check.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Status

propertystatus

Severity of the infield verification check.

propertyvalue

Time of the most recent infield verification.

classMaxTransferSpeed(:str='Unknown'status , :int | None=Nonevalue )

The end-to-end link speed between the camera and the host computer, defined as the minimum of the camera's link speed and the PC's link speed. - OK: Max transfer speed > 1 Gbps - Suboptimal: Max transfer speed = 1 Gbps - Error: Max transfer speed < 1 Gbps - Unknown: Max transfer speed could not be determined

Initialization

classStatus

Severity of the max transfer speed check.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Status

propertystatus

Severity of the max transfer speed check.

propertyvalue

Max transfer speed in megabits per second (Mbps).

classMemory(:str='Unknown'status , :int | None=Nonevalue )

The status of the camera's memory test. - OK: Memory was tested and reported zero errors - Error: Memory was tested and an error was located - Unknown: Memory test was not performed

Initialization

classStatus

Severity of the memory check.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Status

propertystatus

Severity of the memory check.

propertyvalue

Number of memory errors detected by the memory test.

classTemperature(
:CameraHealth | None=Nonedmd ,
:CameraHealth | None=Noneled ,
:CameraHealth | None=Nonelens ,
)

The status of the camera's temperatures. Each sub-status reflects the temperature of a specific component.

Initialization

classDMD(:str='Unknown'status , :float | int | None=Nonevalue )

The status of the DMD (Digital Micromirror Device) temperature, in degrees Celsius. - OK: Temperature in (0, 50) - Suboptimal: Temperature in [50, 60] - Error: Temperature < 0 or > 60

Initialization

classStatus

Severity of the DMD temperature check.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Status

propertystatus

Severity of the DMD temperature check.

propertyvalue

DMD temperature in degrees Celsius.

classLED(:str='Unknown'status , :float | int | None=Nonevalue )

The status of the LED temperature, in degrees Celsius. - OK: Temperature in (0, 60) - Suboptimal: Temperature in [60, 70] - Error: Temperature < 0 or > 70

Initialization

classStatus

Severity of the LED temperature check.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Status

propertystatus

Severity of the LED temperature check.

propertyvalue

LED temperature in degrees Celsius.

classLens(:str='Unknown'status , :float | int | None=Nonevalue )

The status of the lens temperature, in degrees Celsius. - OK: Temperature in (0, 50) - Suboptimal: Temperature in [50, 60] - Error: Temperature < 0 or > 60

Initialization

classStatus

Severity of the lens temperature check.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Status

propertystatus

Severity of the lens temperature check.

propertyvalue

Lens temperature in degrees Celsius.

propertydmd

The status of the DMD (Digital Micromirror Device) temperature, in degrees Celsius. - OK: Temperature in (0, 50) - Suboptimal: Temperature in [50, 60] - Error: Temperature < 0 or > 60

propertyled

The status of the LED temperature, in degrees Celsius. - OK: Temperature in (0, 60) - Suboptimal: Temperature in [60, 70] - Error: Temperature < 0 or > 70

propertylens

The status of the lens temperature, in degrees Celsius. - OK: Temperature in (0, 50) - Suboptimal: Temperature in [50, 60] - Error: Temperature < 0 or > 60

classOverall

The aggregated severity across all checks, taking the highest-precedence severity among them. Precedence from highest to lowest is Error, Unknown, Suboptimal, OK: a failing check is the most important to surface, and a check whose outcome could not be determined (Unknown) takes precedence over a Suboptimal one.

Error='Error'
OK='OK'
Suboptimal='Suboptimal'
Unknown='Unknown'
classmethodvalid_values()

All valid values of Overall

propertyoverall

The aggregated severity across all checks, taking the highest-precedence severity among them. Precedence from highest to lowest is Error, Unknown, Suboptimal, OK: a failing check is the most important to surface, and a check whose outcome could not be determined (Unknown) takes precedence over a Suboptimal one.

propertyfan

The status of the camera's fan. - OK: Fan operating as expected. - Error: Unexpected fan stop. - Unknown: Fan status could not be determined.

propertyinfield_verification

The status of the camera's most recent infield verification. - OK: Last verification performed within the past year - Suboptimal: Last verification older than one year - Unknown: Camera has never been verified in the field

propertymax_transfer_speed

The end-to-end link speed between the camera and the host computer, defined as the minimum of the camera's link speed and the PC's link speed. - OK: Max transfer speed > 1 Gbps - Suboptimal: Max transfer speed = 1 Gbps - Error: Max transfer speed < 1 Gbps - Unknown: Max transfer speed could not be determined

propertymemory

The status of the camera's memory test. - OK: Memory was tested and reported zero errors - Error: Memory was tested and an error was located - Unknown: Memory test was not performed

propertytemperature

The status of the camera's temperatures. Each sub-status reflects the temperature of a specific component.

classmethodload(file_name)

Construct CameraHealth by loading from file

save(file_name)

Save to the given file

classmethodfrom_serialized(value)

Construct a new CameraHealth 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.