OcaDataset#
This document describes the controller implementation of OcaDataset. This class is documented in the AES70 standard as:
An OCA Dataset. A dataset is like a simple binary file that can be read and written., Every dataset is a separate OcaDataset object.
Overview#
- ClassID: 1.5
- Header:
aes70/controller/OcaDataset.hpp
- Namespace:
aes70::controller
- Inheritance: aes70::controller::OcaRoot, aes70::controller::object
Class Declaration#
namespace aes70::controller
{
class OcaDataset : public OcaRoot
{
public:
OcaDataset(std::shared_ptr<connection> connection,
uin32_t object_number);
OcaDataset(const OcaDataset &o);
// Control Methods
// Calls OpenRead and calls on_result or on_failure
void OpenRead(OcaLockState RequestedLockState, auto on_result, failure_callback on_failure);
// Calls OpenRead and does not wait for the response
void OpenRead(OcaLockState RequestedLockState);
// Calls OpenWrite and calls on_result or on_failure
void OpenWrite(OcaLockState RequestedLockState, auto on_result, failure_callback on_failure);
// Calls OpenWrite and does not wait for the response
void OpenWrite(OcaLockState RequestedLockState);
// Calls Close and calls on_result or on_failure
void Close(OcaIOSessionHandle Handle, auto on_result, failure_callback on_failure);
// Calls Close and does not wait for the response
void Close(OcaIOSessionHandle Handle);
// Calls Read and calls on_result or on_failure
void Read(OcaIOSessionHandle Handle, OcaUint64 Position, OcaUint64 PartSize, auto on_result, failure_callback on_failure);
// Calls Read and does not wait for the response
void Read(OcaIOSessionHandle Handle, OcaUint64 Position, OcaUint64 PartSize);
// Calls Write and calls on_result or on_failure
void Write(OcaIOSessionHandle Handle, OcaUint64 Position, OcaLongBlob Part, auto on_result, failure_callback on_failure);
// Calls Write and does not wait for the response
void Write(OcaIOSessionHandle Handle, OcaUint64 Position, OcaLongBlob Part);
// Calls Clear and calls on_result or on_failure
void Clear(OcaIOSessionHandle Handle, auto on_result, failure_callback on_failure);
// Calls Clear and does not wait for the response
void Clear(OcaIOSessionHandle Handle);
// Calls GetOwner and calls on_result or on_failure
void GetOwner(auto on_result, failure_callback on_failure);
// Calls GetName and calls on_result or on_failure
void GetName(auto on_result, failure_callback on_failure);
// Calls SetName and calls on_result or on_failure
void SetName(OcaString Name, auto on_result, failure_callback on_failure);
// Calls SetName and does not wait for the response
void SetName(OcaString Name);
// Calls GetType and calls on_result or on_failure
void GetType(auto on_result, failure_callback on_failure);
// Calls SetType and calls on_result or on_failure
void SetType(OcaString Type, auto on_result, failure_callback on_failure);
// Calls SetType and does not wait for the response
void SetType(OcaString Type);
// Calls GetReadOnly and calls on_result or on_failure
void GetReadOnly(auto on_result, failure_callback on_failure);
// Calls SetReadOnly and calls on_result or on_failure
void SetReadOnly(OcaBoolean ReadOnly, auto on_result, failure_callback on_failure);
// Calls SetReadOnly and does not wait for the response
void SetReadOnly(OcaBoolean ReadOnly);
// Calls GetLastModificationTime and calls on_result or on_failure
void GetLastModificationTime(auto on_result, failure_callback on_failure);
// Calls GetDatasetSizes and calls on_result or on_failure
void GetDatasetSizes(auto on_result, failure_callback on_failure);
// Observing Properties
subscription observeName(auto callback, failure_callback on_failure);
subscription observeType(auto callback, failure_callback on_failure);
subscription observeReadOnly(auto callback, failure_callback on_failure);
subscription observeLastModificationTime(auto callback, failure_callback on_failure);
subscription observeMaxSize(auto callback, failure_callback on_failure);
// Property Changed Subscriptions
subscription OnNameChanged(auto callback, failure_callback on_failure);
subscription OnTypeChanged(auto callback, failure_callback on_failure);
subscription OnReadOnlyChanged(auto callback, failure_callback on_failure);
subscription OnLastModificationTimeChanged(auto callback, failure_callback on_failure);
subscription OnMaxSizeChanged(auto callback, failure_callback on_failure);
};
}
Methods#
OpenRead#
void OpenRead(OcaLockState RequestedLockState, auto on_result, failure_callback on_failure)
Calls the method OpenRead in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaLockState RequestedLockState
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaUint64 DatasetSize
OcaIOSessionHandle Handle
failure_callback on_failure
: A callback which is called on error.
OpenWrite#
void OpenWrite(OcaLockState RequestedLockState, auto on_result, failure_callback on_failure)
Calls the method OpenWrite in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaLockState RequestedLockState
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaUint64 MaxPartSize
OcaIOSessionHandle Handle
failure_callback on_failure
: A callback which is called on error.
Close#
void Close(OcaIOSessionHandle Handle, auto on_result, failure_callback on_failure)
Calls the method Close in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaIOSessionHandle Handle
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
Read#
void Read(OcaIOSessionHandle Handle, OcaUint64 Position, OcaUint64 PartSize, auto on_result, failure_callback on_failure)
Calls the method Read in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaIOSessionHandle Handle
OcaUint64 Position
OcaUint64 PartSize
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaBoolean EndOfData
OcaLongBlob Part
failure_callback on_failure
: A callback which is called on error.
Write#
void Write(OcaIOSessionHandle Handle, OcaUint64 Position, OcaLongBlob Part, auto on_result, failure_callback on_failure)
Calls the method Write in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaIOSessionHandle Handle
OcaUint64 Position
OcaLongBlob Part
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
Clear#
void Clear(OcaIOSessionHandle Handle, auto on_result, failure_callback on_failure)
Calls the method Clear in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaIOSessionHandle Handle
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetOwner#
void GetOwner(auto on_result, failure_callback on_failure)
Calls the method GetOwner in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaONo Owner
failure_callback on_failure
: A callback which is called on error.
GetName#
void GetName(auto on_result, failure_callback on_failure)
Calls the method GetName in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaString Name
failure_callback on_failure
: A callback which is called on error.
SetName#
void SetName(OcaString Name, auto on_result, failure_callback on_failure)
Calls the method SetName in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaString Name
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetType#
void GetType(auto on_result, failure_callback on_failure)
Calls the method GetType in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaString Type
failure_callback on_failure
: A callback which is called on error.
SetType#
void SetType(OcaString Type, auto on_result, failure_callback on_failure)
Calls the method SetType in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaString Type
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetReadOnly#
void GetReadOnly(auto on_result, failure_callback on_failure)
Calls the method GetReadOnly in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaBoolean ReadOnly
failure_callback on_failure
: A callback which is called on error.
SetReadOnly#
void SetReadOnly(OcaBoolean ReadOnly, auto on_result, failure_callback on_failure)
Calls the method SetReadOnly in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaBoolean ReadOnly
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetLastModificationTime#
void GetLastModificationTime(auto on_result, failure_callback on_failure)
Calls the method GetLastModificationTime in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaTime Time
failure_callback on_failure
: A callback which is called on error.
GetDatasetSizes#
void GetDatasetSizes(auto on_result, failure_callback on_failure)
Calls the method GetDatasetSizes in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaUint64 CurrentSize
OcaUint64 MaxSize
failure_callback on_failure
: A callback which is called on error.
observeName#
subscription observeName(auto callback, failure_callback on_failure)
Fetches the remote property Name and subscribes for modifications. The callback is called with the initial values of Name and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaString Name
failure_callback on_failure
: A callback which is called on error.
observeType#
subscription observeType(auto callback, failure_callback on_failure)
Fetches the remote property Type and subscribes for modifications. The callback is called with the initial values of Type and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaMimeType Type
failure_callback on_failure
: A callback which is called on error.
observeReadOnly#
subscription observeReadOnly(auto callback, failure_callback on_failure)
Fetches the remote property ReadOnly and subscribes for modifications. The callback is called with the initial values of ReadOnly and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaBoolean ReadOnly
failure_callback on_failure
: A callback which is called on error.
observeLastModificationTime#
subscription observeLastModificationTime(auto callback, failure_callback on_failure)
Fetches the remote property LastModificationTime and subscribes for modifications. The callback is called with the initial values of LastModificationTime and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaTime LastModificationTime
failure_callback on_failure
: A callback which is called on error.
observeMaxSize#
subscription observeMaxSize(auto callback, failure_callback on_failure)
Fetches the remote property MaxSize and subscribes for modifications. The callback is called with the initial values of MaxSize and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaUint64 MaxSize
failure_callback on_failure
: A callback which is called on error.
OnNameChanged#
subscription OnNameChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaString Name
failure_callback on_failure
: A callback which is called on error.
OnTypeChanged#
subscription OnTypeChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaMimeType Type
failure_callback on_failure
: A callback which is called on error.
OnReadOnlyChanged#
subscription OnReadOnlyChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaBoolean ReadOnly
failure_callback on_failure
: A callback which is called on error.
OnLastModificationTimeChanged#
subscription OnLastModificationTimeChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaTime LastModificationTime
failure_callback on_failure
: A callback which is called on error.
OnMaxSizeChanged#
subscription OnMaxSizeChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaUint64 MaxSize
failure_callback on_failure
: A callback which is called on error.