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_EditCustomData.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_EditCustomData_h__
19
#define __HUSD_EditCustomData_h__
20
21
#include "
HUSD_API.h
"
22
#include "
HUSD_DataHandle.h
"
23
#include "
HUSD_TimeCode.h
"
24
#include <
UT/UT_StringHolder.h
>
25
26
class
HUSD_FindPrims
;
27
class
HUSD_FindProps
;
28
29
class
HUSD_API
HUSD_EditCustomData
30
{
31
public
:
32
HUSD_EditCustomData
(
HUSD_AutoWriteLock
&lock);
33
~
HUSD_EditCustomData
();
34
35
// This flag controls whether all future calls to this object should
36
// just affect the active layer, or should also be applied to the stage
37
// root layer.
38
void
setModifyRootLayer(
bool
modifyrootlayer);
39
40
// These functions set the actual custom data on the layer, prim, or
41
// property. The UtValueType parameters can be any of:
42
// bool
43
// int
44
// int64
45
// UT_Vector2i
46
// UT_Vector3i
47
// UT_Vector4i
48
// fpreal32
49
// fpreal64
50
// UT_Vector2F
51
// UT_Vector3F
52
// UT_Vector4F
53
// UT_QuaternionF
54
// UT_QuaternionH
55
// UT_Matrix3D
56
// UT_Matrix4D
57
// UT_StringHolder
58
// UT_Array<UT_StringHolder>
59
// HUSD_AssetPath
60
// UT_Array<HUSD_AssetPath>
61
// HUSD_Token
62
// UT_Array<HUSD_Token>
63
// HUSD_PathExpression
64
// UT_Array<HUSD_PathExpression>
65
// Make sure to explicitly cast to one of these data types, even if
66
// implicit conversions exist.
67
template
<
typename
UtValueType>
68
bool
setLayerCustomData(
const
UT_StringRef
&key,
69
const
UtValueType &
value
)
const
;
70
template
<
typename
UtValueType>
71
bool
setCustomData(
const
HUSD_FindPrims
&findprims,
72
const
UT_StringRef
&key,
73
const
UtValueType &value)
const
;
74
template
<
typename
UtValueType>
75
bool
setCustomData(
const
HUSD_FindProps
&findprops,
76
const
UT_StringRef
&key,
77
const
UtValueType &value)
const
;
78
79
bool
setIconCustomData(
const
HUSD_FindPrims
&findprims,
80
const
UT_StringHolder
&icon);
81
bool
setIconCustomData(
const
HUSD_FindProps
&findprops,
82
const
UT_StringHolder
&icon);
83
bool
setCatalogParentPathCustomData(
84
const
HUSD_FindPrims
&findprims,
85
const
UT_StringHolder
&parentpath);
86
87
// Encode the map of strings that should be used to create the asset
88
// resolver context object that should be used when opening the active
89
// layer as the root layer of a stage.
90
bool
setResolverContextStrings(
91
const
UT_StringMap<UT_StringHolder>
&strs)
const
;
92
93
bool
removeLayerCustomData(
const
UT_StringRef
&key)
const
;
94
bool
removeCustomData(
const
HUSD_FindPrims
&findprims,
95
const
UT_StringRef
&key)
const
;
96
bool
removeCustomData(
const
HUSD_FindProps
&findprops,
97
const
UT_StringRef
&key)
const
;
98
99
bool
clearLayerCustomData()
const
;
100
bool
clearCustomData(
const
HUSD_FindPrims
&findprims)
const
;
101
bool
clearCustomData(
const
HUSD_FindProps
&findprops)
const
;
102
103
private
:
104
HUSD_AutoWriteLock
&myWriteLock;
105
bool
myModifyRootLayer;
106
};
107
108
#endif
109
UT_StringMap< UT_StringHolder >
value
GLsizei const GLfloat * value
Definition:
glcorearb.h:824
HUSD_API
#define HUSD_API
Definition:
HUSD_API.h:31
UT_StringRef
Definition:
UT_StringHolder.h:198
HUSD_AutoWriteLock
Definition:
HUSD_DataHandle.h:292
HUSD_EditCustomData
Definition:
HUSD_EditCustomData.h:29
UT_StringHolder
Definition:
UT_StringHolder.h:1009
HUSD_FindPrims
Definition:
HUSD_FindPrims.h:41
HUSD_API.h
UT_StringHolder.h
HUSD_TimeCode.h
HUSD_DataHandle.h
HUSD_FindProps
Definition:
HUSD_FindProps.h:30
HUSD
HUSD_EditCustomData.h
Generated on Wed Aug 27 2025 03:06:42 for HDK by
1.8.6