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

#include <predicateLibrary.h>

Public Member Functions

 SdfPredicateLibrary ()=default
 Default constructor produces an empty library. More...
 
 SdfPredicateLibrary (SdfPredicateLibrary &&other)=default
 Move-construct from an other library. More...
 
 SdfPredicateLibrary (SdfPredicateLibrary const &other)
 Copy-construct from an other library. More...
 
SdfPredicateLibraryoperator= (SdfPredicateLibrary &&other)=default
 Move-assignment from an other library. More...
 
SdfPredicateLibraryoperator= (SdfPredicateLibrary const &other)
 Copy-assignment from an other library. More...
 
template<class Fn >
SdfPredicateLibraryDefine (char const *name, Fn &&fn)
 
template<class Fn >
SdfPredicateLibraryDefine (std::string const &name, Fn &&fn, NamesAndDefaults const &namesAndDefaults)
 

Friends

SdfPredicateProgram< DomainType > SdfLinkPredicateExpression (SdfPredicateExpression const &expr, SdfPredicateLibrary const &lib)
 

Detailed Description

template<class DomainType>
class SdfPredicateLibrary< DomainType >

Represents a library of predicate functions for use with SdfPredicateExpression. Call SdfLinkPredicateExpression() with an expression and a library to produce a callable SdfPredicateProgram.

Definition at line 141 of file predicateLibrary.h.

Constructor & Destructor Documentation

template<class DomainType>
SdfPredicateLibrary< DomainType >::SdfPredicateLibrary ( )
default

Default constructor produces an empty library.

template<class DomainType>
SdfPredicateLibrary< DomainType >::SdfPredicateLibrary ( SdfPredicateLibrary< DomainType > &&  other)
default

Move-construct from an other library.

template<class DomainType>
SdfPredicateLibrary< DomainType >::SdfPredicateLibrary ( SdfPredicateLibrary< DomainType > const other)
inline

Copy-construct from an other library.

Definition at line 171 of file predicateLibrary.h.

Member Function Documentation

template<class DomainType>
template<class Fn >
SdfPredicateLibrary& SdfPredicateLibrary< DomainType >::Define ( char const name,
Fn &&  fn 
)
inline

Register a function with name name in this library. The first argument must accept a DomainType instance. The remaining arguments must be convertible from bool, int, float, string.

Definition at line 197 of file predicateLibrary.h.

template<class DomainType>
template<class Fn >
SdfPredicateLibrary& SdfPredicateLibrary< DomainType >::Define ( std::string const name,
Fn &&  fn,
NamesAndDefaults const namesAndDefaults 
)
inline

Register a function with name name in this library. The first argument must accept a DomainType instance. The remaining arguments must be convertible from bool, int, float, string. Optional parameter names and default values may be supplied in namesAndDefaults.

Definition at line 207 of file predicateLibrary.h.

template<class DomainType>
SdfPredicateLibrary& SdfPredicateLibrary< DomainType >::operator= ( SdfPredicateLibrary< DomainType > &&  other)
default

Move-assignment from an other library.

template<class DomainType>
SdfPredicateLibrary& SdfPredicateLibrary< DomainType >::operator= ( SdfPredicateLibrary< DomainType > const other)
inline

Copy-assignment from an other library.

Definition at line 185 of file predicateLibrary.h.

Friends And Related Function Documentation

template<class DomainType>
SdfPredicateProgram<DomainType> SdfLinkPredicateExpression ( SdfPredicateExpression const expr,
SdfPredicateLibrary< DomainType > const lib 
)
friend

Link expr with lib and return a callable program that evaluates expr on given objects of the DomainType. If linking expr and lib fails, issue a TF_RUNTIME_ERROR with a message, and return an empty program.

Definition at line 142 of file predicateProgram.h.


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