HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SdfPathExpressionEval< DomainType >::IncrementalSearcher< PathToObject > Class Template Reference

#include <pathExpressionEval.h>

Public Member Functions

 IncrementalSearcher ()
 
 IncrementalSearcher (SdfPathExpressionEval const *eval, PathToObject const &p2o)
 
 IncrementalSearcher (SdfPathExpressionEval const *eval, PathToObject &&p2o)
 
SdfPredicateFunctionResult Next (SdfPath const &objPath)
 
void Reset ()
 

Detailed Description

template<class DomainType>
template<class PathToObject>
class SdfPathExpressionEval< DomainType >::IncrementalSearcher< PathToObject >

This class implements stateful incremental search over DomainType objects in depth-first order. See Next() for more info. This class is copyable, and may be copied to parallelize searches over domain subtrees, where one copy is invoked with a child, and the other with the next sibling.

Definition at line 285 of file pathExpressionEval.h.

Constructor & Destructor Documentation

template<class DomainType>
template<class PathToObject >
SdfPathExpressionEval< DomainType >::IncrementalSearcher< PathToObject >::IncrementalSearcher ( )
inline

Definition at line 287 of file pathExpressionEval.h.

template<class DomainType>
template<class PathToObject >
SdfPathExpressionEval< DomainType >::IncrementalSearcher< PathToObject >::IncrementalSearcher ( SdfPathExpressionEval const *  eval,
PathToObject const &  p2o 
)
inline

Definition at line 289 of file pathExpressionEval.h.

template<class DomainType>
template<class PathToObject >
SdfPathExpressionEval< DomainType >::IncrementalSearcher< PathToObject >::IncrementalSearcher ( SdfPathExpressionEval const *  eval,
PathToObject &&  p2o 
)
inline

Definition at line 296 of file pathExpressionEval.h.

Member Function Documentation

template<class DomainType>
template<class PathToObject >
SdfPredicateFunctionResult SdfPathExpressionEval< DomainType >::IncrementalSearcher< PathToObject >::Next ( SdfPath const &  objPath)
inline

Advance the search to the next objPath, and return the result of evaluating the expression on it.

The passed objPath must possibly succeed the previous object's path in a valid depth-first ordering. That is, it must be a direct child, a sibling, or the sibling of an ancestor. For example, the following paths are in a valid order:

/foo, /foo/bar, /foo/bar/baz, /foo/bar/qux, /oof, /oof/zab /oof/xuq

Definition at line 314 of file pathExpressionEval.h.

template<class DomainType>
template<class PathToObject >
void SdfPathExpressionEval< DomainType >::IncrementalSearcher< PathToObject >::Reset ( )
inline

Reset this object's incremental search state so that a new round of searching may begin.

Definition at line 335 of file pathExpressionEval.h.


The documentation for this class was generated from the following file: