Skip to content

OcaBlockFactoryAgent#

This document describes the controller implementation of OcaBlockFactoryAgent. This class is documented in the AES70 standard as:

Create custom OcaBlock instances (blocks). Usable only in reconfigurable devices. See AES70-1] for an overview.


Overview#

Class Declaration#

namespace aes70::controller
{
  class OcaBlockFactoryAgent : public OcaAgent
  {
  public:
    OcaBlockFactoryAgent(std::shared_ptr<connection> connection,
            uin32_t object_number);
    OcaBlockFactoryAgent(const OcaBlockFactoryAgent &o);

    // Control Methods
    // Calls GetGlobalType and calls on_result or on_failure
    void GetGlobalType(auto on_result, failure_callback on_failure);
    // Calls SetGlobalType and calls on_result or on_failure
    void SetGlobalType(OcaGlobalTypeIdentifier GlobalType, auto on_result, failure_callback on_failure);
    // Calls SetGlobalType and does not wait for the response
    void SetGlobalType(OcaGlobalTypeIdentifier GlobalType);
    // Calls AddProtoActionObject and calls on_result or on_failure
    void AddProtoActionObject(OcaClassID ClassIdentification, OcaList<OcaConstructionParameter> ConstructionParameters, auto on_result, failure_callback on_failure);
    // Calls AddProtoActionObject and does not wait for the response
    void AddProtoActionObject(OcaClassID ClassIdentification, OcaList<OcaConstructionParameter> ConstructionParameters);
    // Calls AddProtoBlockUsingFactory and calls on_result or on_failure
    void AddProtoBlockUsingFactory(OcaONo FactoryONo, auto on_result, failure_callback on_failure);
    // Calls AddProtoBlockUsingFactory and does not wait for the response
    void AddProtoBlockUsingFactory(OcaONo FactoryONo);
    // Calls GetProtoActionObjects and calls on_result or on_failure
    void GetProtoActionObjects(auto on_result, failure_callback on_failure);
    // Calls AddProtoDatasetObject and calls on_result or on_failure
    void AddProtoDatasetObject(OcaClassID ClassIdentification, OcaList<OcaConstructionParameter> ConstructionParameters, auto on_result, failure_callback on_failure);
    // Calls AddProtoDatasetObject and does not wait for the response
    void AddProtoDatasetObject(OcaClassID ClassIdentification, OcaList<OcaConstructionParameter> ConstructionParameters);
    // Calls GetProtoDatasetObjects and calls on_result or on_failure
    void GetProtoDatasetObjects(auto on_result, failure_callback on_failure);
    // Calls DeleteProtoMember and calls on_result or on_failure
    void DeleteProtoMember(OcaProtoONo ProtoObjectNumber, auto on_result, failure_callback on_failure);
    // Calls DeleteProtoMember and does not wait for the response
    void DeleteProtoMember(OcaProtoONo ProtoObjectNumber);
    // Calls GetProtoBlockPorts and calls on_result or on_failure
    void GetProtoBlockPorts(auto on_result, failure_callback on_failure);
    // Calls SetProtoBlockPorts and calls on_result or on_failure
    void SetProtoBlockPorts(OcaList<OcaProtoPort> Ports, auto on_result, failure_callback on_failure);
    // Calls SetProtoBlockPorts and does not wait for the response
    void SetProtoBlockPorts(OcaList<OcaProtoPort> Ports);
    // Calls SetProtoBlockPort and calls on_result or on_failure
    void SetProtoBlockPort(OcaString Name, OcaIODirection PortMode, auto on_result, failure_callback on_failure);
    // Calls SetProtoBlockPort and does not wait for the response
    void SetProtoBlockPort(OcaString Name, OcaIODirection PortMode);
    // Calls DeleteProtoBlockPort and calls on_result or on_failure
    void DeleteProtoBlockPort(OcaPortID ProtoPortID, auto on_result, failure_callback on_failure);
    // Calls DeleteProtoBlockPort and does not wait for the response
    void DeleteProtoBlockPort(OcaPortID ProtoPortID);
    // Calls GetProtoSignalPaths and calls on_result or on_failure
    void GetProtoSignalPaths(auto on_result, failure_callback on_failure);
    // Calls SetProtoSignalPaths and calls on_result or on_failure
    void SetProtoSignalPaths(OcaMap<OcaUint16, OcaProtoSignalPath> SignalPaths, auto on_result, failure_callback on_failure);
    // Calls SetProtoSignalPaths and does not wait for the response
    void SetProtoSignalPaths(OcaMap<OcaUint16, OcaProtoSignalPath> SignalPaths);
    // Calls SetProtoSignalPath and calls on_result or on_failure
    void SetProtoSignalPath(OcaProtoSignalPath Path, auto on_result, failure_callback on_failure);
    // Calls SetProtoSignalPath and does not wait for the response
    void SetProtoSignalPath(OcaProtoSignalPath Path);
    // Calls DeleteProtoSignalPath and calls on_result or on_failure
    void DeleteProtoSignalPath(auto on_result, failure_callback on_failure);
    // Calls GetProtoBlockPortClockMap and calls on_result or on_failure
    void GetProtoBlockPortClockMap(auto on_result, failure_callback on_failure);
    // Calls SetProtoBlockPortClockMap and calls on_result or on_failure
    void SetProtoBlockPortClockMap(OcaMap<OcaPortID, OcaProtoPortClockMapEntry> Map, auto on_result, failure_callback on_failure);
    // Calls SetProtoBlockPortClockMap and does not wait for the response
    void SetProtoBlockPortClockMap(OcaMap<OcaPortID, OcaProtoPortClockMapEntry> Map);
    // Calls SetProtoBlockPortClockMapEntry and calls on_result or on_failure
    void SetProtoBlockPortClockMapEntry(OcaPortID Port, OcaProtoPortClockMapEntry MapEntry, auto on_result, failure_callback on_failure);
    // Calls SetProtoBlockPortClockMapEntry and does not wait for the response
    void SetProtoBlockPortClockMapEntry(OcaPortID Port, OcaProtoPortClockMapEntry MapEntry);
    // Calls DeleteProtoBlockPortClockMapEntry and calls on_result or on_failure
    void DeleteProtoBlockPortClockMapEntry(OcaPortID PortID, auto on_result, failure_callback on_failure);
    // Calls DeleteProtoBlockPortClockMapEntry and does not wait for the response
    void DeleteProtoBlockPortClockMapEntry(OcaPortID PortID);

