|
openDAQ
Open data acquisition platform
|
Container of properties that can be used as a base class when instantiating a Property object. More...
Inheritance diagram for PropertyObjectClassPtr:
Collaboration diagram for PropertyObjectClassPtr:Container of properties that can be used as a base class when instantiating a Property object.
A Property object class is defined via a name and a list of properties. For a Property object to be created, using a class as its base, a class must be added to the Type manager.
The name of the class must be unique within a given Type manager instance. The name of the Class is used when choosing a template class for a Property object, as well as to define a class hierarchy. A class with the Parent name configured will inherit the properties of the class with said name.
The properties of a Property object class are, by default, sorted in insertion order. The order can, however, be overridden by specifying a Property object order - a list containing the names of properties. If specified, when retrieving the list of properties, they will be in the provided order.
All Property object class objects are created as Property object class builder objects that allow for customization and building of the class.
Public Member Functions | |
| daq::StringPtr | getParentName () const |
| Gets the name of the parent of the property class. More... | |
| daq::PropertyPtr | getProperty (const daq::StringPtr &propertyName) const |
| Gets the class's property with the given name. More... | |
| daq::Bool | hasProperty (const daq::StringPtr &propertyName) const |
| Checks if the property is registered. More... | |
| daq::ListPtr< daq::IProperty > | getProperties (daq::Bool includeInherited) const |
| Gets the list of properties added to the class. More... | |
Public Member Functions inherited from GenericTypePtr< IPropertyObjectClass > | |
| StringPtr | getName () const |
| Gets the name of the Type. More... | |
Public Member Functions inherited from ObjectPtr< IPropertyObjectClass > | |
| ObjectPtr () | |
| Creates a smart pointer with no wrapped interface. | |
| ObjectPtr (std::nullptr_t) | |
| Creates a smart pointer with no wrapped interface. | |
| ObjectPtr (const ObjectPtr< IPropertyObjectClass > &objPtr) | |
| Creates a smart pointer from another smart pointer. More... | |
| ObjectPtr (ObjectPtr< IPropertyObjectClass > &&objPtr) noexcept | |
| Creates a smart pointer from another smart pointer with move semantics. More... | |
| ObjectPtr (const ObjectPtr< U > &objPtr) | |
| Creates a smart pointer from another smart pointer of a different interface type. More... | |
| ObjectPtr (ObjectPtr< U > &&objPtr) | |
| Creates a smart pointer from another smart pointer of a different interface type with move semantics. More... | |
| ObjectPtr (IPropertyObjectClass *&obj) | |
| Creates a smart pointer from an interface pointer. More... | |
| ObjectPtr (IPropertyObjectClass *&&obj) | |
| Creates a smart pointer from an interface pointer with move semantics. More... | |
| ObjectPtr (IWeakRef *obj) | |
| Creates a smart pointer from a weak reference interface pointer. More... | |
| ObjectPtr (const wchar_t *value) | |
| Creates a string object smart pointer from UTF16 null terminated sequence. More... | |
| ObjectPtr (ConstCharPtr value) | |
| Creates a string object smart pointer from UTF8 null terminated sequence. More... | |
| ObjectPtr (const U &value) | |
| Creates a smart pointer wrapper from value type. More... | |
| virtual | ~ObjectPtr () |
| Destructor. More... | |
| bool | equals (ObjectPtr< IBaseObject > other) const |
| Compares object to another object for equality. More... | |
| IPropertyObjectClass * | detach () |
| Disassociates this smart pointer object from the interface that it represents. More... | |
| void | dispose () const |
| Disposes all references held by the object. More... | |
| void | release () |
| Resets the wrapped interface to nullptr. More... | |
| IPropertyObjectClass * | addRefAndReturn () const |
| Increments the reference count and returns the interface. More... | |
| operator IPropertyObjectClass * () const | |
| Casts the pointer to the wrapped interface. More... | |
| bool | assigned () const |
| Checks if the smart pointer is not empty. | |
| IPropertyObjectClass * | getObject () const |
| Gets the pointer to the wrapped interface. More... | |
| IPropertyObjectClass ** | addressOf () |
| Gets the address of the pointer to the wrapped interface. More... | |
| IPropertyObjectClass ** | operator& () |
| Gets the address of the pointer to the wrapped interface. More... | |
| U * | as (bool borrow=false) const |
| Casts the wrapped interface to another interface. More... | |
| U * | asOrNull (bool borrow=false) const |
| Casts the wrapped interface to another interface. More... | |
| Ptr | asPtr (bool borrow=false) const |
| Casts the wrapped interface to another interface and wraps in a smart pointer. More... | |
| Ptr | asPtrOrNull (bool borrow=false) const |
| Casts the wrapped interface to another interface and wraps in a smart pointer. More... | |
| bool | supportsInterface () const |
| Checks if the wrapped interface supports another interface. More... | |
| bool | supportsInterface (const IntfID &id) const |
| Checks if the wrapped interface supports another interface using the interface ID. More... | |
| CoreType | getCoreType () const |
Gets the object's CoreType. More... | |
| ObjectPtr< IBaseObject > | convertTo (CoreType ct) const |
Converts the object to the specified CoreType. More... | |
| SizeT | getHashCode () const |
| Returns hash code of the object. More... | |
| ObjectPtr< IString > | toString () const |
| Converts the object to the string object. More... | |
| void | freeze () const |
| Freezes the object. More... | |
| Bool | isFrozen () const |
| Checks if the object is frozen. More... | |
| void | dispatch (const ObjectPtr< IBaseObject > ¶ms) const |
| Calls the stored callback. More... | |
| void | dispatch () const |
| Calls the stored callback without any parameters. More... | |
| void | execute () const |
| Calls the stored callback without any parameters. More... | |
| void | execute (Params... params) const |
| Calls the stored callback. More... | |
| ObjectPtr< IBaseObject > | call (Params... params) const |
| Calls the stored callback and returns the result. More... | |
| bool | isBorrowed () const |
| Checks if the reference is borrowed. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from ObjectPtr< IPropertyObjectClass > | |
| static InterfaceToSmartPtr< U >::SmartPtr | Borrow (IPropertyObjectClass *&obj) |
| Borrows an interface. More... | |
| static InterfaceToSmartPtr< V >::SmartPtr | Borrow (U *&obj) |
| Borrows an interface from the interface of another type. More... | |
| static InterfaceToSmartPtr< U >::SmartPtr | Adopt (IPropertyObjectClass *obj) |
| Adopts an interface. More... | |
| static Bool | Equals (const ObjectPtr< IBaseObject > &a, const ObjectPtr< IBaseObject > &b) |
| Value based comparison of two objects. If both objects are nullptr, they are considered to be equal. More... | |
|
inline |
Gets the name of the parent of the property class.
|
inline |
Gets the list of properties added to the class.
| includeInherited | If true, the returned list of properties also includes the properties of the class's ancestors. |
| OpendaqErrException | if the parent name is set, but the Type manager is not available. |
The properties are sorted in insertion order, unless a custom sorting order is specified for the class. Any properties not listed in the custom sorting order are listed at the end of the properties list, sorted in insertion order.
|
inline |
Gets the class's property with the given name.
| propertyName | The property's name. |
| NotFoundException | if the Property with name propertyName is not added to the class. |
| OpendaqErrException | if the parent name is set, but the Type manager is not available. |
|
inline |
Checks if the property is registered.
| propertyName | The property's name. |
| OpendaqErrException | if the parent name is set, but the Type manager is not available. |