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
pyConversions.h
Go to the documentation of this file.
1
//
2
// Copyright 2016 Pixar
3
//
4
// Licensed under the Apache License, Version 2.0 (the "Apache License")
5
// with the following modification; you may not use this file except in
6
// compliance with the Apache License and the following modification to it:
7
// Section 6. Trademarks. is deleted and replaced with:
8
//
9
// 6. Trademarks. This License does not grant permission to use the trade
10
// names, trademarks, service marks, or product names of the Licensor
11
// and its affiliates, except as required to comply with Section 4(c) of
12
// the License and to reproduce the content of the NOTICE file.
13
//
14
// You may obtain a copy of the Apache License at
15
//
16
// http://www.apache.org/licenses/LICENSE-2.0
17
//
18
// Unless required by applicable law or agreed to in writing, software
19
// distributed under the Apache License with the above modification is
20
// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
// KIND, either express or implied. See the Apache License for the specific
22
// language governing permissions and limitations under the Apache License.
23
//
24
#ifndef PXR_USD_USD_PY_CONVERSIONS_H
25
#define PXR_USD_USD_PY_CONVERSIONS_H
26
27
#include "
pxr/pxr.h
"
28
#include "
pxr/usd/usd/api.h
"
29
#include "
pxr/base/tf/pyObjWrapper.h
"
30
31
PXR_NAMESPACE_OPEN_SCOPE
32
33
class
VtValue
;
34
class
TfToken
;
35
class
SdfValueTypeName
;
36
37
// XXX: DEPRECATED. This function does nothing except convert \p value to
38
// python. Do not call, it will be removed.
39
USD_API
40
TfPyObjWrapper
UsdVtValueToPython
(
const
VtValue
&
value
);
41
42
/// Helper for converting a python value to the target Usd/Sdf type, if
43
/// possible. Invokes VtValue::CastToTypeOf() to do the conversion, if
44
/// required. This internally handles python buffers (e.g. numpy) -> VtArray
45
/// and some python tuple/list -> VtArray conversions. If conversion fails,
46
/// returns a VtValue extracted from the pyVal, which may produce a VtValue
47
/// holding a python object.
48
USD_API
49
VtValue
UsdPythonToSdfType
(
TfPyObjWrapper
pyVal,
50
SdfValueTypeName
const
&targetType);
51
52
/// Helper for converting a python value to a metadata value for metadata
53
/// known to the SdfSchema. Generates a coding error if \p key is unknown
54
/// to the SdfSchema.
55
///
56
/// For dictionary-valued metadata, \p keyPath may be specified as the path
57
/// in the dictionary we are targeting, so that if the dictionary was registered
58
/// with a fallback for that dictionary subcomponent, we will convert
59
/// appropriately to its type.
60
///
61
/// \return \c true on successful conversion, which can happen even if
62
/// the converted \p result is an empty VtValue
63
USD_API
64
bool
UsdPythonToMetadataValue
(
const
TfToken
&key,
const
TfToken
&keyPath,
65
TfPyObjWrapper
pyVal,
VtValue
*
result
);
66
67
68
PXR_NAMESPACE_CLOSE_SCOPE
69
70
#endif // PXR_USD_USD_PY_CONVERSIONS_H
api.h
UsdPythonToMetadataValue
USD_API bool UsdPythonToMetadataValue(const TfToken &key, const TfToken &keyPath, TfPyObjWrapper pyVal, VtValue *result)
USD_API
#define USD_API
Definition:
api.h:40
SdfValueTypeName
Definition:
valueTypeName.h:87
result
**But if you need a result
Definition:
thread.h:613
UsdPythonToSdfType
USD_API VtValue UsdPythonToSdfType(TfPyObjWrapper pyVal, SdfValueTypeName const &targetType)
TfToken
Definition:
token.h:87
pxr.h
TfPyObjWrapper
Definition:
pyObjWrapper.h:165
pyObjWrapper.h
PXR_NAMESPACE_OPEN_SCOPE
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition:
path.h:1432
PXR_NAMESPACE_CLOSE_SCOPE
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition:
pxr.h:91
value
Definition:
core.h:1131
UsdVtValueToPython
USD_API TfPyObjWrapper UsdVtValueToPython(const VtValue &value)
VtValue
Definition:
value.h:164
pxr
usd
usd
pyConversions.h
Generated on Sun Nov 17 2024 03:03:15 for HDK by
1.8.6