Loading...
Searching...
No Matches
nodeGraphNodeAPI.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 USDUI_GENERATED_NODEGRAPHNODEAPI_H
25#define USDUI_GENERATED_NODEGRAPHNODEAPI_H
26
28
29#include "pxr/pxr.h"
30#include "pxr/usd/usdUI/api.h"
32#include "pxr/usd/usd/prim.h"
33#include "pxr/usd/usd/stage.h"
35
36#include "pxr/base/vt/value.h"
37
38#include "pxr/base/gf/vec3d.h"
39#include "pxr/base/gf/vec3f.h"
41
42#include "pxr/base/tf/token.h"
43#include "pxr/base/tf/type.h"
44
45PXR_NAMESPACE_OPEN_SCOPE
46
47class SdfAssetPath;
48
49// -------------------------------------------------------------------------- //
50// NODEGRAPHNODEAPI //
51// -------------------------------------------------------------------------- //
52
65{
66public:
70 static const UsdSchemaKind schemaKind = UsdSchemaKind::SingleApplyAPI;
71
76 explicit UsdUINodeGraphNodeAPI(const UsdPrim& prim=UsdPrim())
77 : UsdAPISchemaBase(prim)
78 {
79 }
80
84 explicit UsdUINodeGraphNodeAPI(const UsdSchemaBase& schemaObj)
85 : UsdAPISchemaBase(schemaObj)
86 {
87 }
88
90 USDUI_API
92
96 USDUI_API
97 static const TfTokenVector &
98 GetSchemaAttributeNames(bool includeInherited=true);
99
109 USDUI_API
111 Get(const UsdStagePtr &stage, const SdfPath &path);
112
113
130 USDUI_API
131 static bool
132 CanApply(const UsdPrim &prim, std::string *whyNot=nullptr);
133
149 USDUI_API
151 Apply(const UsdPrim &prim);
152
153protected:
157 USDUI_API
159
160private:
161 // needs to invoke _GetStaticTfType.
162 friend class UsdSchemaRegistry;
163 USDUI_API
164 static const TfType &_GetStaticTfType();
165
166 static bool _IsTypedSchema();
167
168 // override SchemaBase virtuals.
169 USDUI_API
170 const TfType &_GetTfType() const override;
171
172public:
173 // --------------------------------------------------------------------- //
174 // POS
175 // --------------------------------------------------------------------- //
197 USDUI_API
199
205 USDUI_API
206 UsdAttribute CreatePosAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
207
208public:
209 // --------------------------------------------------------------------- //
210 // STACKINGORDER
211 // --------------------------------------------------------------------- //
230 USDUI_API
232
238 USDUI_API
239 UsdAttribute CreateStackingOrderAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
240
241public:
242 // --------------------------------------------------------------------- //
243 // DISPLAYCOLOR
244 // --------------------------------------------------------------------- //
255 USDUI_API
257
263 USDUI_API
264 UsdAttribute CreateDisplayColorAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
265
266public:
267 // --------------------------------------------------------------------- //
268 // ICON
269 // --------------------------------------------------------------------- //
283 USDUI_API
285
291 USDUI_API
292 UsdAttribute CreateIconAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
293
294public:
295 // --------------------------------------------------------------------- //
296 // EXPANSIONSTATE
297 // --------------------------------------------------------------------- //
312 USDUI_API
314
320 USDUI_API
321 UsdAttribute CreateExpansionStateAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
322
323public:
324 // --------------------------------------------------------------------- //
325 // SIZE
326 // --------------------------------------------------------------------- //
342 USDUI_API
344
350 USDUI_API
351 UsdAttribute CreateSizeAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
352
353public:
354 // ===================================================================== //
355 // Feel free to add custom code below this line, it will be preserved by
356 // the code generator.
357 //
358 // Just remember to:
359 // - Close the class declaration with };
360 // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
361 // - Close the include guard with #endif
362 // ===================================================================== //
363 // --(BEGIN CUSTOM CODE)--
364};
365
366PXR_NAMESPACE_CLOSE_SCOPE
367
368#endif
Contains an asset path and an optional resolved path.
Definition: assetPath.h:47
A path value used to locate objects in layers or scenegraphs.
Definition: path.h:291
TfType represents a dynamic runtime type.
Definition: type.h:65
The base class for all API schemas.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
Definition: attribute.h:176
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
Definition: prim.h:134
The base class for all schema types in Usd.
Definition: schemaBase.h:56
Singleton registry that provides access to schema type information and the prim definitions for regis...
This api helps storing information about nodes in node graphs.
static USDUI_API const TfTokenVector & GetSchemaAttributeNames(bool includeInherited=true)
Return a vector of names of all pre-declared attributes for this schema class and all its ancestor cl...
USDUI_API UsdAttribute GetStackingOrderAttr() const
This optional value is a useful hint when an application cares about the visibility of a node and whe...
USDUI_API UsdAttribute CreateIconAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetIconAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
UsdUINodeGraphNodeAPI(const UsdSchemaBase &schemaObj)
Construct a UsdUINodeGraphNodeAPI on the prim held by schemaObj .
USDUI_API UsdAttribute GetPosAttr() const
Declared relative position to the parent in a node graph.
UsdUINodeGraphNodeAPI(const UsdPrim &prim=UsdPrim())
Construct a UsdUINodeGraphNodeAPI on UsdPrim prim .
USDUI_API UsdAttribute CreateStackingOrderAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetStackingOrderAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
static USDUI_API UsdUINodeGraphNodeAPI Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdUINodeGraphNodeAPI holding the prim adhering to this schema at path on stage.
static USDUI_API UsdUINodeGraphNodeAPI Apply(const UsdPrim &prim)
Applies this single-apply API schema to the given prim.
USDUI_API UsdAttribute GetIconAttr() const
This points to an image that should be displayed on the node.
USDUI_API UsdAttribute CreateDisplayColorAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetDisplayColorAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
USDUI_API UsdAttribute GetExpansionStateAttr() const
The current expansionState of the node in the ui.
USDUI_API UsdAttribute GetDisplayColorAttr() const
This hint defines what tint the node should have in the node graph.
virtual USDUI_API ~UsdUINodeGraphNodeAPI()
Destructor.
USDUI_API UsdAttribute CreateSizeAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetSizeAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
static USDUI_API bool CanApply(const UsdPrim &prim, std::string *whyNot=nullptr)
Returns true if this single-apply API schema can be applied to the given prim.
USDUI_API UsdAttribute GetSizeAttr() const
Optional size hint for a node in a node graph.
USDUI_API UsdAttribute CreatePosAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetPosAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
USDUI_API UsdSchemaKind _GetSchemaKind() const override
Returns the kind of schema this class belongs to.
USDUI_API UsdAttribute CreateExpansionStateAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetExpansionStateAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
Definition: value.h:165
UsdSchemaKind
An enum representing which kind of schema a given schema class belongs to.
Definition: common.h:129
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:457