    // Observing Properties
    subscription observeGlobalType(auto callback, failure_callback on_failure);
    subscription observeProtoActionObjects(auto callback, failure_callback on_failure);
    subscription observeProtoDatasetObjects(auto callback, failure_callback on_failure);
    subscription observeProtoBlockPorts(auto callback, failure_callback on_failure);
    subscription observeProtoBlockPortClockMap(auto callback, failure_callback on_failure);
    subscription observeProtoSignalPaths(auto callback, failure_callback on_failure);

    // Property Changed Subscriptions
    subscription OnGlobalTypeChanged(auto callback, failure_callback on_failure);
    subscription OnProtoActionObjectsChanged(auto callback, failure_callback on_failure);
    subscription OnProtoDatasetObjectsChanged(auto callback, failure_callback on_failure);
    subscription OnProtoBlockPortsChanged(auto callback, failure_callback on_failure);
    subscription OnProtoBlockPortClockMapChanged(auto callback, failure_callback on_failure);
    subscription OnProtoSignalPathsChanged(auto callback, failure_callback on_failure);
  };
}

Methods#

GetGlobalType#

void GetGlobalType(auto on_result, failure_callback on_failure)

Calls the method GetGlobalType in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaGlobalTypeIdentifier GlobalType
  • failure_callback on_failure: A callback which is called on error.

SetGlobalType#

void SetGlobalType(OcaGlobalTypeIdentifier GlobalType, auto on_result, failure_callback on_failure)

Calls the method SetGlobalType in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaGlobalTypeIdentifier GlobalType
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

AddProtoActionObject#

void AddProtoActionObject(OcaClassID ClassIdentification, OcaList<OcaConstructionParameter> ConstructionParameters, auto on_result, failure_callback on_failure)

Calls the method AddProtoActionObject in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaClassID ClassIdentification
  • OcaList<OcaConstructionParameter> ConstructionParameters
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaProtoONo ProtoObjectNumber
  • failure_callback on_failure: A callback which is called on error.

