PropRegister Class Reference

Register properties have a value represented by raw bytes. More...

Inheritance diagram for PropRegister:
Property

Public Member Functions

uint64_t  size (Error &err=Error::Default()) const

Queries the size of a register property.

std::vector< uint8_t > getValue (Error &err=Error::Default())

Reads data from a register property.

bool setValue (const std::vector< uint8_t > &buffer, Error &err=Error::Default())

Reads data to a register property.

- Public Member Functions inherited from Property
 Property ()=default

Creates an invalid object.

bool is_valid () const noexcept

Checks whether this property is a valid object.

bool operator== (const Property &other) const noexcept

Checks whether a property object refers to the same property as another property object.

bool operator!= (const Property &other) const noexcept

Checks whether a property object refers to a different property as another property object.

bool operator< (const Property &other) const noexcept

Provides an ordering of property objects.

PropType type (Error &err=Error::Default()) const

Returns the type of the property.

std::string name (Error &err=Error::Default()) const

Returns the name of the property.

bool isAvailable (Error &err=Error::Default()) const

Checks whether a property is currently available.

bool isLocked (Error &err=Error::Default()) const

Checks whether a property is currently locked.

bool isLikelyLockedByStream (Error &err=Error::Default()) const

Tries to determine whether a property is locked because a data stream is active.

bool isReadOnly (Error &err=Error::Default()) const

Checks whether a property is read-only.

PropVisibility visibility (Error &err=Error::Default()) const

Returns a visibility hint for the property.

std::string displayName (Error &err=Error::Default()) const

Returns the display name of the property.

std::string tooltip (Error &err=Error::Default()) const

Returns a tooltip for the property.

std::string description (Error &err=Error::Default()) const

Returns a description for the property.

PropCommand asCommand (Error &err=Error::Default()) const

Converts this property into a PropCommand.

PropInteger asInteger (Error &err=Error::Default()) const

Converts this property into a PropInteger.

PropBoolean asBoolean (Error &err=Error::Default()) const

Converts this property into a PropBoolean.

PropFloat asFloat (Error &err=Error::Default()) const

Converts this property into a PropFloat.

PropString asString (Error &err=Error::Default()) const

Converts this property into a PropString.

PropEnumeration asEnumeration (Error &err=Error::Default()) const

Converts this property into a PropEnumeration.

PropEnumEntry asEnumEntry (Error &err=Error::Default()) const

Converts this property into a PropEnumEntry.

PropRegister asRegister (Error &err=Error::Default()) const

Converts this property into a PropRegister.

PropCategory asCategory (Error &=Error::Default()) const

Converts this property into a PropCategory.

NotificationToken eventAddNotification (NotificationHandler cb, Error &err=Error::Default())

Registers a new property notification event handler.

bool eventRemoveNotification (NotificationToken token, Error &err=Error::Default())

Unregisters a previously registered property notification event handler.

bool isSelector (Error &err=Error::Default()) const

Indicates whether this property's value changes the meaning and/or value of other properties.

std::vector< PropertyselectedProperties (Error &err=Error::Default()) const

Returns the list of properties whose values' meaning depend on this property.

Additional Inherited Members

- Public Types inherited from Property
using NotificationHandler = std::function< void(Property &prop)>

Function prototype for property notification event handlers.

using NotificationToken = void *

Represents a registered callback.

Detailed Description

Register properties have a value represented by raw bytes.

PropRegister instances are created in two ways:

Member Function Documentation

◆ getValue()

std::vector< uint8_t > getValue ( Error err = Error::Default())
inline

Reads data from a register property.

Parameters
[out]errReference to an error handler. See Error Handling for details.
Returns
The current value of the register.
If an error occurs, the returned vector is empty. Check the err output parameter for details.

◆ setValue()

bool setValue ( const std::vector< uint8_t > &  buffer,
Error err = Error::Default() 
)
inline

Reads data to a register property.

Parameters
[in]bufferA std::vector containing the data to be written to the property
[out]errReference to an error handler. See Error Handling for details.
Returns
true on success, otherwise false.
Check the err output parameter for details.

◆ size()

uint64_t size ( Error err = Error::Default()) const
inline

Queries the size of a register property.

The size of a register property is not necessarily constant; it can change depending on the value of other properties.

Parameters
[out]errReference to an error handler. See Error Handling for details.
Returns
The size of the register property, or 0, if an error occurred.
Check the err output parameter for details.