Block and Matrix Datatypes

OcaBlockMember

struct OcaBlockMember

Describes an object that is a member of a block.

OcaObjectIdentification MemberObjectIdentification

Object identification of a block member.

OcaONo ContainerObjectNumber

Object number of a the block that contains the member.

OCP.1 Encoding

Field

Basic type

Byte length

MemberObjectIdentification.ONo.ONo

OcaUint32

4

MemberObjectIdentification.ClassIdentification.ClassID

OcaClassID

(2 + Count * 2 * variable)

MemberObjectIdentification.ClassIdentification.ClassVersion.Value

OcaUint16

2

ContainerObjectNumber.ONo

OcaUint32

4

OcaPort

struct OcaPort

Representation of an OCA (input or output) port that is used in the signal path representation of an OCA device.

OcaONo Owner

Object number of the object that owns the port.

OcaPortID ID

ID of the port.

OcaString Name

Port ID of the port.

OCP.1 Encoding

Field

Basic type

Byte length

Owner.ONo

OcaUint32

4

ID.Mode

OcaEnumItem

1

ID.Index

OcaUint16

2

Name.Len

OcaUint16

2

Name.Value

string

variable

OcaPortMode

enum OcaPortMode : uint8_t

Enum that describes whether a port is for input or output.

enumerator Input = 1

Input port

enumerator Output = 2

Output port

OcaPortID

struct OcaPortID

Unique identifier of input or output port within a given worker or block class. Port numbers are ordinals starting at 1, and there are separate numbering spaces for input and output ports.

OcaPortMode Mode

Enum that indicates whether the port is for input or output.

OcaUint16 Index

Index of port within given input or output set of specified object.

OCP.1 Encoding

Field

Basic type

Byte length

Mode

OcaEnumItem

1

Index

OcaUint16

2

OcaSignalPath

struct OcaSignalPath

Signal path between two object ports in the same device.

OcaPort SourcePort

Source port (i.e. output port) of the signal path.

OcaPort SinkPort

Sink port (i.e. input port) of the signal path.

OCP.1 Encoding

Field

Basic type

Byte length

SourcePort.Owner.ONo

OcaUint32

4

SourcePort.ID.Mode

OcaEnumItem

1

SourcePort.ID.Index

OcaUint16

2

SourcePort.Name.Len

OcaUint16

2

SourcePort.Name.Value

string

variable

SinkPort.Owner.ONo

OcaUint32

4

SinkPort.ID.Mode

OcaEnumItem

1

SinkPort.ID.Index

OcaUint16

2

SinkPort.Name.Len

OcaUint16

2

SinkPort.Name.Value

string

variable

OcaProtoMember

using OcaProtoMember = OcaProtoONo

Describes proto-member of a block factory

OcaProtoONo

using OcaProtoONo = OcaUint32

Object number of an OCA object.

OcaProtoObjectIdentification

struct OcaProtoObjectIdentification

Prototype object identification. Composite of prototype object number and prototype object’s class identification. Used in OcaBlockFactory .

OcaProtoONo POno

Prototype object number of referenced prototype object.

OcaClassIdentification ClassIdentification

Class identification of referenced object.

OCP.1 Encoding

Field

Basic type

Byte length

POno.Value

OcaUint32

4

ClassIdentification.ClassID

OcaClassID

(2 + Count * 2 * variable)

ClassIdentification.ClassVersion.Value

OcaUint16

2

OcaProtoPortID

struct OcaProtoPortID

Unique identifier of prototype input or output port within a block factory. Prototype port numbers are ordinals starting at 1, and there are separate numbering spaces for input and output ports.

OcaPortMode Mode

Enum that indicates whether the prototype port is an for input or output.

OcaUint16 Index

Number of the proto port within input or output group. 1-based.

OCP.1 Encoding

Field

Basic type

Byte length

Mode

OcaEnumItem

1

Index

OcaUint16

2

OcaProtoPort

struct OcaProtoPort

Representation of an OCA (input or output) proto-port that is used in the proto-signal path representation of an OCA device.

OcaProtoONo Owner

Proto-object number of the proto-member that owns the proto-port. The value of 0 (zero) is special, and refers to the block itself, rather than to any of its members.

OcaProtoPortID ProtoID

ID of the proto-port.

OcaString Name

Name of the proto-port.

OCP.1 Encoding

Field

Basic type

Byte length

Owner.Value

OcaUint32

4

ProtoID.Mode

OcaEnumItem

1

ProtoID.Index

OcaUint16

2

Name.Len

OcaUint16

2

Name.Value

string

variable

OcaProtoSignalPath

struct OcaProtoSignalPath

Proto-signal path between two proto-member ports in a factory.

OcaProtoPort SourceProtoPort

Source proto-port (i.e. output port) of the proto-signal path.

OcaProtoPort SinkProtoPort

Sink proto-port (i.e. input port) of the proto-signal path.

OCP.1 Encoding

Field

Basic type

Byte length

SourceProtoPort.Owner.Value

OcaUint32

4

SourceProtoPort.ProtoID.Mode

OcaEnumItem

1

SourceProtoPort.ProtoID.Index

OcaUint16

2

SourceProtoPort.Name.Len

OcaUint16

2

SourceProtoPort.Name.Value

string

variable

SinkProtoPort.Owner.Value

OcaUint32

4

SinkProtoPort.ProtoID.Mode

OcaEnumItem

1

SinkProtoPort.ProtoID.Index

OcaUint16

2

SinkProtoPort.Name.Len

OcaUint16

2

SinkProtoPort.Name.Value

string

variable

OcaMatrixCoordinate

using OcaMatrixCoordinate = OcaUint16

Coordinate value (x or y) for OcaMatrix. Value is zero-relative, i.e. the first row or column is number zero. A value of 65535 means all rows or columns.

OcaObjectSearchResult

struct OcaObjectSearchResult

Result of object search via the Find…() methods of OcaBlock . Dynamic format, form used depends on type of search and options. The FieldMap parameter of the Find…() methods specifies which optional fields should be returned as nonnull.

OcaONo ONo

ONo of object found

OcaClassIdentification ClassIdentification

Class identification (class ID + class version) of object found

OcaONoPath ContainerPath

Chain of ONos leading from root to this object’s container

OcaString Role

Object role in device

OcaString Label

Object user-specified label

OCP.1 Encoding

Field

Basic type

Byte length

ONo.ONo

OcaUint32

4

ClassIdentification.ClassID

OcaClassID

(2 + Count * 2 * variable)

ClassIdentification.ClassVersion.Value

OcaUint16

2

ContainerPath.Value

OcaList<OcaUint32>

(2 + 4 * Count)

Role.Len

OcaUint16

2

Role.Value

string

variable

Label.Len

OcaUint16

2

Label.Value

string

variable

OcaObjectSearchResultFlags