Loading...
Searching...
No Matches
xformable.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 USDGEOM_GENERATED_XFORMABLE_H
25#define USDGEOM_GENERATED_XFORMABLE_H
26
28
29#include "pxr/pxr.h"
30#include "pxr/usd/usdGeom/api.h"
32#include "pxr/usd/usd/prim.h"
33#include "pxr/usd/usd/stage.h"
35
37#include <vector>
38
39#include "pxr/base/vt/value.h"
40
41#include "pxr/base/gf/vec3d.h"
42#include "pxr/base/gf/vec3f.h"
44
45#include "pxr/base/tf/token.h"
46#include "pxr/base/tf/type.h"
47
48PXR_NAMESPACE_OPEN_SCOPE
49
50class SdfAssetPath;
51
52// -------------------------------------------------------------------------- //
53// XFORMABLE //
54// -------------------------------------------------------------------------- //
55
253{
254public:
258 static const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractTyped;
259
264 explicit UsdGeomXformable(const UsdPrim& prim=UsdPrim())
265 : UsdGeomImageable(prim)
266 {
267 }
268
272 explicit UsdGeomXformable(const UsdSchemaBase& schemaObj)
273 : UsdGeomImageable(schemaObj)
274 {
275 }
276
278 USDGEOM_API
280
284 USDGEOM_API
285 static const TfTokenVector &
286 GetSchemaAttributeNames(bool includeInherited=true);
287
297 USDGEOM_API
298 static UsdGeomXformable
299 Get(const UsdStagePtr &stage, const SdfPath &path);
300
301
302protected:
306 USDGEOM_API
308
309private:
310 // needs to invoke _GetStaticTfType.
311 friend class UsdSchemaRegistry;
312 USDGEOM_API
313 static const TfType &_GetStaticTfType();
314
315 static bool _IsTypedSchema();
316
317 // override SchemaBase virtuals.
318 USDGEOM_API
319 const TfType &_GetTfType() const override;
320
321public:
322 // --------------------------------------------------------------------- //
323 // XFORMOPORDER
324 // --------------------------------------------------------------------- //
341 USDGEOM_API
343
349 USDGEOM_API
350 UsdAttribute CreateXformOpOrderAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
351
352public:
353 // ===================================================================== //
354 // Feel free to add custom code below this line, it will be preserved by
355 // the code generator.
356 //
357 // Just remember to:
358 // - Close the class declaration with };
359 // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
360 // - Close the include guard with #endif
361 // ===================================================================== //
362 // --(BEGIN CUSTOM CODE)--
363
380 public:
381 XformQuery():
382 _resetsXformStack(false)
383 { }
384
388 USDGEOM_API
389 XformQuery(const UsdGeomXformable &xformable);
390
393 USDGEOM_API
395 const UsdTimeCode time) const;
396
398 bool GetResetXformStack() const {
399 return _resetsXformStack;
400 }
401
403 USDGEOM_API
405
407 USDGEOM_API
409
414 USDGEOM_API
415 bool GetTimeSamples(std::vector<double> *times) const;
416
421 USDGEOM_API
423 std::vector<double> *times) const;
424
427 USDGEOM_API
429 const TfToken &attrName) const;
430
431 private:
432 // Cached copy of the vector of ordered xform ops.
433 std::vector<UsdGeomXformOp> _xformOps;
434
435 // Cache whether the xformable has !resetsXformStack! in its
436 // xformOpOrder.
437 bool _resetsXformStack;
438 };
439
475 USDGEOM_API
479 TfToken const &opSuffix = TfToken(),
480 bool isInverseOp=false) const;
481
501 USDGEOM_API
503 TfToken const &opSuffix = TfToken(),
504 bool isInverseOp=false) const;
505
510 USDGEOM_API
513 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
514
519 USDGEOM_API
521 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
522
527 USDGEOM_API
530 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
531
536 USDGEOM_API
538 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
539
545 USDGEOM_API
548 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
549
554 USDGEOM_API
556 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
557
563 USDGEOM_API
566 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
567
572 USDGEOM_API
574 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
575
580 USDGEOM_API
583 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
584
589 USDGEOM_API
591 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
592
598 USDGEOM_API
601 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
602
607 USDGEOM_API
609 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
610
616 USDGEOM_API
619 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
620
625 USDGEOM_API
627 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
628
634 USDGEOM_API
637 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
638
643 USDGEOM_API
645 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
646
652 USDGEOM_API
655 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
656
661 USDGEOM_API
663 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
664
670 USDGEOM_API
673 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
674
679 USDGEOM_API
681 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
682
688 USDGEOM_API
691 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
692
697 USDGEOM_API
699 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
700
705 USDGEOM_API
708 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
709
714 USDGEOM_API
716 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
717
727 USDGEOM_API
730 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
731
737 USDGEOM_API
739 TfToken const &opSuffix = TfToken(), bool isInverseOp=false) const;
740
750 USDGEOM_API
751 bool SetResetXformStack(bool resetXform) const;
752
759 USDGEOM_API
760 bool GetResetXformStack() const;
761
783 USDGEOM_API
784 bool SetXformOpOrder(std::vector<UsdGeomXformOp> const &orderedXformOps,
785 bool resetXformStack = false) const;
786
804 USDGEOM_API
805 std::vector<UsdGeomXformOp> GetOrderedXformOps(bool *resetsXformStack) const;
806
808 USDGEOM_API
809 bool ClearXformOpOrder() const;
810
819 USDGEOM_API
821
828 USDGEOM_API
830
839 USDGEOM_API
841 const std::vector<UsdGeomXformOp> &ops) const;
842
850 USDGEOM_API
851 bool GetTimeSamples(std::vector<double> *times) const;
852
861 USDGEOM_API
863 std::vector<double> *times) const;
864
872 USDGEOM_API
873 static bool GetTimeSamples(
874 std::vector<UsdGeomXformOp> const &orderedXformOps,
875 std::vector<double> *times);
876
885 USDGEOM_API
887 std::vector<UsdGeomXformOp> const &orderedXformOps,
888 const GfInterval &interval,
889 std::vector<double> *times);
890
911 USDGEOM_API
913 GfMatrix4d *transform,
914 bool *resetsXformStack,
915 const UsdTimeCode time = UsdTimeCode::Default()) const;
916
938 USDGEOM_API
940 bool *resetsXformStack,
941 const std::vector<UsdGeomXformOp> &ops,
942 const UsdTimeCode time = UsdTimeCode::Default()) const;
943
956 USDGEOM_API
957 static bool GetLocalTransformation(GfMatrix4d *transform,
958 std::vector<UsdGeomXformOp> const &ops,
959 const UsdTimeCode time);
960
963 USDGEOM_API
964 static bool IsTransformationAffectedByAttrNamed(const TfToken &attrName);
965
966private:
967 // Extracts the value of the xformOpOrder attribute. Returns false if
968 // the xformOpOrder attribute doesn't exist on the prim (eg. when the prim
969 // type is incompatible or if it's a pure over).
970 bool _GetXformOpOrderValue(VtTokenArray *xformOpOrder) const;
971
972 // Helper function for getting xformops with or without attribute queries.
973 std::vector<UsdGeomXformOp>
974 _GetOrderedXformOps(bool *resetsXformStack,
975 bool withAttributeQueries) const;
976};
977
978PXR_NAMESPACE_CLOSE_SCOPE
979
980#endif
A basic mathematical interval class.
Definition: interval.h:50
Stores a 4x4 matrix of double elements.
Definition: matrix4d.h:88
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:290
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:88
TfType represents a dynamic runtime type.
Definition: type.h:65
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
Definition: attribute.h:176
Base class for all prims that may require rendering or visualization of some sort.
Definition: imageable.h:75
Schema wrapper for UsdAttribute for authoring and computing transformation operations,...
Definition: xformOp.h:111
Type
Enumerates the set of all transformation operation types.
Definition: xformOp.h:115
Precision
Precision with which the value of the tranformation operation is encoded.
Definition: xformOp.h:139
@ PrecisionFloat
Floating-point precision.
Definition: xformOp.h:141
@ PrecisionDouble
Double precision.
Definition: xformOp.h:140
Helper class that caches the ordered vector of UsGeomXformOps that contribute to the local transforma...
Definition: xformable.h:379
USDGEOM_API bool GetTimeSamples(std::vector< double > *times) const
Sets the vector of times at which xformOp samples have been authored in the cached set of xform ops.
USDGEOM_API bool GetLocalTransformation(GfMatrix4d *transform, const UsdTimeCode time) const
Utilizes the internally cached UsdAttributeQuery's to efficiently compute the transform value at the ...
USDGEOM_API bool GetTimeSamplesInInterval(const GfInterval &interval, std::vector< double > *times) const
Sets the vector of times in the interval at which xformOp samples have been authored in the cached se...
bool GetResetXformStack() const
Returns whether the xformable resets its parent's transformation.
Definition: xformable.h:398
USDGEOM_API bool TransformMightBeTimeVarying() const
Returns whether the xform value might change over time.
USDGEOM_API bool HasNonEmptyXformOpOrder() const
Returns whether xformOpOrder is non-empty.
USDGEOM_API bool IsAttributeIncludedInLocalTransform(const TfToken &attrName) const
Returns whether the given attribute affects the local transformation computed for this query.
USDGEOM_API XformQuery(const UsdGeomXformable &xformable)
Constructs an XformQuery object for the given xformable prim.
Base class for all transformable prims, which allows arbitrary sequences of component affine transfor...
Definition: xformable.h:253
USDGEOM_API bool GetTimeSamples(std::vector< double > *times) const
Sets times to the union of all the timesamples at which xformOps that are included in the xformOpOrde...
USDGEOM_API UsdAttribute CreateXformOpOrderAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetXformOpOrderAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
USDGEOM_API UsdGeomXformOp GetTransformOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a tranform op (4x4 matrix transformation) from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp AddTransformOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionDouble, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a tranform op (4x4 matrix transformation) to the local stack represented by this xformable.
USDGEOM_API bool ClearXformOpOrder() const
Clears the local transform stack.
USDGEOM_API UsdGeomXformOp GetRotateZXYOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation op with ZXY rotation order from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp GetScaleOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a scale operation from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp AddRotateYZXOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation op with YZX rotation order to the local stack represented by this xformable.
USDGEOM_API bool GetLocalTransformation(GfMatrix4d *transform, bool *resetsXformStack, const std::vector< UsdGeomXformOp > &ops, const UsdTimeCode time=UsdTimeCode::Default()) const
This is an overloaded member function, provided for convenience. It differs from the above function o...
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
Definition: xformable.h:258
USDGEOM_API bool TransformMightBeTimeVarying(const std::vector< UsdGeomXformOp > &ops) const
This is an overloaded member function, provided for convenience. It differs from the above function o...
USDGEOM_API UsdGeomXformOp GetRotateZOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation about the Z-axis from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp GetRotateZYXOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation op with ZYX rotation order from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp AddRotateYOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation about the Y-axis to the local stack represented by this xformable.
USDGEOM_API bool SetXformOpOrder(std::vector< UsdGeomXformOp > const &orderedXformOps, bool resetXformStack=false) const
Reorder the already-existing transform ops on this prim.
UsdGeomXformable(const UsdSchemaBase &schemaObj)
Construct a UsdGeomXformable on the prim held by schemaObj .
Definition: xformable.h:272
USDGEOM_API UsdGeomXformOp AddScaleOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a scale operation to the local stack represented by this xformable.
static USDGEOM_API bool GetTimeSamplesInInterval(std::vector< UsdGeomXformOp > const &orderedXformOps, const GfInterval &interval, std::vector< double > *times)
Returns the union of all the timesamples in the interval at which the attributes belonging to the giv...
USDGEOM_API UsdGeomXformOp AddRotateZYXOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation op with ZYX rotation order to the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp GetOrientOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get an orient op (arbitrary axis/angle rotation) from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp AddRotateXZYOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation op with XZY rotation order to the local stack represented by this xformable.
USDGEOM_API bool GetTimeSamplesInInterval(const GfInterval &interval, std::vector< double > *times) const
Sets times to the union of all the timesamples in the interval, interval, at which xformOps that are ...
USDGEOM_API bool GetResetXformStack() const
Does this prim reset its parent's inherited transformation?
USDGEOM_API UsdGeomXformOp AddRotateZXYOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation op with ZXY rotation order to the local stack represented by this xformable.
USDGEOM_API UsdSchemaKind _GetSchemaKind() const override
Returns the kind of schema this class belongs to.
USDGEOM_API UsdGeomXformOp AddTranslateOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionDouble, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a translate operation to the local stack represented by this xformable.
static USDGEOM_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...
USDGEOM_API UsdGeomXformOp GetRotateYXZOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation op with YXZ rotation order from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp AddOrientOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a orient op (arbitrary axis/angle rotation) to the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp GetRotateXYZOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation op with XYZ rotation order from the local stack represented by this xformable.
virtual USDGEOM_API ~UsdGeomXformable()
Destructor.
USDGEOM_API UsdGeomXformOp MakeMatrixXform() const
Clears the existing local transform stack and creates a new xform op of type 'transform'.
USDGEOM_API UsdGeomXformOp GetRotateYOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation about the Y-axis from the local stack represented by this xformable.
USDGEOM_API bool SetResetXformStack(bool resetXform) const
Specify whether this prim's transform should reset the transformation stack inherited from its parent...
USDGEOM_API bool GetLocalTransformation(GfMatrix4d *transform, bool *resetsXformStack, const UsdTimeCode time=UsdTimeCode::Default()) const
Computes the fully-combined, local-to-parent transformation for this prim.
USDGEOM_API UsdGeomXformOp AddRotateZOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation about the Z-axis to the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp GetRotateYZXOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation op with YZX rotation order from the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp GetXformOp(UsdGeomXformOp::Type const opType, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get an affine transformation from the local stack represented by this Xformable.
USDGEOM_API UsdGeomXformOp GetTranslateOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a translate operation from the local stack represented by this xformable.
static USDGEOM_API bool GetTimeSamples(std::vector< UsdGeomXformOp > const &orderedXformOps, std::vector< double > *times)
Returns the union of all the timesamples at which the attributes belonging to the given orderedXformO...
USDGEOM_API UsdGeomXformOp AddRotateXYZOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation op with XYZ rotation order to the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp AddRotateXOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation about the X-axis to the local stack represented by this xformable.
USDGEOM_API UsdGeomXformOp AddRotateYXZOp(UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add a rotation op with YXZ rotation order to the local stack represented by this xformable.
USDGEOM_API std::vector< UsdGeomXformOp > GetOrderedXformOps(bool *resetsXformStack) const
Return the ordered list of transform operations to be applied to this prim, in least-to-most-local or...
USDGEOM_API bool TransformMightBeTimeVarying() const
Determine whether there is any possibility that this prim's local transformation may vary over time.
static USDGEOM_API UsdGeomXformable Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdGeomXformable holding the prim adhering to this schema at path on stage.
static USDGEOM_API bool GetLocalTransformation(GfMatrix4d *transform, std::vector< UsdGeomXformOp > const &ops, const UsdTimeCode time)
This is an overloaded member function, provided for convenience. It differs from the above function o...
USDGEOM_API UsdGeomXformOp AddXformOp(UsdGeomXformOp::Type const opType, UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionDouble, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Add an affine transformation to the local stack represented by this Xformable.
static USDGEOM_API bool IsTransformationAffectedByAttrNamed(const TfToken &attrName)
Returns true if the attribute named attrName could affect the local transformation of an xformable pr...
USDGEOM_API UsdGeomXformOp GetRotateXOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation about the X-axis from the local stack represented by this xformable.
UsdGeomXformable(const UsdPrim &prim=UsdPrim())
Construct a UsdGeomXformable on UsdPrim prim .
Definition: xformable.h:264
USDGEOM_API UsdGeomXformOp GetRotateXZYOp(TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
Get a rotation op with XZY rotation order from the local stack represented by this xformable.
USDGEOM_API UsdAttribute GetXformOpOrderAttr() const
Encodes the sequence of transformation operations in the order in which they should be pushed onto a ...
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...
Represent a time value, which may be either numeric, holding a double value, or a sentinel value UsdT...
Definition: timeCode.h:84
static constexpr UsdTimeCode Default()
Produce a UsdTimeCode representing the sentinel value for 'default'.
Definition: timeCode.h:112
Provides a container which may hold any type, and provides introspection and iteration over array typ...
Definition: value.h:164
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