Management Datatypes

OcaManagerDescriptor

struct OcaManagerDescriptor

Structure that describes a manager instance.

OcaONo ObjectNumber

Object number of this manager instance.

OcaString Name

Name of the manager instance.

OcaClassID ClassID

ClassID of the class from which the manager instance was created.

OcaClassVersionNumber ClassVersion

Version number of the class from which this instance was created.

OCP.1 Encoding

Field

Basic type

Byte length

ObjectNumber.ONo

OcaUint32

4

Name.Len

OcaUint16

2

Name.Value

string

variable

ClassID

OcaClassID

(2 + Count * 2 * variable)

ClassVersion.Value

OcaUint16

2

OcaManagerDefaultObjectNumbers

struct OcaManagerDefaultObjectNumbers

Datatype that defines the fixed object numbers assigned to the various OcaManager objects.

OcaONo DeviceManager
OcaONo SecurityManager
OcaONo FirmwareManager
OcaONo SubscriptionManager
OcaONo PowerManager
OcaONo NetworkManager
OcaONo MediaClockManager
OcaONo LibraryManager
OcaONo AudioProcessingManager
OcaONo DeviceTimeManager
OcaONo TaskManager
OcaONo CodingManager
OcaONo DiagnosticManager

OCP.1 Encoding

Field

Basic type

Byte length

DeviceManager.ONo

OcaUint32

4

SecurityManager.ONo

OcaUint32

4

FirmwareManager.ONo

OcaUint32

4

SubscriptionManager.ONo

OcaUint32

4

PowerManager.ONo

OcaUint32

4

NetworkManager.ONo

OcaUint32

4

MediaClockManager.ONo

OcaUint32

4

LibraryManager.ONo

OcaUint32

4

AudioProcessingManager.ONo

OcaUint32

4

DeviceTimeManager.ONo

OcaUint32

4

TaskManager.ONo

OcaUint32

4

CodingManager.ONo

OcaUint32

4

DiagnosticManager.ONo

OcaUint32

4

OcaDeviceState

OcaModelGUID

struct OcaModelGUID

64 bit device type GUID.

OcaBlobFixedLen<1> Reserved

8 reserved bits.

OcaBlobFixedLen<3> MfrCode

IEEE Manufacturer code. Unique worldwide.

OcaBlobFixedLen<4> ModelCode

Model code. Unique within the given manufacturer’s products. May be set freely by the manufacturer.

OCP.1 Encoding

Field

Basic type

Byte length

Reserved

OcaBlobFixedLen<1>

1

MfrCode

OcaBlobFixedLen<3>

3

ModelCode

OcaBlobFixedLen<4>

4

OcaModelDescription

struct OcaModelDescription

Friendly description of this particular product model.

OcaString Manufacturer

Name of manufacturer.

OcaString Name

Name of this model (whatever the manufacturer wants to call it).

OcaString Version

Text name for the version of this model, e.g. “1.2.1a”.

OCP.1 Encoding

Field

Basic type

Byte length

Manufacturer.Len

OcaUint16

2

Manufacturer.Value

string

variable

Name.Len

OcaUint16

2

Name.Value

string

variable

Version.Len

OcaUint16

2

Version.Value

string

variable

OcaResetCause

enum OcaResetCause : uint8_t

Enumeration of reasons for device reset.

enumerator PowerOn = 0

Reset due to powering up.

enumerator InternalError = 1

Reset due to internal error.

enumerator Upgrade = 2

Reset following upgrade of firmware.

enumerator ExternalRequest = 3

Reset due to an external request (i.e. Reset method of DeviceManager or hardware reset pin).

OcaComponent

enum OcaComponent : uint16_t

Enumeration (16-bit) for of software & firmware components in the device. Except for the boot loader, all other values of this enum are device-specific and will be specified by subclassing this class.

enumerator BootLoader = 0

The boot loader image.

OcaPowerState

enum OcaPowerState : uint8_t

Enumeration defining the power states that OCA devices can be in. The state is returned by the device’s Power Manager on request.

enumerator None = 0

Unspecified state.

enumerator Working = 1

Power is on.

enumerator Standby = 2

The device is in standby mode, but may be awoken by a call to the appropriate state-changing method of this class.

enumerator Off = 3

The device is off, but may (depending on implementation) be awoken by a transport-dependent wakeup mechanism.