|
| PropertySet (ElementPtr parent, const string &name) |
|
|
PropertyPtr | addProperty (const string &name) |
| Add a Property to the set. More...
|
|
PropertyPtr | getProperty (const string &name) const |
| Return the Property, if any, with the given name.
|
|
vector< PropertyPtr > | getProperties () const |
| Return a vector of all Property elements in the set.
|
|
void | removeProperty (const string &name) |
| Remove the Property with the given name, if present.
|
|
|
template<class T > |
PropertyPtr | setPropertyValue (const string &name, const T &value, const string &type=EMPTY_STRING) |
| Set the typed value of a property by its name, creating a child element to hold the property if needed.
|
|
ValuePtr | getPropertyValue (const string &name) const |
| Return the typed value of a property by its name. More...
|
|
| Element (const Element &)=delete |
|
Element & | operator= (const Element &)=delete |
|
bool | operator== (const Element &rhs) const |
| Return true if the given element tree, including all descendants, is identical to this one.
|
|
bool | operator!= (const Element &rhs) const |
| Return true if the given element tree, including all descendants, differs from this one.
|
|
void | setCategory (const string &category) |
| Set the element's category string.
|
|
const string & | getCategory () const |
| Return the element's category string. More...
|
|
void | setName (const string &name) |
| Set the element's name string. More...
|
|
const string & | getName () const |
| Return the element's name string.
|
|
string | getNamePath (ConstElementPtr relativeTo=nullptr) const |
| Return the element's hierarchical name path, relative to the root document. More...
|
|
ElementPtr | getDescendant (const string &namePath) const |
| Return the element specified by the given hierarchical name path, relative to the current element. More...
|
|
void | setFilePrefix (const string &prefix) |
| Set the element's file prefix string.
|
|
bool | hasFilePrefix () const |
| Return true if the given element has a file prefix string.
|
|
const string & | getFilePrefix () const |
| Return the element's file prefix string.
|
|
const string & | getActiveFilePrefix () const |
| Return the file prefix string that is active at the scope of this element, taking all ancestor elements into account.
|
|
void | setGeomPrefix (const string &prefix) |
| Set the element's geom prefix string.
|
|
bool | hasGeomPrefix () const |
| Return true if the given element has a geom prefix string.
|
|
const string & | getGeomPrefix () const |
| Return the element's geom prefix string.
|
|
const string & | getActiveGeomPrefix () const |
| Return the geom prefix string that is active at the scope of this element, taking all ancestor elements into account.
|
|
void | setColorSpace (const string &colorSpace) |
| Set the element's color space string.
|
|
bool | hasColorSpace () const |
| Return true if the given element has a color space string.
|
|
const string & | getColorSpace () const |
| Return the element's color space string.
|
|
const string & | getActiveColorSpace () const |
| Return the color space string that is active at the scope of this element, taking all ancestor elements into account.
|
|
void | setInheritString (const string &inherit) |
| Set the inherit string of this element.
|
|
bool | hasInheritString () const |
| Return true if this element has an inherit string.
|
|
const string & | getInheritString () const |
| Return the inherit string of this element.
|
|
void | setInheritsFrom (ConstElementPtr super) |
| Set the element that this one directly inherits from.
|
|
ElementPtr | getInheritsFrom () const |
| Return the element, if any, that this one directly inherits from.
|
|
bool | hasInheritedBase (ConstElementPtr base) const |
| Return true if this element has the given element as an inherited base, taking the full inheritance chain into account.
|
|
bool | hasInheritanceCycle () const |
| Return true if the inheritance chain for this element contains a cycle.
|
|
void | setNamespace (const string &space) |
| Set the namespace string of this element.
|
|
bool | hasNamespace () const |
| Return true if this element has a namespace string.
|
|
const string & | getNamespace () const |
| Return the namespace string of this element.
|
|
string | getQualifiedName (const string &name) const |
| Return a qualified version of the given name, taking the namespace at the scope of this element into account.
|
|
void | setDocString (const string &doc) |
| Set the documentation string of this element.
|
|
string | getDocString () const |
| Return the documentation string of this element.
|
|
template<class T > |
bool | isA (const string &category=EMPTY_STRING) const |
| Return true if this element belongs to the given subclass. More...
|
|
template<class T > |
shared_ptr< T > | asA () |
| Dynamic cast to an instance of the given subclass.
|
|
template<class T > |
shared_ptr< const T > | asA () const |
| Dynamic cast to a const instance of the given subclass.
|
|
template<class T > |
shared_ptr< T > | addChild (const string &name=EMPTY_STRING) |
| Add a child element of the given subclass and name. More...
|
|
ElementPtr | addChildOfCategory (const string &category, string name=EMPTY_STRING) |
| Add a child element of the given category and name. More...
|
|
ElementPtr | changeChildCategory (ElementPtr child, const string &category) |
| Change the category of the given child element. More...
|
|
ElementPtr | getChild (const string &name) const |
| Return the child element, if any, with the given name.
|
|
template<class T > |
shared_ptr< T > | getChildOfType (const string &name) const |
| Return the child element, if any, with the given name and subclass. More...
|
|
const vector< ElementPtr > & | getChildren () const |
| Return a constant vector of all child elements. More...
|
|
template<class T > |
vector< shared_ptr< T > > | getChildrenOfType (const string &category=EMPTY_STRING) const |
| Return a vector of all child elements that are instances of the given subclass, optionally filtered by the given category string. More...
|
|
void | setChildIndex (const string &name, int index) |
| Set the index of the child, if any, with the given name. More...
|
|
int | getChildIndex (const string &name) const |
| Return the index of the child, if any, with the given name. More...
|
|
void | removeChild (const string &name) |
| Remove the child element, if any, with the given name.
|
|
template<class T > |
void | removeChildOfType (const string &name) |
| Remove the child element, if any, with the given name and subclass. More...
|
|
void | setAttribute (const string &attrib, const string &value) |
| Set the value string of the given attribute.
|
|
bool | hasAttribute (const string &attrib) const |
| Return true if the given attribute is present.
|
|
const string & | getAttribute (const string &attrib) const |
| Return the value string of the given attribute. More...
|
|
const StringVec & | getAttributeNames () const |
| Return a vector of stored attribute names, in the order they were set.
|
|
template<class T > |
void | setTypedAttribute (const string &attrib, const T &data) |
| Set the value of an implicitly typed attribute. More...
|
|
template<class T > |
T | getTypedAttribute (const string &attrib) const |
| Return the value of an implicitly typed attribute. More...
|
|
void | removeAttribute (const string &attrib) |
| Remove the given attribute, if present.
|
|
ElementPtr | getSelf () |
| Return our self pointer.
|
|
ConstElementPtr | getSelf () const |
| Return our self pointer.
|
|
ElementPtr | getParent () |
| Return our parent element.
|
|
ConstElementPtr | getParent () const |
| Return our parent element.
|
|
ElementPtr | getRoot () |
| Return the root element of our tree.
|
|
ConstElementPtr | getRoot () const |
| Return the root element of our tree.
|
|
DocumentPtr | getDocument () |
| Return the root document of our tree.
|
|
ConstDocumentPtr | getDocument () const |
| Return the root document of our tree.
|
|
template<class T > |
shared_ptr< T > | getAncestorOfType () |
| Return the first ancestor of the given subclass, or an empty shared pointer if no ancestor of this subclass is found.
|
|
template<class T > |
shared_ptr< const T > | getAncestorOfType () const |
| Return the first ancestor of the given subclass, or an empty shared pointer if no ancestor of this subclass is found.
|
|
TreeIterator | traverseTree () const |
| Traverse the tree from the given element to each of its descendants in depth-first order, using pre-order visitation. More...
|
|
GraphIterator | traverseGraph () const |
| Traverse the dataflow graph from the given element to each of its upstream sources in depth-first order, using pre-order visitation. More...
|
|
virtual Edge | getUpstreamEdge (size_t index=0) const |
| Return the Edge with the given index that lies directly upstream from this element in the dataflow graph. More...
|
|
virtual size_t | getUpstreamEdgeCount () const |
| Return the number of queriable upstream edges for this element. More...
|
|
ElementPtr | getUpstreamElement (size_t index=0) const |
| Return the Element with the given index that lies directly upstream from this one in the dataflow graph. More...
|
|
InheritanceIterator | traverseInheritance () const |
| Traverse the inheritance chain from the given element to each element from which it inherits. More...
|
|
void | setSourceUri (const string &sourceUri) |
| Set the element's source URI. More...
|
|
bool | hasSourceUri () const |
| Return true if this element has a source URI.
|
|
const string & | getSourceUri () const |
| Return the element's source URI.
|
|
const string & | getActiveSourceUri () const |
| Return the source URI that is active at the scope of this element, taking all ancestor elements into account.
|
|
virtual bool | validate (string *message=nullptr) const |
| Validate that the given element tree, including all descendants, is consistent with the MaterialX specification. More...
|
|
void | copyContentFrom (const ConstElementPtr &source) |
| Copy all attributes and descendants from the given element to this one. More...
|
|
virtual void | clearContent () |
| Clear all attributes and descendants from this element. More...
|
|
string | createValidChildName (string name) const |
| Using the input name as a starting point, modify it to create a valid, unique name for a child element.
|
|
StringResolverPtr | createStringResolver (const string &geom=EMPTY_STRING) const |
| Construct a StringResolver at the scope of this element. More...
|
|
string | asString () const |
| Return a single-line description of this element, including its category, name, and attributes.
|
|