OcaTaskScheduler#
This document describes the controller implementation of OcaTaskScheduler. This class is documented in the AES70 standard as:
Optional scheduler for scheduling tasks to run programs and commandsets in the future.
Overview#
- ClassID: 1.2.13
- Header:
aes70/controller/OcaTaskScheduler.hpp
- Namespace:
aes70::controller
- Inheritance: aes70::controller::OcaAgent, aes70::controller::OcaRoot, aes70::controller::object
Class Declaration#
namespace aes70::controller
{
class OcaTaskScheduler : public OcaAgent
{
public:
OcaTaskScheduler(std::shared_ptr<connection> connection,
uin32_t object_number);
OcaTaskScheduler(const OcaTaskScheduler &o);
// Control Methods
// 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 ActionPause and calls on_result or on_failure
void ActionPause(auto on_result, failure_callback on_failure);
// Calls ActionDrain and calls on_result or on_failure
void ActionDrain(auto on_result, failure_callback on_failure);
// Calls GetState and calls on_result or on_failure
void GetState(auto on_result, failure_callback on_failure);
// Calls GetTaskAgents and calls on_result or on_failure
void GetTaskAgents(auto on_result, failure_callback on_failure);
// Calls GetJobQueue and calls on_result or on_failure
void GetJobQueue(auto on_result, failure_callback on_failure);
// Calls GetJob and calls on_result or on_failure
void GetJob(OcaID32 ID, auto on_result, failure_callback on_failure);
// Calls GetJob and does not wait for the response
void GetJob(OcaID32 ID);
// Calls SetJob and calls on_result or on_failure
void SetJob(OcaID32 ID, OcaJobQueueItem Item, auto on_result, failure_callback on_failure);
// Calls SetJob and does not wait for the response
void SetJob(OcaID32 ID, OcaJobQueueItem Item);
// Calls AddJob and calls on_result or on_failure
void AddJob(OcaJobQueueItem Item, auto on_result, failure_callback on_failure);
// Calls AddJob and does not wait for the response
void AddJob(OcaJobQueueItem Item);
// Calls DeleteJob and calls on_result or on_failure
void DeleteJob(OcaID32 ID, auto on_result, failure_callback on_failure);
// Calls DeleteJob and does not wait for the response
void DeleteJob(OcaID32 ID);
// Calls ClearJobQueue and calls on_result or on_failure
void ClearJobQueue(auto on_result, failure_callback on_failure);
// Observing Properties
subscription observeState(auto callback, failure_callback on_failure);
subscription observeTaskAgents(auto callback, failure_callback on_failure);
subscription observeJobQueue(auto callback, failure_callback on_failure);
// Property Changed Subscriptions
subscription OnStateChanged(auto callback, failure_callback on_failure);
subscription OnTaskAgentsChanged(auto callback, failure_callback on_failure);
subscription OnJobQueueChanged(auto callback, failure_callback on_failure);
};
}
Methods#
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.
ActionPause#
void ActionPause(auto on_result, failure_callback on_failure)
Calls the method ActionPause 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.
ActionDrain#
void ActionDrain(auto on_result, failure_callback on_failure)
Calls the method ActionDrain 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.
GetState#
void GetState(auto on_result, failure_callback on_failure)
Calls the method GetState in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaTaskSchedulerState State
failure_callback on_failure
: A callback which is called on error.
GetTaskAgents#
void GetTaskAgents(auto on_result, failure_callback on_failure)
Calls the method GetTaskAgents in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaList<OcaONo> ONos
failure_callback on_failure
: A callback which is called on error.
GetJobQueue#
void GetJobQueue(auto on_result, failure_callback on_failure)
Calls the method GetJobQueue in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaList<OcaJobQueueItem> Queue
failure_callback on_failure
: A callback which is called on error.
GetJob#
void GetJob(OcaID32 ID, auto on_result, failure_callback on_failure)
Calls the method GetJob in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaID32 ID
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaJobQueueItem Item
failure_callback on_failure
: A callback which is called on error.
SetJob#
void SetJob(OcaID32 ID, OcaJobQueueItem Item, auto on_result, failure_callback on_failure)
Calls the method SetJob in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaID32 ID
OcaJobQueueItem Item
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
AddJob#
void AddJob(OcaJobQueueItem Item, auto on_result, failure_callback on_failure)
Calls the method AddJob in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaJobQueueItem Item
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaID32 ID
failure_callback on_failure
: A callback which is called on error.
DeleteJob#
void DeleteJob(OcaID32 ID, auto on_result, failure_callback on_failure)
Calls the method DeleteJob in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaID32 ID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ClearJobQueue#
void ClearJobQueue(auto on_result, failure_callback on_failure)
Calls the method ClearJobQueue 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.
observeState#
subscription observeState(auto callback, failure_callback on_failure)
Fetches the remote property State and subscribes for modifications. The callback is called with the initial values of State and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaTaskSchedulerState State
failure_callback on_failure
: A callback which is called on error.
observeTaskAgents#
subscription observeTaskAgents(auto callback, failure_callback on_failure)
Fetches the remote property TaskAgents and subscribes for modifications. The callback is called with the initial values of TaskAgents and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaList<OcaONo> TaskAgents
failure_callback on_failure
: A callback which is called on error.
observeJobQueue#
subscription observeJobQueue(auto callback, failure_callback on_failure)
Fetches the remote property JobQueue and subscribes for modifications. The callback is called with the initial values of JobQueue and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaList<OcaJobQueueItem> JobQueue
failure_callback on_failure
: A callback which is called on error.
OnStateChanged#
subscription OnStateChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaTaskSchedulerState State
failure_callback on_failure
: A callback which is called on error.
OnTaskAgentsChanged#
subscription OnTaskAgentsChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaList<OcaONo> TaskAgents
failure_callback on_failure
: A callback which is called on error.
OnJobQueueChanged#
subscription OnJobQueueChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaList<OcaJobQueueItem> JobQueue
failure_callback on_failure
: A callback which is called on error.