class
deviceContents
- Reference
Device class for building dynamic devices.
Public functions
- auto count_objects() const -> size_t
- auto count_connections() const -> size_t
- auto get_root() const -> std::shared_ptr<block>
-
template<typename Type, typename... TN>auto create_child(TN && ... args) -> std::shared_ptr<Type>
-
template<typename String>auto create_block(const String& role) -> std::shared_ptr<block>
-
auto remove(std::shared_ptr<aes70::
device:: object> child) -> bool -
auto add(std::shared_ptr<aes70::
device:: object> child) -> bool -
auto find_object(uint32_t object_number) -> std::shared_ptr<aes70::
device:: object> -
template<typename Type, typename... TN>auto create_manager(TN && ... args) -> std::shared_ptr<Type>
-
auto add_connection(aes70::
device:: connection* connection) -> bool virtual -
auto remove_connection(aes70::
device:: connection* connection) -> bool virtual -
auto find_connection(size_t id) -> aes70::
device:: connection* virtual -
auto first_connection() const -> aes70::
device:: connection* virtual - auto get_parent_ono(uint32_t object_number) -> uint32_t virtual
- void cork() virtual
- void uncork() virtual
- auto has_event(const OcaEvent event) const -> bool virtual
- auto allocate_notifications(const OcaEvent& id, size_t len, uint8_t parameterCount) -> uint8_t* virtual
- void send_notifications(const OcaEvent& id, size_t len, uint8_t parameterCount) virtual
- void close() virtual
Function documentation
size_t aes70:: dynamic_device:: device:: count_objects() const
Returns the number of objects in this device.
size_t aes70:: dynamic_device:: device:: count_connections() const
Returns the number of objects in this device.
template<typename Type, typename... TN>
std::shared_ptr<Type> aes70:: dynamic_device:: device:: create_child(TN && ... args)
Create a child object in the root block. This calls aes70::
on the root block object.
template<typename String>
std::shared_ptr<block> aes70:: dynamic_device:: device:: create_block(const String& role)
Create a block object in the root block. This calls aes70::
on the root block object.
bool aes70:: dynamic_device:: device:: remove(std::shared_ptr<aes70:: device:: object> child)
Removes a child from the root block.
bool aes70:: dynamic_device:: device:: add(std::shared_ptr<aes70:: device:: object> child)
Adds an object to the root block. Returns true if the child was added.
std::shared_ptr<aes70:: device:: object> aes70:: dynamic_device:: device:: find_object(uint32_t object_number)
Returns the object with the given object number. If no such object exists, the nullptr is returned.
template<typename Type, typename... TN>
std::shared_ptr<Type> aes70:: dynamic_device:: device:: create_manager(TN && ... args)
Create a manager object.
bool aes70:: dynamic_device:: device:: add_connection(aes70:: device:: connection* connection) virtual
Add a connection object. This usually happens automatically when using aes70::
bool aes70:: dynamic_device:: device:: remove_connection(aes70:: device:: connection* connection) virtual
Remove a connection object. This usually happens automatically when using aes70::
aes70:: device:: connection* aes70:: dynamic_device:: device:: find_connection(size_t id) virtual
Find a connection given its id.
aes70:: device:: connection* aes70:: dynamic_device:: device:: first_connection() const virtual
Return the first connection. This can be used in a loop to close all connected connection.
uint32_t aes70:: dynamic_device:: device:: get_parent_ono(uint32_t object_number) virtual
Return the object number of the parent of a given object.
void aes70:: dynamic_device:: device:: cork() virtual
Cork all connections.
void aes70:: dynamic_device:: device:: uncork() virtual
Uncork all connections.
uint8_t* aes70:: dynamic_device:: device:: allocate_notifications(const OcaEvent& id,
size_t len,
uint8_t parameterCount) virtual
Allocate send buffer space for sending notifications. Returns nullptr if no connection has subscribed to the given event.
void aes70:: dynamic_device:: device:: send_notifications(const OcaEvent& id,
size_t len,
uint8_t parameterCount) virtual
Allocate send buffer space for sending notifications. Returns nullptr if no connection has subscribed to the given event.
void aes70:: dynamic_device:: device:: close() virtual
Close all AES70 connections to this device.