OcaTaskAgent#
This document describes the controller implementation of OcaTaskAgent. This class is documented in the AES70 standard as:
Task scheduler. Holds a queue of task-program pairs to be executed under specific future conditions.
Overview#
- ClassID: 1.2.12
- Header:
aes70/controller/OcaTaskAgent.hpp
- Namespace:
aes70::controller
- Inheritance: aes70::controller::OcaAgent, aes70::controller::OcaRoot, aes70::controller::object
Class Declaration#
namespace aes70::controller
{
class OcaTaskAgent : public OcaAgent
{
public:
OcaTaskAgent(std::shared_ptr<connection> connection,
uin32_t object_number);
OcaTaskAgent(const OcaTaskAgent &o);
// Control Methods
// Calls ActionPrepare and calls on_result or on_failure
void ActionPrepare(OcaONo Program, OcaBlob ExecutionParameters, OcaProgramRunMode RunMode, auto on_result, failure_callback on_failure);
// Calls ActionPrepare and does not wait for the response
void ActionPrepare(OcaONo Program, OcaBlob ExecutionParameters, OcaProgramRunMode RunMode);
// Calls ActionRun and calls on_result or on_failure
void ActionRun(OcaONo Program, OcaBlob ExecutionParameters, OcaProgramRunMode RunMode, auto on_result, failure_callback on_failure);
// Calls ActionRun and does not wait for the response
void ActionRun(OcaONo Program, OcaBlob ExecutionParameters, OcaProgramRunMode RunMode);
// Calls ActionStart and calls on_result or on_failure
void ActionStart(auto on_result, failure_callback on_failure);
// Calls ActionStop and calls on_result or on_failure
void ActionStop(auto on_result, failure_callback on_failure);
// Calls ActionReset and calls on_result or on_failure
void ActionReset(auto on_result, failure_callback on_failure);
// Calls ActionClear and calls on_result or on_failure
void ActionClear(auto on_result, failure_callback on_failure);
// Calls GetBlocked and calls on_result or on_failure
void GetBlocked(auto on_result, failure_callback on_failure);
// Calls SetBlocked and calls on_result or on_failure
void SetBlocked(OcaBoolean Blocked, auto on_result, failure_callback on_failure);
// Calls SetBlocked and does not wait for the response
void SetBlocked(OcaBoolean Blocked);
// Calls GetOperationalState and calls on_result or on_failure
void GetOperationalState(auto on_result, failure_callback on_failure);
// Calls GetExecutableONo and calls on_result or on_failure
void GetExecutableONo(auto on_result, failure_callback on_failure);
// Calls GetExecutionParameters and calls on_result or on_failure
void GetExecutionParameters(auto on_result, failure_callback on_failure);
// Calls GetRunMode and calls on_result or on_failure
void GetRunMode(auto on_result, failure_callback on_failure);
// Observing Properties
subscription observeExecutableONo(auto callback, failure_callback on_failure);
subscription observeGroupID(auto callback, failure_callback on_failure);
subscription observeExecutionParameters(auto callback, failure_callback on_failure);
subscription observeRunMode(auto callback, failure_callback on_failure);
subscription observeBlocked(auto callback, failure_callback on_failure);
subscription observeOperationalState(auto callback, failure_callback on_failure);
// Property Changed Subscriptions
subscription OnExecutableONoChanged(auto callback, failure_callback on_failure);
subscription OnGroupIDChanged(auto callback, failure_callback on_failure);
subscription OnExecutionParametersChanged(auto callback, failure_callback on_failure);
subscription OnRunModeChanged(auto callback, failure_callback on_failure);
subscription OnBlockedChanged(auto callback, failure_callback on_failure);
subscription OnOperationalStateChanged(auto callback, failure_callback on_failure);
};
}
Methods#
ActionPrepare#
void ActionPrepare(OcaONo Program, OcaBlob ExecutionParameters, OcaProgramRunMode RunMode, auto on_result, failure_callback on_failure)
Calls the method ActionPrepare in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaONo Program
OcaBlob ExecutionParameters
OcaProgramRunMode RunMode
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ActionRun#
void ActionRun(OcaONo Program, OcaBlob ExecutionParameters, OcaProgramRunMode RunMode, auto on_result, failure_callback on_failure)
Calls the method ActionRun in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaONo Program
OcaBlob ExecutionParameters
OcaProgramRunMode RunMode
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ActionStart#
void ActionStart(auto on_result, failure_callback on_failure)
Calls the method ActionStart in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ActionStop#
void ActionStop(auto on_result, failure_callback on_failure)
Calls the method ActionStop in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ActionReset#
void ActionReset(auto on_result, failure_callback on_failure)
Calls the method ActionReset in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ActionClear#
void ActionClear(auto on_result, failure_callback on_failure)
Calls the method ActionClear in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetBlocked#
void GetBlocked(auto on_result, failure_callback on_failure)
Calls the method GetBlocked in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaBoolean Blocked
failure_callback on_failure
: A callback which is called on error.
SetBlocked#
void SetBlocked(OcaBoolean Blocked, auto on_result, failure_callback on_failure)
Calls the method SetBlocked in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaBoolean Blocked
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetOperationalState#
void GetOperationalState(auto on_result, failure_callback on_failure)
Calls the method GetOperationalState in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaTaskOperationalState State
failure_callback on_failure
: A callback which is called on error.
GetExecutableONo#
void GetExecutableONo(auto on_result, failure_callback on_failure)
Calls the method GetExecutableONo in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaONo ONo
failure_callback on_failure
: A callback which is called on error.
GetExecutionParameters#
void GetExecutionParameters(auto on_result, failure_callback on_failure)
Calls the method GetExecutionParameters in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaBlob Parameters
failure_callback on_failure
: A callback which is called on error.
GetRunMode#
void GetRunMode(auto on_result, failure_callback on_failure)
Calls the method GetRunMode in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaProgramRunMode RunMode
failure_callback on_failure
: A callback which is called on error.
observeExecutableONo#
subscription observeExecutableONo(auto callback, failure_callback on_failure)
Fetches the remote property ExecutableONo and subscribes for modifications. The callback is called with the initial values of ExecutableONo and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaONo ExecutableONo
failure_callback on_failure
: A callback which is called on error.
observeGroupID#
subscription observeGroupID(auto callback, failure_callback on_failure)
Fetches the remote property GroupID and subscribes for modifications. The callback is called with the initial values of GroupID and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaID16 GroupID
failure_callback on_failure
: A callback which is called on error.
observeExecutionParameters#
subscription observeExecutionParameters(auto callback, failure_callback on_failure)
Fetches the remote property ExecutionParameters and subscribes for modifications. The callback is called with the initial values of ExecutionParameters and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaBlob ExecutionParameters
failure_callback on_failure
: A callback which is called on error.
observeRunMode#
subscription observeRunMode(auto callback, failure_callback on_failure)
Fetches the remote property RunMode and subscribes for modifications. The callback is called with the initial values of RunMode and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaProgramRunMode RunMode
failure_callback on_failure
: A callback which is called on error.
observeBlocked#
subscription observeBlocked(auto callback, failure_callback on_failure)
Fetches the remote property Blocked and subscribes for modifications. The callback is called with the initial values of Blocked and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaBoolean Blocked
failure_callback on_failure
: A callback which is called on error.
observeOperationalState#
subscription observeOperationalState(auto callback, failure_callback on_failure)
Fetches the remote property OperationalState and subscribes for modifications. The callback is called with the initial values of OperationalState and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaTaskOperationalState OperationalState
failure_callback on_failure
: A callback which is called on error.
OnExecutableONoChanged#
subscription OnExecutableONoChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaONo ExecutableONo
failure_callback on_failure
: A callback which is called on error.
OnGroupIDChanged#
subscription OnGroupIDChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaID16 GroupID
failure_callback on_failure
: A callback which is called on error.
OnExecutionParametersChanged#
subscription OnExecutionParametersChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaBlob ExecutionParameters
failure_callback on_failure
: A callback which is called on error.
OnRunModeChanged#
subscription OnRunModeChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaProgramRunMode RunMode
failure_callback on_failure
: A callback which is called on error.
OnBlockedChanged#
subscription OnBlockedChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaBoolean Blocked
failure_callback on_failure
: A callback which is called on error.
OnOperationalStateChanged#
subscription OnOperationalStateChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaTaskOperationalState OperationalState
failure_callback on_failure
: A callback which is called on error.