AddProtoBlockUsingFactory#

void AddProtoBlockUsingFactory(OcaONo FactoryONo, auto on_result, failure_callback on_failure)

Calls the method AddProtoBlockUsingFactory in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaONo FactoryONo
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaProtoONo ProtoObjectNumber
  • failure_callback on_failure: A callback which is called on error.

GetProtoActionObjects#

void GetProtoActionObjects(auto on_result, failure_callback on_failure)

Calls the method GetProtoActionObjects in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaList<OcaProtoObjectIdentification> Objects
  • failure_callback on_failure: A callback which is called on error.

AddProtoDatasetObject#

void AddProtoDatasetObject(OcaClassID ClassIdentification, OcaList<OcaConstructionParameter> ConstructionParameters, auto on_result, failure_callback on_failure)

Calls the method AddProtoDatasetObject in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaClassID ClassIdentification
  • OcaList<OcaConstructionParameter> ConstructionParameters
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaProtoONo ProtoObjectNumber
  • failure_callback on_failure: A callback which is called on error.

GetProtoDatasetObjects#

void GetProtoDatasetObjects(auto on_result, failure_callback on_failure)

Calls the method GetProtoDatasetObjects in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaList<OcaProtoObjectIdentification> Datasets
  • failure_callback on_failure: A callback which is called on error.

DeleteProtoMember#

void DeleteProtoMember(OcaProtoONo ProtoObjectNumber, auto on_result, failure_callback on_failure)

Calls the method DeleteProtoMember in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaProtoONo ProtoObjectNumber
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetProtoBlockPorts#

void GetProtoBlockPorts(auto on_result, failure_callback on_failure)

Calls the method GetProtoBlockPorts in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaList<OcaProtoPort> Ports
  • failure_callback on_failure: A callback which is called on error.

SetProtoBlockPorts#

void SetProtoBlockPorts(OcaList<OcaProtoPort> Ports, auto on_result, failure_callback on_failure)

Calls the method SetProtoBlockPorts in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaList<OcaProtoPort> Ports
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

SetProtoBlockPort#

void SetProtoBlockPort(OcaString Name, OcaIODirection PortMode, auto on_result, failure_callback on_failure)

Calls the method SetProtoBlockPort in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaString Name
  • OcaIODirection PortMode
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaPortID ID
  • failure_callback on_failure: A callback which is called on error.

DeleteProtoBlockPort#

void DeleteProtoBlockPort(OcaPortID ProtoPortID, auto on_result, failure_callback on_failure)

Calls the method DeleteProtoBlockPort in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaPortID ProtoPortID
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetProtoSignalPaths#

void GetProtoSignalPaths(auto on_result, failure_callback on_failure)

Calls the method GetProtoSignalPaths in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaMap<OcaUint16, OcaProtoSignalPath> SignalPaths
  • failure_callback on_failure: A callback which is called on error.

SetProtoSignalPaths#

void SetProtoSignalPaths(OcaMap<OcaUint16, OcaProtoSignalPath> SignalPaths, auto on_result, failure_callback on_failure)

Calls the method SetProtoSignalPaths in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaMap<OcaUint16, OcaProtoSignalPath> SignalPaths
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

SetProtoSignalPath#

void SetProtoSignalPath(OcaProtoSignalPath Path, auto on_result, failure_callback on_failure)

Calls the method SetProtoSignalPath in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaProtoSignalPath Path
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaUint16 Index
  • failure_callback on_failure: A callback which is called on error.

DeleteProtoSignalPath#

void DeleteProtoSignalPath(auto on_result, failure_callback on_failure)

Calls the method DeleteProtoSignalPath in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaUint16 Index
  • failure_callback on_failure: A callback which is called on error.

GetProtoBlockPortClockMap#

void GetProtoBlockPortClockMap(auto on_result, failure_callback on_failure)

Calls the method GetProtoBlockPortClockMap in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaMap<OcaPortID, OcaProtoPortClockMapEntry> Map
  • failure_callback on_failure: A callback which is called on error.

SetProtoBlockPortClockMap#

void SetProtoBlockPortClockMap(OcaMap<OcaPortID, OcaProtoPortClockMapEntry> Map, auto on_result, failure_callback on_failure)

