HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
utils.h
Go to the documentation of this file.
1 //
2 // Copyright 2024 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
7 #ifndef PXR_IMAGING_HDSI_UTILS_H
8 #define PXR_IMAGING_HDSI_UTILS_H
9 
10 #include "pxr/pxr.h"
11 #include "pxr/imaging/hdsi/api.h"
12 #include "pxr/usd/sdf/path.h"
13 
15 
17 
18 /// --------------------------------------------------------------------------
19 /// Utilities to evaluate membership expressions for collections with pruning
20 /// semantics.
21 /// --------------------------------------------------------------------------
22 
23 /// Returns whether the prim at \p primPath is pruned by the suppied
24 /// evaluator.
25 ///
27 bool
29  const SdfPath &primPath,
31 
32 /// Prunes the given list of children using the supplied evaluator.
34 void
36  const SdfPath &parentPath,
38  SdfPathVector *children);
39 
40 /// ------------------------------------------------------------------------
41 
43 
44 #endif //PXR_IMAGING_HDSI_UTILS_H
HDSI_API bool HdsiUtilsIsPruned(const SdfPath &primPath, const HdCollectionExpressionEvaluator &eval)
std::vector< class SdfPath > SdfPathVector
HDSI_API void HdsiUtilsRemovePrunedChildren(const SdfPath &parentPath, const HdCollectionExpressionEvaluator &eval, SdfPathVector *children)
Prunes the given list of children using the supplied evaluator.
HUSD_API bool eval(VtValue &val, T &ret_val)
Definition: path.h:273
#define HDSI_API
Definition: api.h:23
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74