All Classes Files Functions Variables Pages
physxVehicleMultiWheelDifferentialAPI.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 PHYSXSCHEMA_GENERATED_PHYSXVEHICLEMULTIWHEELDIFFERENTIALAPI_H
25 #define PHYSXSCHEMA_GENERATED_PHYSXVEHICLEMULTIWHEELDIFFERENTIALAPI_H
26 
28 
29 #include "pxr/pxr.h"
30 #include ".//api.h"
31 #include "pxr/usd/usd/apiSchemaBase.h"
32 #include "pxr/usd/usd/prim.h"
33 #include "pxr/usd/usd/stage.h"
34 #include ".//tokens.h"
35 
36 #include "pxr/base/vt/value.h"
37 
38 #include "pxr/base/gf/vec3d.h"
39 #include "pxr/base/gf/vec3f.h"
40 #include "pxr/base/gf/matrix4d.h"
41 
42 #include "pxr/base/tf/token.h"
43 #include "pxr/base/tf/type.h"
44 
45 PXR_NAMESPACE_OPEN_SCOPE
46 
47 class SdfAssetPath;
48 
49 // -------------------------------------------------------------------------- //
50 // PHYSXVEHICLEMULTIWHEELDIFFERENTIALAPI //
51 // -------------------------------------------------------------------------- //
52 
60 class PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI : public UsdAPISchemaBase
61 {
62 public:
66  static const UsdSchemaType schemaType = UsdSchemaType::SingleApplyAPI;
67 
72  explicit PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI(const UsdPrim& prim=UsdPrim())
73  : UsdAPISchemaBase(prim)
74  {
75  }
76 
80  explicit PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI(const UsdSchemaBase& schemaObj)
81  : UsdAPISchemaBase(schemaObj)
82  {
83  }
84 
86  PHYSXSCHEMA_API
88 
92  PHYSXSCHEMA_API
93  static const TfTokenVector &
94  GetSchemaAttributeNames(bool includeInherited=true);
95 
105  PHYSXSCHEMA_API
107  Get(const UsdStagePtr &stage, const SdfPath &path);
108 
109 
124  PHYSXSCHEMA_API
126  Apply(const UsdPrim &prim);
127 
128 protected:
132  PHYSXSCHEMA_API
133  UsdSchemaType _GetSchemaType() const override;
134 
135 private:
136  // needs to invoke _GetStaticTfType.
137  friend class UsdSchemaRegistry;
138  PHYSXSCHEMA_API
139  static const TfType &_GetStaticTfType();
140 
141  static bool _IsTypedSchema();
142 
143  // override SchemaBase virtuals.
144  PHYSXSCHEMA_API
145  const TfType &_GetTfType() const override;
146 
147 public:
148  // --------------------------------------------------------------------- //
149  // WHEELS
150  // --------------------------------------------------------------------- //
159  PHYSXSCHEMA_API
160  UsdAttribute GetWheelsAttr() const;
161 
167  PHYSXSCHEMA_API
168  UsdAttribute CreateWheelsAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
169 
170 public:
171  // --------------------------------------------------------------------- //
172  // TORQUERATIOS
173  // --------------------------------------------------------------------- //
185  PHYSXSCHEMA_API
186  UsdAttribute GetTorqueRatiosAttr() const;
187 
193  PHYSXSCHEMA_API
194  UsdAttribute CreateTorqueRatiosAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
195 
196 public:
197  // --------------------------------------------------------------------- //
198  // AVERAGEWHEELSPEEDRATIOS
199  // --------------------------------------------------------------------- //
214  PHYSXSCHEMA_API
215  UsdAttribute GetAverageWheelSpeedRatiosAttr() const;
216 
222  PHYSXSCHEMA_API
223  UsdAttribute CreateAverageWheelSpeedRatiosAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
224 
225 public:
226  // ===================================================================== //
227  // Feel free to add custom code below this line, it will be preserved by
228  // the code generator.
229  //
230  // Just remember to:
231  // - Close the class declaration with };
232  // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
233  // - Close the include guard with #endif
234  // ===================================================================== //
235  // --(BEGIN CUSTOM CODE)--
236 };
237 
238 PXR_NAMESPACE_CLOSE_SCOPE
239 
240 #endif
PHYSXSCHEMA_API UsdAttribute CreateTorqueRatiosAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetTorqueRatiosAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create...
PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI(const UsdSchemaBase &schemaObj)
Construct a PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI on the prim held by schemaObj ...
PHYSXSCHEMA_API UsdSchemaType _GetSchemaType() const override
Returns the type of schema this class belongs to.
Describes which wheels of a vehicle are driven as well as the distribution of the drive torque among ...
virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI()
Destructor.
PHYSXSCHEMA_API UsdAttribute GetTorqueRatiosAttr() const
Defines how the drive torque should get distributed among the wheels specified in the "wheels" attrib...
static PHYSXSCHEMA_API PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI Apply(const UsdPrim &prim)
Applies this single-apply API schema to the given prim.
PHYSXSCHEMA_API UsdAttribute CreateWheelsAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetWheelsAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create.
static PHYSXSCHEMA_API PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI Get(const UsdStagePtr &stage, const SdfPath &path)
Return a PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI holding the prim adhering to this schema at...
PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI(const UsdPrim &prim=UsdPrim())
Construct a PhysxSchemaPhysxVehicleMultiWheelDifferentialAPI on UsdPrim prim .
PHYSXSCHEMA_API UsdAttribute GetWheelsAttr() const
List of indices, referencing the wheels that are driven (receiving torque from the engine)...
PHYSXSCHEMA_API UsdAttribute CreateAverageWheelSpeedRatiosAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetAverageWheelSpeedRatiosAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Crea...
static PHYSXSCHEMA_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...
PHYSXSCHEMA_API UsdAttribute GetAverageWheelSpeedRatiosAttr() const
Defines how the speeds of the driven wheels get weighted when computing the average wheel speed at th...
static const UsdSchemaType schemaType
Compile time constant representing what kind of schema this class is.