PropCategory Class Reference

Category properties define a tree-relationship between all properties in a property map. More...

Inheritance diagram for PropCategory:

Property

Public Member Functions

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

Retrieves the list of properties in a property category.

- 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

Category properties define a tree-relationship between all properties in a property map.

The root of the tree is always the category property with the name Root.

To find which properties are linked from a category, use PropCategory::features().

Categories can contain other categories recursively. A very simple category tree might look like this:

  • Root (category)
    • AcquisitionControl (category)
      • AcquisitionStart (command)
      • AcquisitionStop (command)
      • AcquisitionFrameRate (float)
    • ImageFormatControl (category)
      • Width (integer)
      • Height (integer)

PropCategory instances are created in two ways:

Member Function Documentation

◆ features()

std::vector< Property > features ( Error err = Error::Default()) const
inline

Retrieves the list of properties in a property category.

Parameters
[out]errReference to an error handler. See Error Handling for details.
Returns
A std::vector containing the properties in this category.
If an error occurred, the function returns an empty vector. Check the err output parameter for details.