HDK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
HUSD_Prune.h
Go to the documentation of this file.
1
/*
2
* Copyright 2019 Side Effects Software Inc.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
18
#ifndef __HUSD_Prune_h__
19
#define __HUSD_Prune_h__
20
21
#include "
HUSD_API.h
"
22
#include "
HUSD_DataHandle.h
"
23
#include "
HUSD_Path.h
"
24
#include "
HUSD_PathSet.h
"
25
#include "
HUSD_Utils.h
"
26
#include <
UT/UT_StringArray.h
>
27
#include <
UT/UT_StringMap.h
>
28
#include <
SYS/SYS_Types.h
>
29
30
class
HUSD_FindPrims
;
31
class
HUSD_TimeCode
;
32
template
<
typename
T>
class
UT_Array
;
33
34
class
HUSD_API
HUSD_Prune
35
{
36
public
:
37
HUSD_Prune
(
HUSD_AutoWriteLock
&dest);
38
~
HUSD_Prune
();
39
40
enum
PruneMethod
41
{
42
Deactivate
,
43
MakeInvisible
44
};
45
46
static
bool
calculatePruneSet(
const
HUSD_FindPrims
&findprims,
47
const
HUSD_FindPrims
*excludeprims,
48
const
HUSD_FindPrims
*limitpruneprims,
49
bool
prune_unselected,
50
HUSD_PathSet
&paths);
51
52
bool
pruneCalculatedSet(
HUSD_PathSet
&paths,
53
const
HUSD_TimeCode
&timecode,
54
HUSD_Prune::PruneMethod
prune_method,
55
bool
prune
,
56
bool
prune_ancestors_automatically,
57
bool
prune_point_instances_separately,
58
UT_StringArray
*pruned_prims)
const
;
59
60
bool
prunePointInstances(
61
const
UT_StringMap
<
UT_Array<int64>
> &ptinstmap,
62
const
HUSD_TimeCode
&timecode,
63
const
UT_StringMap<bool>
&pruneprimmap,
64
bool
prune_unselected)
const
;
65
66
bool
getIsTimeVarying()
const
;
67
68
private
:
69
HUSD_AutoWriteLock
&myWriteLock;
70
mutable
HUSD_TimeSampling
myTimeSampling;
71
};
72
73
#endif
74
UT_StringMap
Definition:
GEO_Detail.h:53
HUSD_Path.h
HUSD_API
#define HUSD_API
Definition:
HUSD_API.h:32
UT_StringArray.h
HUSD_AutoWriteLock
Definition:
HUSD_DataHandle.h:257
UT_Array
Definition:
BV_KDOPTree.h:18
UT_StringArray
Definition:
UT_StringArray.h:24
SYS_Types.h
HUSD_FindPrims
Definition:
HUSD_FindPrims.h:41
HUSD_TimeSampling
HUSD_TimeSampling
Definition:
HUSD_Utils.h:98
HUSD_PathSet.h
HUSD_API.h
HUSD_Prune::Deactivate
Definition:
HUSD_Prune.h:42
HUSD_TimeCode
Definition:
HUSD_TimeCode.h:24
HUSD_Prune
Definition:
HUSD_Prune.h:34
HUSD_PathSet
Definition:
HUSD_PathSet.h:48
HUSD_Prune::PruneMethod
PruneMethod
Definition:
HUSD_Prune.h:40
openvdb::OPENVDB_VERSION_NAME::tools::prune
void prune(TreeT &tree, typename TreeT::ValueType tolerance=zeroVal< typename TreeT::ValueType >(), bool threaded=true, size_t grainSize=1)
Reduce the memory footprint of a tree by replacing with tiles any nodes whose values are all the same...
Definition:
Prune.h:335
HUSD_DataHandle.h
HUSD_Utils.h
UT_StringMap.h
HUSD
HUSD_Prune.h
Generated on Tue Apr 23 2024 03:14:37 for HDK by
1.8.6