CppGraph Application Framework©
Copyright © 2004-202x Geoff Goldberg
Public Member Functions | List of all members
cppgraph::properties_parent Struct Referenceabstract

A properties parent is a base for classes that need to provide access to child property links. More...

#include <properties_parent.h>

Inheritance diagram for cppgraph::properties_parent:
Inheritance graph
[legend]

Public Member Functions

property_link_handle add_property_link (link_name_t const &link_name, property_handle const &h_property) const
 Attaches a specified property to this object using a specified name for the new property link. More...
 
template<typename T >
property_link_handle find_or_add_property_link_t (link_name_t const &link_name) const
 Returns the property link of this node whose property is of a specified type, and whose link name matches a specfied name. If it doesn't currently exist, the link, with name link_name and a default-constructed property of type T, is created and added. More...
 
property_handle_list find_properties (node_handle_t< property_filter > const &h_filter=nullptr) const
 Returns a container of all child properties of this object that pass an optionally-specified property filter,. More...
 
property_handle_list find_properties (link_name_t const &link_name, error_action_enum error_action_type, selection_multiplicity_enum selection_multiplicity_type, node_handle_t< property_filter > const &h_filter=nullptr) const
 Returns a container of all child properties of this object that pass an optionally-specified property filter, and whose property link has a specified name. More...
 
template<typename T >
property_handle_list find_properties_t (error_action_enum error_action_type, selection_multiplicity_enum selection_multiplicity_type, node_handle_t< property_filter > const &h_filter=nullptr) const
 Returns a container of all child properties of this object that pass an optionally-specified property filter, and that are of a specified type. More...
 
template<typename T >
property_handle_list find_properties_t (link_name_t const &link_name, error_action_enum error_action_type, selection_multiplicity_enum selection_multiplicity_type, node_handle_t< property_filter > const &h_filter=nullptr) const
 Returns a container of all child properties of this object, that pass an optionally-specified property filter, that are of a specified type, and whose property link has a specified name. More...
 
property_handle find_property (link_name_t const &link_name, error_action_enum error_action_type, node_handle_t< property_filter > const &h_filter=nullptr) const
 Returns the property of this object that passes an optionally specified filter, and whose property link has a specified name. More...
 
property_link_handle find_property_link (link_name_t const &link_name, error_action_enum error_action_type, node_handle_t< property_link_filter > const &h_filter=nullptr) const
 Returns the property link of this node that passes an optionally specified property link filter, and whose link name matches a specfied name. More...
 
template<typename T >
property_link_handle find_property_link_t (error_action_enum error_action_type, node_handle_t< property_link_filter > const &h_filter=nullptr) const
 Returns the property link of this node that passes an optionally specified property link filter and whose property is of a specified type. More...
 
template<typename T >
property_link_handle find_property_link_t (link_name_t const &link_name, error_action_enum error_action_type, node_handle_t< property_link_filter > const &h_filter=nullptr) const
 Returns the property link of this node that passes an optionally specified property link filter, whose property is of a specified type, and whose link name matches a specfied name. More...
 
property_link_handle_list find_property_links (node_handle_t< property_link_filter > const &h_filter=nullptr) const
 Returns a container of all property links of this object, selected by an optionally-specified property link filter. More...
 
property_link_handle_list find_property_links (link_name_t const &link_name, error_action_enum error_action_type, selection_multiplicity_enum selection_multiplicity_type, node_handle_t< property_link_filter > const &h_filter=nullptr) const
 Returns a container of all property links of this node, that pass an optionally-specified property link filter, and that have a specified name. More...
 
template<typename T >
property_link_handle_list find_property_links_t (error_action_enum error_action_type, selection_multiplicity_enum selection_multiplicity_type, node_handle_t< property_link_filter > const &h_filter=nullptr) const
 Returns the property links of this node that pass an optionally specified property link filter and whose property is of a specified type. More...
 
template<typename T >
property_link_handle_list find_property_links_t (link_name_t const &link_name, error_action_enum error_action_type, selection_multiplicity_enum selection_multiplicity_type, node_handle_t< property_link_filter > const &h_filter=nullptr) const
 Returns the property links of this node that pass an optionally specified property link filter, whose property is of a specified type, and whose link name matches a specfied name. More...
 
template<typename T >
property_handle_t< T > find_property_t (error_action_enum error_action_type, node_handle_t< property_filter > const &h_filter=nullptr) const
 Returns the property of this object having a specified type, that passes an optionally specified filter. More...
 
template<typename T >
property_handle_t< T > find_property_t (link_name_t const &link_name, error_action_enum error_action_type, node_handle_t< property_filter > const &h_filter=nullptr) const
 Returns the property of this object having a specified type, that passes an optionally specified filter, and whose property link has a specified name. More...
 
property_handle replace_property (property_handle const &h_current_property, property_handle const &h_new_property, error_action_enum error_action_type)
 Replaces an existing property with a specified property, re-using the property link to the existing property. More...
 
property_link_handle_list set_properties (link_name_t const &link_name, property_handle_list const &properties) const
 Attaches specified properties to this object, using a specified link name. More...
 
void set_property_link (property_link_handle const &h_link) const
 Attaches a specified property link to this object. More...
 
void set_property_links (property_link_handle_list const &links) const
 Attaches specified property links to this object. More...
 
template<typename T >
property_link_handle set_user_property_t (link_name_t const &link_name, T const &value) const
 Attaches a specified user property to this object using a specified name for the new property_link" "property link". More...
 

Detailed Description

A properties parent is a base for classes that need to provide access to child property links.

As both nodes and node links can have attached properties, the implementation for managing them resides in this class, from which both node and node_link derive.

Object Diagram

dot_inline_dotgraph_332.png

Class Diagram

properties_parent.png

The documentation for this struct was generated from the following files: