Agent Datatypes

OcaGrouperGroup

struct OcaGrouperGroup

Describes a group in a grouper.

OcaUint16 Index

Index of group in Grouper

OcaString Name

Name of the group.

OcaONo ProxyONo

Object number of the group’s proxy. The proxy’s class is the same as the Grouper’s citizen class.

OCP.1 Encoding

Field

Basic type

Byte length

Index

OcaUint16

2

Name.Len

OcaUint16

2

Name.Value

string

variable

ProxyONo.ONo

OcaUint32

4

OcaGrouperCitizen

struct OcaGrouperCitizen

Describes a citizen of a grouper. Refers to a specific worker object somewhere in the media network.

OcaUint16 Index

Index of citizen in Grouper

OcaOPath ObjectPath

Object path (= hostname + object number) of the worker object that is the citizen of the grouper.

OcaBoolean Online

True iff connection from grouper to citizen is healthy.

OCP.1 Encoding

Field

Basic type

Byte length

Index

OcaUint16

2

ObjectPath.HostID.Value.DataSize

OcaUint16

2

ObjectPath.HostID.Value.Data

OcaUint8

1 * Count

ObjectPath.ONo.ONo

OcaUint32

4

Online

OcaBoolean

1

OcaGrouperEnrollment

struct OcaGrouperEnrollment

Describes the enrollment of a citizen into a group.

OcaUint16 GroupIndex

Grouper’s index of group in which the citizen identified by CitizenIndex is enrolled.

OcaUint16 CitizenIndex

Grouper’s index of a citizen enrolled in the group identified by GroupIndex.

OCP.1 Encoding

Field

Basic type

Byte length

GroupIndex

OcaUint16

2

CitizenIndex

OcaUint16

2

OcaGrouperMode

enum OcaGrouperMode : uint8_t

Select mode of OcaGrouper : master-slave or peer-to-peer

enumerator MasterSlave = 1

OcaGrouper is in master-slave mode.

enumerator PeerToPeer = 2

OcaGrouper is in peer-to-peer mode.

OcaObserverState

enum OcaObserverState : uint8_t

Interpolation law for ramper to use.

enumerator NotTriggered = 0

Observer is not triggered.

enumerator Triggered = 1

Observer is triggered.

OcaRelationalOperator

enum OcaRelationalOperator : uint8_t

Enumeration of relational operators that can be used in OCA classes.

enumerator None = 0
enumerator Equality = 1

The equality (==) operator.

enumerator Inequality = 2

The inequality (!=) operator.

enumerator GreaterThan = 3

The greater than (>) operator.

enumerator GreaterThanOrEqual = 4

The greater than or equal (:raw:html:`>`=) operator.

enumerator LessThan = 5

The less than (<) operator

enumerator LessThanOrEqual = 6

The less than or equal (:raw:html:`&lt;`=) operator.

OcaPowerSupplyType

enum OcaPowerSupplyType : uint8_t

Type of power supply.

enumerator None = 0

No power supply.

enumerator Mains = 1

Mains-powered power supply.

enumerator Battery = 2

Battery power supply.

enumerator Phantom = 3

Phantom power supply. Includes Power-over-Ethernet supplies.

enumerator Solar = 4

Solar power supply

OcaPowerSupplyLocation

enum OcaPowerSupplyLocation : uint8_t

Physical location of a device power supply.

enumerator Unspecified = 1

Unspecified location

enumerator Internal = 2

Power supply is physically inside the device.

enumerator External = 3

Power supply is physically outside the device.

OcaPowerSupplyState

enum OcaPowerSupplyState : uint8_t

Status of a device power supply.

enumerator Off = 0

Powered down.

enumerator Unavailable = 1

Power supply is turned on but not available for activation.

enumerator Available = 2

Power supply is fully available for activation.

enumerator Active = 3

Power supply is currently supplying power to the device.

OcaRamperCommand

enum OcaRamperCommand : uint8_t

Command repertoire of OcaRamper’s Control method.

enumerator Enable = 1

Enable the ramper. Enter Enabled state.

enumerator Start = 2

Unconditionally start ramping now. Enter Ramping state.

enumerator Halt = 3

If Ramping , stop ramping. Return to Initialized or Scheduled state, whichever is appropriate. Else return to

OcaRamperState

enum OcaRamperState : uint8_t

States of the ramper. Here are the rules for ramper state change:

  • A freshly-constructed ramper’s state is NotInitialized .

  • A ramper becomes Initialized when : The ramper is NotInitialized ; AND TargetProperty has been set to a valid value; AND Goal has been set; AND Duration has been set.

  • A ramper becomes Scheduled when It is Initialized ; AND T start and TimeMode have been set; AND (Tstart + Duration ) is in the future.

  • A ramper becomes Enabled when it is Scheduled AND receives an Enable command.

  • A ramper becomes Ramping when: It is Enabled and the ramp start time is reached; OR It is Initialized , Scheduled , or Enabled and a Start command is received.

  • Completion of a ramp or Receipt of a Halt command causes the state to become: Scheduled , if Tstart, Time Mode have been set; AND (Tstart + Duration) is in the future. Otherwise, Initialized.

enumerator NotInitialized = 1

Ramper is not initialized and may not be started or enabled.

enumerator Iniitialized = 2

Ramper is initialized sufficiently for nonscheduled ramps to work. A nonscheduled ramp is one that has no defined start time and must be started with the Start command.

enumerator Scheduled = 3

Ramper is initialized sufficiently for both nonscheduled and scheduled ramps to work. A scheduled ramp is one that has a defined start time.

enumerator Enabled = 4

Ramper’s timer is running and scheduled ramp will commence at the designated future time.

enumerator Ramping = 5

Ramper is currently executing a ramp.