editContext.h
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_EDIT_CONTEXT_H
25
#define PXR_USD_USD_EDIT_CONTEXT_H
26
27
#include "
pxr/pxr.h
"
28
#include "pxr/usd/usd/api.h"
29
#include "pxr/usd/usd/editTarget.h"
30
#include "
pxr/base/tf/declarePtrs.h
"
31
32
#include <memory>
33
#include <utility>
34
35
PXR_NAMESPACE_OPEN_SCOPE
36
37
38
TF_DECLARE_WEAK_PTRS
(
UsdStage
);
39
67
class
UsdEditContext
68
{
69
UsdEditContext
(
UsdEditContext
const
&) =
delete
;
70
UsdEditContext
&operator=(
UsdEditContext
const
&) =
delete
;
71
public
:
74
USD_API
75
explicit
UsdEditContext
(
const
UsdStagePtr &stage);
76
82
USD_API
83
UsdEditContext
(
const
UsdStagePtr &stage,
const
UsdEditTarget
&editTarget);
84
92
USD_API
93
UsdEditContext
(
const
std::pair<UsdStagePtr, UsdEditTarget > &stageTarget);
94
97
USD_API
98
~UsdEditContext
();
99
100
private
:
101
// The stage this context is bound to.
102
UsdStagePtr _stage;
103
104
// The stage's original EditTarget.
105
UsdEditTarget
_originalEditTarget;
106
};
107
108
PXR_NAMESPACE_CLOSE_SCOPE
109
110
#endif // PXR_USD_USD_EDIT_CONTEXT_H
TF_DECLARE_WEAK_PTRS
#define TF_DECLARE_WEAK_PTRS(type)
Define standard weak pointer types.
Definition:
declarePtrs.h:62
declarePtrs.h
Standard pointer typedefs.
UsdStage
The outermost container for scene description, which owns and presents composed prims as a scenegraph...
Definition:
stage.h:147
UsdEditContext::~UsdEditContext
USD_API ~UsdEditContext()
Restore the stage's original EditTarget if this context's stage is valid.
pxr.h
UsdEditTarget
Defines a mapping from scene graph paths to Sdf spec paths in a SdfLayer where edits should be direct...
Definition:
editTarget.h:78
UsdEditContext
A utility class to temporarily modify a stage's current EditTarget during an execution scope.
Definition:
editContext.h:67
pxr
usd
usd
editContext.h
Generated on Mon Jan 23 2023 19:10:41 for Universal Scene Description by
1.8.15