HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Usd_PrimFlagsConjunction Class Reference

#include <primFlags.h>

+ Inheritance diagram for Usd_PrimFlagsConjunction:

Public Member Functions

 Usd_PrimFlagsConjunction ()
 Default constructed conjunction is a tautology. More...
 
 Usd_PrimFlagsConjunction (Usd_Term term)
 Construct with a term. More...
 
Usd_PrimFlagsConjunctionoperator&= (Usd_Term term)
 Add an additional term to this conjunction. More...
 
USD_API class
Usd_PrimFlagsDisjunction 
operator! () const
 
- Public Member Functions inherited from Usd_PrimFlagsPredicate
 Usd_PrimFlagsPredicate ()
 
 Usd_PrimFlagsPredicate (Usd_PrimFlags flag)
 
 Usd_PrimFlagsPredicate (Usd_Term term)
 
Usd_PrimFlagsPredicateTraverseInstanceProxies (bool traverse)
 
bool IncludeInstanceProxiesInTraversal () const
 
USD_API bool operator() (const class UsdPrim &prim) const
 

Friends

class Usd_PrimFlagsDisjunction
 
Usd_PrimFlagsConjunction operator&& (Usd_Term lhs, Usd_Term rhs)
 Combine two terms to make a conjunction. More...
 
Usd_PrimFlagsConjunction operator&& (const Usd_PrimFlagsConjunction &conjunction, Usd_Term rhs)
 Create a new conjunction with the term rhs added. More...
 
Usd_PrimFlagsConjunction operator&& (Usd_Term lhs, const Usd_PrimFlagsConjunction &conjunction)
 Create a new conjunction with the term lhs added. More...
 

Additional Inherited Members

- Public Types inherited from Usd_PrimFlagsPredicate
typedef bool result_type
 
- Static Public Member Functions inherited from Usd_PrimFlagsPredicate
static Usd_PrimFlagsPredicate Tautology ()
 
static Usd_PrimFlagsPredicate Contradiction ()
 
- Protected Member Functions inherited from Usd_PrimFlagsPredicate
bool _IsTautology () const
 
void _MakeTautology ()
 
bool _IsContradiction () const
 
void _MakeContradiction ()
 
Usd_PrimFlagsPredicate_Negate ()
 
Usd_PrimFlagsPredicate _GetNegated () const
 
- Protected Attributes inherited from Usd_PrimFlagsPredicate
Usd_PrimFlagBits _mask
 
Usd_PrimFlagBits _values
 

Detailed Description

Conjunction of prim flag predicate terms.

Usually clients will implicitly create conjunctions by &&-ing together flag predicate terms. For example:

// Get all loaded model children.
prim.GetFilteredChildren(UsdPrimIsModel && UsdPrimIsLoaded)

See primFlags.h for more details.

Definition at line 298 of file primFlags.h.

Constructor & Destructor Documentation

Usd_PrimFlagsConjunction::Usd_PrimFlagsConjunction ( )
inline

Default constructed conjunction is a tautology.

Definition at line 301 of file primFlags.h.

Usd_PrimFlagsConjunction::Usd_PrimFlagsConjunction ( Usd_Term  term)
inlineexplicit

Construct with a term.

Definition at line 304 of file primFlags.h.

Member Function Documentation

USD_API class Usd_PrimFlagsDisjunction Usd_PrimFlagsConjunction::operator! ( ) const

Negate this conjunction, producing a disjunction by De Morgan's law. For instance:

!(UsdPrimIsLoaded && UsdPrimIsModel)

Will negate the conjunction in parens to produce a disjunction equivalent to:

(!UsdPrimIsLoaded || !UsdPrimIsModel)

Every expression may be formulated as either a disjunction or a conjuction, but allowing both affords increased expressiveness.

Usd_PrimFlagsConjunction& Usd_PrimFlagsConjunction::operator&= ( Usd_Term  term)
inline

Add an additional term to this conjunction.

Definition at line 309 of file primFlags.h.

Friends And Related Function Documentation

Usd_PrimFlagsConjunction operator&& ( Usd_Term  lhs,
Usd_Term  rhs 
)
friend

Combine two terms to make a conjunction.

Definition at line 368 of file primFlags.h.

Usd_PrimFlagsConjunction operator&& ( const Usd_PrimFlagsConjunction conjunction,
Usd_Term  rhs 
)
friend

Create a new conjunction with the term rhs added.

Definition at line 376 of file primFlags.h.

Usd_PrimFlagsConjunction operator&& ( Usd_Term  lhs,
const Usd_PrimFlagsConjunction conjunction 
)
friend

Create a new conjunction with the term lhs added.

Definition at line 381 of file primFlags.h.

Definition at line 350 of file primFlags.h.


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