Calls the method SetProtoBlockPortClockMap in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaMap<OcaPortID, OcaProtoPortClockMapEntry> Map
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

SetProtoBlockPortClockMapEntry#

void SetProtoBlockPortClockMapEntry(OcaPortID Port, OcaProtoPortClockMapEntry MapEntry, auto on_result, failure_callback on_failure)

Calls the method SetProtoBlockPortClockMapEntry in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaPortID Port
  • OcaProtoPortClockMapEntry MapEntry
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

DeleteProtoBlockPortClockMapEntry#

void DeleteProtoBlockPortClockMapEntry(OcaPortID PortID, auto on_result, failure_callback on_failure)

Calls the method DeleteProtoBlockPortClockMapEntry in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaPortID PortID
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

observeGlobalType#

subscription observeGlobalType(auto callback, failure_callback on_failure)

Fetches the remote property GlobalType and subscribes for modifications. The callback is called with the initial values of GlobalType and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaGlobalTypeIdentifier GlobalType
  • failure_callback on_failure: A callback which is called on error.

observeProtoActionObjects#

subscription observeProtoActionObjects(auto callback, failure_callback on_failure)

Fetches the remote property ProtoActionObjects and subscribes for modifications. The callback is called with the initial values of ProtoActionObjects and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaProtoObjectIdentification> ProtoActionObjects
  • failure_callback on_failure: A callback which is called on error.

observeProtoDatasetObjects#

subscription observeProtoDatasetObjects(auto callback, failure_callback on_failure)

Fetches the remote property ProtoDatasetObjects and subscribes for modifications. The callback is called with the initial values of ProtoDatasetObjects and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaProtoObjectIdentification> ProtoDatasetObjects
  • failure_callback on_failure: A callback which is called on error.

observeProtoBlockPorts#

subscription observeProtoBlockPorts(auto callback, failure_callback on_failure)

Fetches the remote property ProtoBlockPorts and subscribes for modifications. The callback is called with the initial values of ProtoBlockPorts and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaProtoPort> ProtoBlockPorts
  • failure_callback on_failure: A callback which is called on error.

observeProtoBlockPortClockMap#

subscription observeProtoBlockPortClockMap(auto callback, failure_callback on_failure)

Fetches the remote property ProtoBlockPortClockMap and subscribes for modifications. The callback is called with the initial values of ProtoBlockPortClockMap and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMap<OcaPortID, OcaProtoPortClockMapEntry> ProtoBlockPortClockMap
  • failure_callback on_failure: A callback which is called on error.

observeProtoSignalPaths#

subscription observeProtoSignalPaths(auto callback, failure_callback on_failure)

Fetches the remote property ProtoSignalPaths and subscribes for modifications. The callback is called with the initial values of ProtoSignalPaths and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMap<OcaID16, OcaProtoSignalPath> ProtoSignalPaths
  • failure_callback on_failure: A callback which is called on error.

OnGlobalTypeChanged#

subscription OnGlobalTypeChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaGlobalTypeIdentifier GlobalType
  • failure_callback on_failure: A callback which is called on error.

OnProtoActionObjectsChanged#

subscription OnProtoActionObjectsChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaProtoObjectIdentification> ProtoActionObjects
  • failure_callback on_failure: A callback which is called on error.

OnProtoDatasetObjectsChanged#

subscription OnProtoDatasetObjectsChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaProtoObjectIdentification> ProtoDatasetObjects
  • failure_callback on_failure: A callback which is called on error.

OnProtoBlockPortsChanged#

subscription OnProtoBlockPortsChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaProtoPort> ProtoBlockPorts
  • failure_callback on_failure: A callback which is called on error.

OnProtoBlockPortClockMapChanged#

subscription OnProtoBlockPortClockMapChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMap<OcaPortID, OcaProtoPortClockMapEntry> ProtoBlockPortClockMap
  • failure_callback on_failure: A callback which is called on error.

OnProtoSignalPathsChanged#

subscription OnProtoSignalPathsChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaMap<OcaID16, OcaProtoSignalPath> ProtoSignalPaths
  • failure_callback on_failure: A callback which is called on error.