| 1 | // |
| 2 | // Redistribution and use in source and binary forms, with or without |
| 3 | // modification, are permitted provided that the following conditions |
| 4 | // are met: |
| 5 | // * Redistributions of source code must retain the above copyright |
| 6 | // notice, this list of conditions and the following disclaimer. |
| 7 | // * Redistributions in binary form must reproduce the above copyright |
| 8 | // notice, this list of conditions and the following disclaimer in the |
| 9 | // documentation and/or other materials provided with the distribution. |
| 10 | // * Neither the name of NVIDIA CORPORATION nor the names of its |
| 11 | // contributors may be used to endorse or promote products derived |
| 12 | // from this software without specific prior written permission. |
| 13 | // |
| 14 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ''AS IS'' AND ANY |
| 15 | // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| 16 | // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| 17 | // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR |
| 18 | // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
| 19 | // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
| 20 | // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
| 21 | // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |
| 22 | // OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 23 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| 24 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 25 | // |
| 26 | // Copyright (c) 2008-2021 NVIDIA Corporation. All rights reserved. |
| 27 | // Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved. |
| 28 | // Copyright (c) 2001-2004 NovodeX AG. All rights reserved. |
| 29 | |
| 30 | // This code is auto-generated by the PhysX Clang metadata generator. Do not edit or be |
| 31 | // prepared for your edits to be quietly ignored next time the clang metadata generator is |
| 32 | // run. You can find the most recent version of clang metadata generator by contacting |
| 33 | // Chris Nuernberger <chrisn@nvidia.com> or Dilip or Adam. |
| 34 | // The source code for the generate was at one time checked into: |
| 35 | // physx/PhysXMetaDataGenerator/llvm/tools/clang/lib/Frontend/PhysXMetaDataAction.cpp |
| 36 | #define THERE_IS_NO_INCLUDE_GUARD_HERE_FOR_A_REASON |
| 37 | |
| 38 | #define PX_PROPERTY_INFO_NAME PxExtensionsPropertyInfoName |
| 39 | static PxU32ToName g_physx__PxJointActorIndex__EnumConversion[] = { |
| 40 | { .mName: "eACTOR0" , .mValue: static_cast<PxU32>( physx::PxJointActorIndex::eACTOR0 ) }, |
| 41 | { .mName: "eACTOR1" , .mValue: static_cast<PxU32>( physx::PxJointActorIndex::eACTOR1 ) }, |
| 42 | { NULL, .mValue: 0 } |
| 43 | }; |
| 44 | |
| 45 | template<> struct PxEnumTraits< physx::PxJointActorIndex::Enum > { PxEnumTraits() : NameConversion( g_physx__PxJointActorIndex__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 46 | class PxJoint; |
| 47 | struct PxJointGeneratedValues |
| 48 | { |
| 49 | PxRigidActor * Actors[2]; |
| 50 | PxTransform LocalPose[physx::PxJointActorIndex::COUNT]; |
| 51 | PxTransform RelativeTransform; |
| 52 | PxVec3 RelativeLinearVelocity; |
| 53 | PxVec3 RelativeAngularVelocity; |
| 54 | PxReal BreakForce[2]; |
| 55 | PxConstraintFlags ConstraintFlags; |
| 56 | PxReal InvMassScale0; |
| 57 | PxReal InvInertiaScale0; |
| 58 | PxReal InvMassScale1; |
| 59 | PxReal InvInertiaScale1; |
| 60 | PxConstraint * Constraint; |
| 61 | const char * Name; |
| 62 | PxScene * Scene; |
| 63 | void * UserData; |
| 64 | PxJointGeneratedValues( const PxJoint* inSource ); |
| 65 | }; |
| 66 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, Actors, PxJointGeneratedValues) |
| 67 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, LocalPose, PxJointGeneratedValues) |
| 68 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, RelativeTransform, PxJointGeneratedValues) |
| 69 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, RelativeLinearVelocity, PxJointGeneratedValues) |
| 70 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, RelativeAngularVelocity, PxJointGeneratedValues) |
| 71 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, BreakForce, PxJointGeneratedValues) |
| 72 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, ConstraintFlags, PxJointGeneratedValues) |
| 73 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, InvMassScale0, PxJointGeneratedValues) |
| 74 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, InvInertiaScale0, PxJointGeneratedValues) |
| 75 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, InvMassScale1, PxJointGeneratedValues) |
| 76 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, InvInertiaScale1, PxJointGeneratedValues) |
| 77 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, Constraint, PxJointGeneratedValues) |
| 78 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, Name, PxJointGeneratedValues) |
| 79 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, Scene, PxJointGeneratedValues) |
| 80 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJoint, UserData, PxJointGeneratedValues) |
| 81 | struct PxJointGeneratedInfo |
| 82 | |
| 83 | { |
| 84 | static const char* getClassName() { return "PxJoint" ; } |
| 85 | PxRangePropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_Actors, PxJoint, PxRigidActor * > Actors; |
| 86 | PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_LocalPose, PxJoint, PxJointActorIndex::Enum, PxTransform > LocalPose; |
| 87 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_RelativeTransform, PxJoint, PxTransform > RelativeTransform; |
| 88 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_RelativeLinearVelocity, PxJoint, PxVec3 > RelativeLinearVelocity; |
| 89 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_RelativeAngularVelocity, PxJoint, PxVec3 > RelativeAngularVelocity; |
| 90 | PxRangePropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_BreakForce, PxJoint, PxReal > BreakForce; |
| 91 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_ConstraintFlags, PxJoint, PxConstraintFlags, PxConstraintFlags > ConstraintFlags; |
| 92 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_InvMassScale0, PxJoint, PxReal, PxReal > InvMassScale0; |
| 93 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_InvInertiaScale0, PxJoint, PxReal, PxReal > InvInertiaScale0; |
| 94 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_InvMassScale1, PxJoint, PxReal, PxReal > InvMassScale1; |
| 95 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_InvInertiaScale1, PxJoint, PxReal, PxReal > InvInertiaScale1; |
| 96 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_Constraint, PxJoint, PxConstraint * > Constraint; |
| 97 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_Name, PxJoint, const char *, const char * > Name; |
| 98 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_Scene, PxJoint, PxScene * > Scene; |
| 99 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJoint_UserData, PxJoint, void *, void * > UserData; |
| 100 | |
| 101 | PxJointGeneratedInfo(); |
| 102 | template<typename TReturnType, typename TOperator> |
| 103 | TReturnType visitType( TOperator inOperator ) const |
| 104 | { |
| 105 | return inOperator( nullptr ); |
| 106 | } |
| 107 | template<typename TOperator> |
| 108 | void visitBases( TOperator inOperator ) |
| 109 | { |
| 110 | PX_UNUSED(inOperator); |
| 111 | } |
| 112 | template<typename TOperator> |
| 113 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 114 | { |
| 115 | PX_UNUSED(inOperator); |
| 116 | PX_UNUSED(inStartIndex); |
| 117 | return inStartIndex; |
| 118 | } |
| 119 | static PxU32 instancePropertyCount() { return 15; } |
| 120 | static PxU32 totalPropertyCount() { return instancePropertyCount(); } |
| 121 | template<typename TOperator> |
| 122 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 123 | { |
| 124 | PX_UNUSED(inOperator); |
| 125 | PX_UNUSED(inStartIndex); |
| 126 | inOperator( Actors, inStartIndex + 0 );; |
| 127 | inOperator( LocalPose, inStartIndex + 1 );; |
| 128 | inOperator( RelativeTransform, inStartIndex + 2 );; |
| 129 | inOperator( RelativeLinearVelocity, inStartIndex + 3 );; |
| 130 | inOperator( RelativeAngularVelocity, inStartIndex + 4 );; |
| 131 | inOperator( BreakForce, inStartIndex + 5 );; |
| 132 | inOperator( ConstraintFlags, inStartIndex + 6 );; |
| 133 | inOperator( InvMassScale0, inStartIndex + 7 );; |
| 134 | inOperator( InvInertiaScale0, inStartIndex + 8 );; |
| 135 | inOperator( InvMassScale1, inStartIndex + 9 );; |
| 136 | inOperator( InvInertiaScale1, inStartIndex + 10 );; |
| 137 | inOperator( Constraint, inStartIndex + 11 );; |
| 138 | inOperator( Name, inStartIndex + 12 );; |
| 139 | inOperator( Scene, inStartIndex + 13 );; |
| 140 | inOperator( UserData, inStartIndex + 14 );; |
| 141 | return 15 + inStartIndex; |
| 142 | } |
| 143 | }; |
| 144 | template<> struct PxClassInfoTraits<PxJoint> |
| 145 | { |
| 146 | PxJointGeneratedInfo Info; |
| 147 | const PxJointGeneratedInfo* getInfo() { return &Info; } |
| 148 | }; |
| 149 | |
| 150 | static PxU32ToName g_physx__PxD6Axis__EnumConversion[] = { |
| 151 | { .mName: "eX" , .mValue: static_cast<PxU32>( physx::PxD6Axis::eX ) }, |
| 152 | { .mName: "eY" , .mValue: static_cast<PxU32>( physx::PxD6Axis::eY ) }, |
| 153 | { .mName: "eZ" , .mValue: static_cast<PxU32>( physx::PxD6Axis::eZ ) }, |
| 154 | { .mName: "eTWIST" , .mValue: static_cast<PxU32>( physx::PxD6Axis::eTWIST ) }, |
| 155 | { .mName: "eSWING1" , .mValue: static_cast<PxU32>( physx::PxD6Axis::eSWING1 ) }, |
| 156 | { .mName: "eSWING2" , .mValue: static_cast<PxU32>( physx::PxD6Axis::eSWING2 ) }, |
| 157 | { NULL, .mValue: 0 } |
| 158 | }; |
| 159 | |
| 160 | template<> struct PxEnumTraits< physx::PxD6Axis::Enum > { PxEnumTraits() : NameConversion( g_physx__PxD6Axis__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 161 | static PxU32ToName g_physx__PxD6Motion__EnumConversion[] = { |
| 162 | { .mName: "eLOCKED" , .mValue: static_cast<PxU32>( physx::PxD6Motion::eLOCKED ) }, |
| 163 | { .mName: "eLIMITED" , .mValue: static_cast<PxU32>( physx::PxD6Motion::eLIMITED ) }, |
| 164 | { .mName: "eFREE" , .mValue: static_cast<PxU32>( physx::PxD6Motion::eFREE ) }, |
| 165 | { NULL, .mValue: 0 } |
| 166 | }; |
| 167 | |
| 168 | template<> struct PxEnumTraits< physx::PxD6Motion::Enum > { PxEnumTraits() : NameConversion( g_physx__PxD6Motion__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 169 | static PxU32ToName g_physx__PxD6Drive__EnumConversion[] = { |
| 170 | { .mName: "eX" , .mValue: static_cast<PxU32>( physx::PxD6Drive::eX ) }, |
| 171 | { .mName: "eY" , .mValue: static_cast<PxU32>( physx::PxD6Drive::eY ) }, |
| 172 | { .mName: "eZ" , .mValue: static_cast<PxU32>( physx::PxD6Drive::eZ ) }, |
| 173 | { .mName: "eSWING" , .mValue: static_cast<PxU32>( physx::PxD6Drive::eSWING ) }, |
| 174 | { .mName: "eTWIST" , .mValue: static_cast<PxU32>( physx::PxD6Drive::eTWIST ) }, |
| 175 | { .mName: "eSLERP" , .mValue: static_cast<PxU32>( physx::PxD6Drive::eSLERP ) }, |
| 176 | { NULL, .mValue: 0 } |
| 177 | }; |
| 178 | |
| 179 | template<> struct PxEnumTraits< physx::PxD6Drive::Enum > { PxEnumTraits() : NameConversion( g_physx__PxD6Drive__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 180 | class PxD6Joint; |
| 181 | struct PxD6JointGeneratedValues |
| 182 | : PxJointGeneratedValues { |
| 183 | PxD6Motion::Enum Motion[physx::PxD6Axis::eCOUNT]; |
| 184 | PxReal TwistAngle; |
| 185 | PxReal Twist; |
| 186 | PxReal SwingYAngle; |
| 187 | PxReal SwingZAngle; |
| 188 | PxJointLinearLimit DistanceLimit; |
| 189 | PxJointLinearLimit LinearLimit; |
| 190 | PxJointAngularLimitPair TwistLimit; |
| 191 | PxJointLimitCone SwingLimit; |
| 192 | PxJointLimitPyramid PyramidSwingLimit; |
| 193 | PxD6JointDrive Drive[physx::PxD6Drive::eCOUNT]; |
| 194 | PxTransform DrivePosition; |
| 195 | PxReal ProjectionLinearTolerance; |
| 196 | PxReal ProjectionAngularTolerance; |
| 197 | const char * ConcreteTypeName; |
| 198 | PxD6JointGeneratedValues( const PxD6Joint* inSource ); |
| 199 | }; |
| 200 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, Motion, PxD6JointGeneratedValues) |
| 201 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, TwistAngle, PxD6JointGeneratedValues) |
| 202 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, Twist, PxD6JointGeneratedValues) |
| 203 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, SwingYAngle, PxD6JointGeneratedValues) |
| 204 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, SwingZAngle, PxD6JointGeneratedValues) |
| 205 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, DistanceLimit, PxD6JointGeneratedValues) |
| 206 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, LinearLimit, PxD6JointGeneratedValues) |
| 207 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, TwistLimit, PxD6JointGeneratedValues) |
| 208 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, SwingLimit, PxD6JointGeneratedValues) |
| 209 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, PyramidSwingLimit, PxD6JointGeneratedValues) |
| 210 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, Drive, PxD6JointGeneratedValues) |
| 211 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, DrivePosition, PxD6JointGeneratedValues) |
| 212 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, ProjectionLinearTolerance, PxD6JointGeneratedValues) |
| 213 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, ProjectionAngularTolerance, PxD6JointGeneratedValues) |
| 214 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6Joint, ConcreteTypeName, PxD6JointGeneratedValues) |
| 215 | struct PxD6JointGeneratedInfo |
| 216 | : PxJointGeneratedInfo |
| 217 | { |
| 218 | static const char* getClassName() { return "PxD6Joint" ; } |
| 219 | PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_Motion, PxD6Joint, PxD6Axis::Enum, PxD6Motion::Enum > Motion; |
| 220 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_TwistAngle, PxD6Joint, PxReal > TwistAngle; |
| 221 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_Twist, PxD6Joint, PxReal > Twist; |
| 222 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_SwingYAngle, PxD6Joint, PxReal > SwingYAngle; |
| 223 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_SwingZAngle, PxD6Joint, PxReal > SwingZAngle; |
| 224 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_DistanceLimit, PxD6Joint, const PxJointLinearLimit &, PxJointLinearLimit > DistanceLimit; |
| 225 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_LinearLimit, PxD6Joint, const PxJointLinearLimit &, PxJointLinearLimit > LinearLimit; |
| 226 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_TwistLimit, PxD6Joint, const PxJointAngularLimitPair &, PxJointAngularLimitPair > TwistLimit; |
| 227 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_SwingLimit, PxD6Joint, const PxJointLimitCone &, PxJointLimitCone > SwingLimit; |
| 228 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_PyramidSwingLimit, PxD6Joint, const PxJointLimitPyramid &, PxJointLimitPyramid > PyramidSwingLimit; |
| 229 | PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_Drive, PxD6Joint, PxD6Drive::Enum, PxD6JointDrive > Drive; |
| 230 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_DrivePosition, PxD6Joint, const PxTransform &, PxTransform > DrivePosition; |
| 231 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_ProjectionLinearTolerance, PxD6Joint, PxReal, PxReal > ProjectionLinearTolerance; |
| 232 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_ProjectionAngularTolerance, PxD6Joint, PxReal, PxReal > ProjectionAngularTolerance; |
| 233 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6Joint_ConcreteTypeName, PxD6Joint, const char * > ConcreteTypeName; |
| 234 | |
| 235 | PxD6JointGeneratedInfo(); |
| 236 | template<typename TReturnType, typename TOperator> |
| 237 | TReturnType visitType( TOperator inOperator ) const |
| 238 | { |
| 239 | return inOperator( nullptr ); |
| 240 | } |
| 241 | template<typename TOperator> |
| 242 | void visitBases( TOperator inOperator ) |
| 243 | { |
| 244 | PX_UNUSED(inOperator); |
| 245 | inOperator( *static_cast<PxJointGeneratedInfo*>( this ) ); |
| 246 | } |
| 247 | template<typename TOperator> |
| 248 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 249 | { |
| 250 | PX_UNUSED(inOperator); |
| 251 | PX_UNUSED(inStartIndex); |
| 252 | inStartIndex = PxJointGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 253 | inStartIndex = PxJointGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 254 | return inStartIndex; |
| 255 | } |
| 256 | static PxU32 instancePropertyCount() { return 15; } |
| 257 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 258 | + PxJointGeneratedInfo::totalPropertyCount(); } |
| 259 | template<typename TOperator> |
| 260 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 261 | { |
| 262 | PX_UNUSED(inOperator); |
| 263 | PX_UNUSED(inStartIndex); |
| 264 | inOperator( Motion, inStartIndex + 0 );; |
| 265 | inOperator( TwistAngle, inStartIndex + 1 );; |
| 266 | inOperator( Twist, inStartIndex + 2 );; |
| 267 | inOperator( SwingYAngle, inStartIndex + 3 );; |
| 268 | inOperator( SwingZAngle, inStartIndex + 4 );; |
| 269 | inOperator( DistanceLimit, inStartIndex + 5 );; |
| 270 | inOperator( LinearLimit, inStartIndex + 6 );; |
| 271 | inOperator( TwistLimit, inStartIndex + 7 );; |
| 272 | inOperator( SwingLimit, inStartIndex + 8 );; |
| 273 | inOperator( PyramidSwingLimit, inStartIndex + 9 );; |
| 274 | inOperator( Drive, inStartIndex + 10 );; |
| 275 | inOperator( DrivePosition, inStartIndex + 11 );; |
| 276 | inOperator( ProjectionLinearTolerance, inStartIndex + 12 );; |
| 277 | inOperator( ProjectionAngularTolerance, inStartIndex + 13 );; |
| 278 | inOperator( ConcreteTypeName, inStartIndex + 14 );; |
| 279 | return 15 + inStartIndex; |
| 280 | } |
| 281 | }; |
| 282 | template<> struct PxClassInfoTraits<PxD6Joint> |
| 283 | { |
| 284 | PxD6JointGeneratedInfo Info; |
| 285 | const PxD6JointGeneratedInfo* getInfo() { return &Info; } |
| 286 | }; |
| 287 | |
| 288 | static PxU32ToName g_physx__PxDistanceJointFlag__EnumConversion[] = { |
| 289 | { .mName: "eMAX_DISTANCE_ENABLED" , .mValue: static_cast<PxU32>( physx::PxDistanceJointFlag::eMAX_DISTANCE_ENABLED ) }, |
| 290 | { .mName: "eMIN_DISTANCE_ENABLED" , .mValue: static_cast<PxU32>( physx::PxDistanceJointFlag::eMIN_DISTANCE_ENABLED ) }, |
| 291 | { .mName: "eSPRING_ENABLED" , .mValue: static_cast<PxU32>( physx::PxDistanceJointFlag::eSPRING_ENABLED ) }, |
| 292 | { NULL, .mValue: 0 } |
| 293 | }; |
| 294 | |
| 295 | template<> struct PxEnumTraits< physx::PxDistanceJointFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxDistanceJointFlag__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 296 | class PxDistanceJoint; |
| 297 | struct PxDistanceJointGeneratedValues |
| 298 | : PxJointGeneratedValues { |
| 299 | PxReal Distance; |
| 300 | PxReal MinDistance; |
| 301 | PxReal MaxDistance; |
| 302 | PxReal Tolerance; |
| 303 | PxReal Stiffness; |
| 304 | PxReal Damping; |
| 305 | PxDistanceJointFlags DistanceJointFlags; |
| 306 | const char * ConcreteTypeName; |
| 307 | PxDistanceJointGeneratedValues( const PxDistanceJoint* inSource ); |
| 308 | }; |
| 309 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, Distance, PxDistanceJointGeneratedValues) |
| 310 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, MinDistance, PxDistanceJointGeneratedValues) |
| 311 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, MaxDistance, PxDistanceJointGeneratedValues) |
| 312 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, Tolerance, PxDistanceJointGeneratedValues) |
| 313 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, Stiffness, PxDistanceJointGeneratedValues) |
| 314 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, Damping, PxDistanceJointGeneratedValues) |
| 315 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, DistanceJointFlags, PxDistanceJointGeneratedValues) |
| 316 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxDistanceJoint, ConcreteTypeName, PxDistanceJointGeneratedValues) |
| 317 | struct PxDistanceJointGeneratedInfo |
| 318 | : PxJointGeneratedInfo |
| 319 | { |
| 320 | static const char* getClassName() { return "PxDistanceJoint" ; } |
| 321 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_Distance, PxDistanceJoint, PxReal > Distance; |
| 322 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_MinDistance, PxDistanceJoint, PxReal, PxReal > MinDistance; |
| 323 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_MaxDistance, PxDistanceJoint, PxReal, PxReal > MaxDistance; |
| 324 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_Tolerance, PxDistanceJoint, PxReal, PxReal > Tolerance; |
| 325 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_Stiffness, PxDistanceJoint, PxReal, PxReal > Stiffness; |
| 326 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_Damping, PxDistanceJoint, PxReal, PxReal > Damping; |
| 327 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_DistanceJointFlags, PxDistanceJoint, PxDistanceJointFlags, PxDistanceJointFlags > DistanceJointFlags; |
| 328 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxDistanceJoint_ConcreteTypeName, PxDistanceJoint, const char * > ConcreteTypeName; |
| 329 | |
| 330 | PxDistanceJointGeneratedInfo(); |
| 331 | template<typename TReturnType, typename TOperator> |
| 332 | TReturnType visitType( TOperator inOperator ) const |
| 333 | { |
| 334 | return inOperator( nullptr ); |
| 335 | } |
| 336 | template<typename TOperator> |
| 337 | void visitBases( TOperator inOperator ) |
| 338 | { |
| 339 | PX_UNUSED(inOperator); |
| 340 | inOperator( *static_cast<PxJointGeneratedInfo*>( this ) ); |
| 341 | } |
| 342 | template<typename TOperator> |
| 343 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 344 | { |
| 345 | PX_UNUSED(inOperator); |
| 346 | PX_UNUSED(inStartIndex); |
| 347 | inStartIndex = PxJointGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 348 | inStartIndex = PxJointGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 349 | return inStartIndex; |
| 350 | } |
| 351 | static PxU32 instancePropertyCount() { return 8; } |
| 352 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 353 | + PxJointGeneratedInfo::totalPropertyCount(); } |
| 354 | template<typename TOperator> |
| 355 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 356 | { |
| 357 | PX_UNUSED(inOperator); |
| 358 | PX_UNUSED(inStartIndex); |
| 359 | inOperator( Distance, inStartIndex + 0 );; |
| 360 | inOperator( MinDistance, inStartIndex + 1 );; |
| 361 | inOperator( MaxDistance, inStartIndex + 2 );; |
| 362 | inOperator( Tolerance, inStartIndex + 3 );; |
| 363 | inOperator( Stiffness, inStartIndex + 4 );; |
| 364 | inOperator( Damping, inStartIndex + 5 );; |
| 365 | inOperator( DistanceJointFlags, inStartIndex + 6 );; |
| 366 | inOperator( ConcreteTypeName, inStartIndex + 7 );; |
| 367 | return 8 + inStartIndex; |
| 368 | } |
| 369 | }; |
| 370 | template<> struct PxClassInfoTraits<PxDistanceJoint> |
| 371 | { |
| 372 | PxDistanceJointGeneratedInfo Info; |
| 373 | const PxDistanceJointGeneratedInfo* getInfo() { return &Info; } |
| 374 | }; |
| 375 | |
| 376 | class PxContactJoint; |
| 377 | struct PxContactJointGeneratedValues |
| 378 | : PxJointGeneratedValues { |
| 379 | PxVec3 Contact; |
| 380 | PxVec3 ContactNormal; |
| 381 | PxReal Penetration; |
| 382 | PxReal Resititution; |
| 383 | PxReal BounceThreshold; |
| 384 | const char * ConcreteTypeName; |
| 385 | PxContactJointGeneratedValues( const PxContactJoint* inSource ); |
| 386 | }; |
| 387 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxContactJoint, Contact, PxContactJointGeneratedValues) |
| 388 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxContactJoint, ContactNormal, PxContactJointGeneratedValues) |
| 389 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxContactJoint, Penetration, PxContactJointGeneratedValues) |
| 390 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxContactJoint, Resititution, PxContactJointGeneratedValues) |
| 391 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxContactJoint, BounceThreshold, PxContactJointGeneratedValues) |
| 392 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxContactJoint, ConcreteTypeName, PxContactJointGeneratedValues) |
| 393 | struct PxContactJointGeneratedInfo |
| 394 | : PxJointGeneratedInfo |
| 395 | { |
| 396 | static const char* getClassName() { return "PxContactJoint" ; } |
| 397 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxContactJoint_Contact, PxContactJoint, const PxVec3 &, PxVec3 > Contact; |
| 398 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxContactJoint_ContactNormal, PxContactJoint, const PxVec3 &, PxVec3 > ContactNormal; |
| 399 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxContactJoint_Penetration, PxContactJoint, const PxReal, PxReal > Penetration; |
| 400 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxContactJoint_Resititution, PxContactJoint, const PxReal, PxReal > Resititution; |
| 401 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxContactJoint_BounceThreshold, PxContactJoint, const PxReal, PxReal > BounceThreshold; |
| 402 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxContactJoint_ConcreteTypeName, PxContactJoint, const char * > ConcreteTypeName; |
| 403 | |
| 404 | PxContactJointGeneratedInfo(); |
| 405 | template<typename TReturnType, typename TOperator> |
| 406 | TReturnType visitType( TOperator inOperator ) const |
| 407 | { |
| 408 | return inOperator( nullptr ); |
| 409 | } |
| 410 | template<typename TOperator> |
| 411 | void visitBases( TOperator inOperator ) |
| 412 | { |
| 413 | PX_UNUSED(inOperator); |
| 414 | inOperator( *static_cast<PxJointGeneratedInfo*>( this ) ); |
| 415 | } |
| 416 | template<typename TOperator> |
| 417 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 418 | { |
| 419 | PX_UNUSED(inOperator); |
| 420 | PX_UNUSED(inStartIndex); |
| 421 | inStartIndex = PxJointGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 422 | inStartIndex = PxJointGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 423 | return inStartIndex; |
| 424 | } |
| 425 | static PxU32 instancePropertyCount() { return 6; } |
| 426 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 427 | + PxJointGeneratedInfo::totalPropertyCount(); } |
| 428 | template<typename TOperator> |
| 429 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 430 | { |
| 431 | PX_UNUSED(inOperator); |
| 432 | PX_UNUSED(inStartIndex); |
| 433 | inOperator( Contact, inStartIndex + 0 );; |
| 434 | inOperator( ContactNormal, inStartIndex + 1 );; |
| 435 | inOperator( Penetration, inStartIndex + 2 );; |
| 436 | inOperator( Resititution, inStartIndex + 3 );; |
| 437 | inOperator( BounceThreshold, inStartIndex + 4 );; |
| 438 | inOperator( ConcreteTypeName, inStartIndex + 5 );; |
| 439 | return 6 + inStartIndex; |
| 440 | } |
| 441 | }; |
| 442 | template<> struct PxClassInfoTraits<PxContactJoint> |
| 443 | { |
| 444 | PxContactJointGeneratedInfo Info; |
| 445 | const PxContactJointGeneratedInfo* getInfo() { return &Info; } |
| 446 | }; |
| 447 | |
| 448 | class PxFixedJoint; |
| 449 | struct PxFixedJointGeneratedValues |
| 450 | : PxJointGeneratedValues { |
| 451 | PxReal ProjectionLinearTolerance; |
| 452 | PxReal ProjectionAngularTolerance; |
| 453 | const char * ConcreteTypeName; |
| 454 | PxFixedJointGeneratedValues( const PxFixedJoint* inSource ); |
| 455 | }; |
| 456 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxFixedJoint, ProjectionLinearTolerance, PxFixedJointGeneratedValues) |
| 457 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxFixedJoint, ProjectionAngularTolerance, PxFixedJointGeneratedValues) |
| 458 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxFixedJoint, ConcreteTypeName, PxFixedJointGeneratedValues) |
| 459 | struct PxFixedJointGeneratedInfo |
| 460 | : PxJointGeneratedInfo |
| 461 | { |
| 462 | static const char* getClassName() { return "PxFixedJoint" ; } |
| 463 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxFixedJoint_ProjectionLinearTolerance, PxFixedJoint, PxReal, PxReal > ProjectionLinearTolerance; |
| 464 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxFixedJoint_ProjectionAngularTolerance, PxFixedJoint, PxReal, PxReal > ProjectionAngularTolerance; |
| 465 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxFixedJoint_ConcreteTypeName, PxFixedJoint, const char * > ConcreteTypeName; |
| 466 | |
| 467 | PxFixedJointGeneratedInfo(); |
| 468 | template<typename TReturnType, typename TOperator> |
| 469 | TReturnType visitType( TOperator inOperator ) const |
| 470 | { |
| 471 | return inOperator( nullptr ); |
| 472 | } |
| 473 | template<typename TOperator> |
| 474 | void visitBases( TOperator inOperator ) |
| 475 | { |
| 476 | PX_UNUSED(inOperator); |
| 477 | inOperator( *static_cast<PxJointGeneratedInfo*>( this ) ); |
| 478 | } |
| 479 | template<typename TOperator> |
| 480 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 481 | { |
| 482 | PX_UNUSED(inOperator); |
| 483 | PX_UNUSED(inStartIndex); |
| 484 | inStartIndex = PxJointGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 485 | inStartIndex = PxJointGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 486 | return inStartIndex; |
| 487 | } |
| 488 | static PxU32 instancePropertyCount() { return 3; } |
| 489 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 490 | + PxJointGeneratedInfo::totalPropertyCount(); } |
| 491 | template<typename TOperator> |
| 492 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 493 | { |
| 494 | PX_UNUSED(inOperator); |
| 495 | PX_UNUSED(inStartIndex); |
| 496 | inOperator( ProjectionLinearTolerance, inStartIndex + 0 );; |
| 497 | inOperator( ProjectionAngularTolerance, inStartIndex + 1 );; |
| 498 | inOperator( ConcreteTypeName, inStartIndex + 2 );; |
| 499 | return 3 + inStartIndex; |
| 500 | } |
| 501 | }; |
| 502 | template<> struct PxClassInfoTraits<PxFixedJoint> |
| 503 | { |
| 504 | PxFixedJointGeneratedInfo Info; |
| 505 | const PxFixedJointGeneratedInfo* getInfo() { return &Info; } |
| 506 | }; |
| 507 | |
| 508 | static PxU32ToName g_physx__PxPrismaticJointFlag__EnumConversion[] = { |
| 509 | { .mName: "eLIMIT_ENABLED" , .mValue: static_cast<PxU32>( physx::PxPrismaticJointFlag::eLIMIT_ENABLED ) }, |
| 510 | { NULL, .mValue: 0 } |
| 511 | }; |
| 512 | |
| 513 | template<> struct PxEnumTraits< physx::PxPrismaticJointFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxPrismaticJointFlag__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 514 | class PxPrismaticJoint; |
| 515 | struct PxPrismaticJointGeneratedValues |
| 516 | : PxJointGeneratedValues { |
| 517 | PxReal Position; |
| 518 | PxReal Velocity; |
| 519 | PxJointLinearLimitPair Limit; |
| 520 | PxPrismaticJointFlags PrismaticJointFlags; |
| 521 | PxReal ProjectionLinearTolerance; |
| 522 | PxReal ProjectionAngularTolerance; |
| 523 | const char * ConcreteTypeName; |
| 524 | PxPrismaticJointGeneratedValues( const PxPrismaticJoint* inSource ); |
| 525 | }; |
| 526 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxPrismaticJoint, Position, PxPrismaticJointGeneratedValues) |
| 527 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxPrismaticJoint, Velocity, PxPrismaticJointGeneratedValues) |
| 528 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxPrismaticJoint, Limit, PxPrismaticJointGeneratedValues) |
| 529 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxPrismaticJoint, PrismaticJointFlags, PxPrismaticJointGeneratedValues) |
| 530 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxPrismaticJoint, ProjectionLinearTolerance, PxPrismaticJointGeneratedValues) |
| 531 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxPrismaticJoint, ProjectionAngularTolerance, PxPrismaticJointGeneratedValues) |
| 532 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxPrismaticJoint, ConcreteTypeName, PxPrismaticJointGeneratedValues) |
| 533 | struct PxPrismaticJointGeneratedInfo |
| 534 | : PxJointGeneratedInfo |
| 535 | { |
| 536 | static const char* getClassName() { return "PxPrismaticJoint" ; } |
| 537 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPrismaticJoint_Position, PxPrismaticJoint, PxReal > Position; |
| 538 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPrismaticJoint_Velocity, PxPrismaticJoint, PxReal > Velocity; |
| 539 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPrismaticJoint_Limit, PxPrismaticJoint, const PxJointLinearLimitPair &, PxJointLinearLimitPair > Limit; |
| 540 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPrismaticJoint_PrismaticJointFlags, PxPrismaticJoint, PxPrismaticJointFlags, PxPrismaticJointFlags > PrismaticJointFlags; |
| 541 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPrismaticJoint_ProjectionLinearTolerance, PxPrismaticJoint, PxReal, PxReal > ProjectionLinearTolerance; |
| 542 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPrismaticJoint_ProjectionAngularTolerance, PxPrismaticJoint, PxReal, PxReal > ProjectionAngularTolerance; |
| 543 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPrismaticJoint_ConcreteTypeName, PxPrismaticJoint, const char * > ConcreteTypeName; |
| 544 | |
| 545 | PxPrismaticJointGeneratedInfo(); |
| 546 | template<typename TReturnType, typename TOperator> |
| 547 | TReturnType visitType( TOperator inOperator ) const |
| 548 | { |
| 549 | return inOperator( nullptr ); |
| 550 | } |
| 551 | template<typename TOperator> |
| 552 | void visitBases( TOperator inOperator ) |
| 553 | { |
| 554 | PX_UNUSED(inOperator); |
| 555 | inOperator( *static_cast<PxJointGeneratedInfo*>( this ) ); |
| 556 | } |
| 557 | template<typename TOperator> |
| 558 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 559 | { |
| 560 | PX_UNUSED(inOperator); |
| 561 | PX_UNUSED(inStartIndex); |
| 562 | inStartIndex = PxJointGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 563 | inStartIndex = PxJointGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 564 | return inStartIndex; |
| 565 | } |
| 566 | static PxU32 instancePropertyCount() { return 7; } |
| 567 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 568 | + PxJointGeneratedInfo::totalPropertyCount(); } |
| 569 | template<typename TOperator> |
| 570 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 571 | { |
| 572 | PX_UNUSED(inOperator); |
| 573 | PX_UNUSED(inStartIndex); |
| 574 | inOperator( Position, inStartIndex + 0 );; |
| 575 | inOperator( Velocity, inStartIndex + 1 );; |
| 576 | inOperator( Limit, inStartIndex + 2 );; |
| 577 | inOperator( PrismaticJointFlags, inStartIndex + 3 );; |
| 578 | inOperator( ProjectionLinearTolerance, inStartIndex + 4 );; |
| 579 | inOperator( ProjectionAngularTolerance, inStartIndex + 5 );; |
| 580 | inOperator( ConcreteTypeName, inStartIndex + 6 );; |
| 581 | return 7 + inStartIndex; |
| 582 | } |
| 583 | }; |
| 584 | template<> struct PxClassInfoTraits<PxPrismaticJoint> |
| 585 | { |
| 586 | PxPrismaticJointGeneratedInfo Info; |
| 587 | const PxPrismaticJointGeneratedInfo* getInfo() { return &Info; } |
| 588 | }; |
| 589 | |
| 590 | static PxU32ToName g_physx__PxRevoluteJointFlag__EnumConversion[] = { |
| 591 | { .mName: "eLIMIT_ENABLED" , .mValue: static_cast<PxU32>( physx::PxRevoluteJointFlag::eLIMIT_ENABLED ) }, |
| 592 | { .mName: "eDRIVE_ENABLED" , .mValue: static_cast<PxU32>( physx::PxRevoluteJointFlag::eDRIVE_ENABLED ) }, |
| 593 | { .mName: "eDRIVE_FREESPIN" , .mValue: static_cast<PxU32>( physx::PxRevoluteJointFlag::eDRIVE_FREESPIN ) }, |
| 594 | { NULL, .mValue: 0 } |
| 595 | }; |
| 596 | |
| 597 | template<> struct PxEnumTraits< physx::PxRevoluteJointFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxRevoluteJointFlag__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 598 | class PxRevoluteJoint; |
| 599 | struct PxRevoluteJointGeneratedValues |
| 600 | : PxJointGeneratedValues { |
| 601 | PxReal Angle; |
| 602 | PxReal Velocity; |
| 603 | PxJointAngularLimitPair Limit; |
| 604 | PxReal DriveVelocity; |
| 605 | PxReal DriveForceLimit; |
| 606 | PxReal DriveGearRatio; |
| 607 | PxRevoluteJointFlags RevoluteJointFlags; |
| 608 | PxReal ProjectionLinearTolerance; |
| 609 | PxReal ProjectionAngularTolerance; |
| 610 | const char * ConcreteTypeName; |
| 611 | PxRevoluteJointGeneratedValues( const PxRevoluteJoint* inSource ); |
| 612 | }; |
| 613 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, Angle, PxRevoluteJointGeneratedValues) |
| 614 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, Velocity, PxRevoluteJointGeneratedValues) |
| 615 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, Limit, PxRevoluteJointGeneratedValues) |
| 616 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, DriveVelocity, PxRevoluteJointGeneratedValues) |
| 617 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, DriveForceLimit, PxRevoluteJointGeneratedValues) |
| 618 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, DriveGearRatio, PxRevoluteJointGeneratedValues) |
| 619 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, RevoluteJointFlags, PxRevoluteJointGeneratedValues) |
| 620 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, ProjectionLinearTolerance, PxRevoluteJointGeneratedValues) |
| 621 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, ProjectionAngularTolerance, PxRevoluteJointGeneratedValues) |
| 622 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxRevoluteJoint, ConcreteTypeName, PxRevoluteJointGeneratedValues) |
| 623 | struct PxRevoluteJointGeneratedInfo |
| 624 | : PxJointGeneratedInfo |
| 625 | { |
| 626 | static const char* getClassName() { return "PxRevoluteJoint" ; } |
| 627 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_Angle, PxRevoluteJoint, PxReal > Angle; |
| 628 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_Velocity, PxRevoluteJoint, PxReal > Velocity; |
| 629 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_Limit, PxRevoluteJoint, const PxJointAngularLimitPair &, PxJointAngularLimitPair > Limit; |
| 630 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_DriveVelocity, PxRevoluteJoint, PxReal, PxReal > DriveVelocity; |
| 631 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_DriveForceLimit, PxRevoluteJoint, PxReal, PxReal > DriveForceLimit; |
| 632 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_DriveGearRatio, PxRevoluteJoint, PxReal, PxReal > DriveGearRatio; |
| 633 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_RevoluteJointFlags, PxRevoluteJoint, PxRevoluteJointFlags, PxRevoluteJointFlags > RevoluteJointFlags; |
| 634 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_ProjectionLinearTolerance, PxRevoluteJoint, PxReal, PxReal > ProjectionLinearTolerance; |
| 635 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_ProjectionAngularTolerance, PxRevoluteJoint, PxReal, PxReal > ProjectionAngularTolerance; |
| 636 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRevoluteJoint_ConcreteTypeName, PxRevoluteJoint, const char * > ConcreteTypeName; |
| 637 | |
| 638 | PxRevoluteJointGeneratedInfo(); |
| 639 | template<typename TReturnType, typename TOperator> |
| 640 | TReturnType visitType( TOperator inOperator ) const |
| 641 | { |
| 642 | return inOperator( nullptr ); |
| 643 | } |
| 644 | template<typename TOperator> |
| 645 | void visitBases( TOperator inOperator ) |
| 646 | { |
| 647 | PX_UNUSED(inOperator); |
| 648 | inOperator( *static_cast<PxJointGeneratedInfo*>( this ) ); |
| 649 | } |
| 650 | template<typename TOperator> |
| 651 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 652 | { |
| 653 | PX_UNUSED(inOperator); |
| 654 | PX_UNUSED(inStartIndex); |
| 655 | inStartIndex = PxJointGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 656 | inStartIndex = PxJointGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 657 | return inStartIndex; |
| 658 | } |
| 659 | static PxU32 instancePropertyCount() { return 10; } |
| 660 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 661 | + PxJointGeneratedInfo::totalPropertyCount(); } |
| 662 | template<typename TOperator> |
| 663 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 664 | { |
| 665 | PX_UNUSED(inOperator); |
| 666 | PX_UNUSED(inStartIndex); |
| 667 | inOperator( Angle, inStartIndex + 0 );; |
| 668 | inOperator( Velocity, inStartIndex + 1 );; |
| 669 | inOperator( Limit, inStartIndex + 2 );; |
| 670 | inOperator( DriveVelocity, inStartIndex + 3 );; |
| 671 | inOperator( DriveForceLimit, inStartIndex + 4 );; |
| 672 | inOperator( DriveGearRatio, inStartIndex + 5 );; |
| 673 | inOperator( RevoluteJointFlags, inStartIndex + 6 );; |
| 674 | inOperator( ProjectionLinearTolerance, inStartIndex + 7 );; |
| 675 | inOperator( ProjectionAngularTolerance, inStartIndex + 8 );; |
| 676 | inOperator( ConcreteTypeName, inStartIndex + 9 );; |
| 677 | return 10 + inStartIndex; |
| 678 | } |
| 679 | }; |
| 680 | template<> struct PxClassInfoTraits<PxRevoluteJoint> |
| 681 | { |
| 682 | PxRevoluteJointGeneratedInfo Info; |
| 683 | const PxRevoluteJointGeneratedInfo* getInfo() { return &Info; } |
| 684 | }; |
| 685 | |
| 686 | static PxU32ToName g_physx__PxSphericalJointFlag__EnumConversion[] = { |
| 687 | { .mName: "eLIMIT_ENABLED" , .mValue: static_cast<PxU32>( physx::PxSphericalJointFlag::eLIMIT_ENABLED ) }, |
| 688 | { NULL, .mValue: 0 } |
| 689 | }; |
| 690 | |
| 691 | template<> struct PxEnumTraits< physx::PxSphericalJointFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxSphericalJointFlag__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 692 | class PxSphericalJoint; |
| 693 | struct PxSphericalJointGeneratedValues |
| 694 | : PxJointGeneratedValues { |
| 695 | PxJointLimitCone LimitCone; |
| 696 | PxReal SwingYAngle; |
| 697 | PxReal SwingZAngle; |
| 698 | PxSphericalJointFlags SphericalJointFlags; |
| 699 | PxReal ProjectionLinearTolerance; |
| 700 | const char * ConcreteTypeName; |
| 701 | PxSphericalJointGeneratedValues( const PxSphericalJoint* inSource ); |
| 702 | }; |
| 703 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSphericalJoint, LimitCone, PxSphericalJointGeneratedValues) |
| 704 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSphericalJoint, SwingYAngle, PxSphericalJointGeneratedValues) |
| 705 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSphericalJoint, SwingZAngle, PxSphericalJointGeneratedValues) |
| 706 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSphericalJoint, SphericalJointFlags, PxSphericalJointGeneratedValues) |
| 707 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSphericalJoint, ProjectionLinearTolerance, PxSphericalJointGeneratedValues) |
| 708 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSphericalJoint, ConcreteTypeName, PxSphericalJointGeneratedValues) |
| 709 | struct PxSphericalJointGeneratedInfo |
| 710 | : PxJointGeneratedInfo |
| 711 | { |
| 712 | static const char* getClassName() { return "PxSphericalJoint" ; } |
| 713 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSphericalJoint_LimitCone, PxSphericalJoint, const PxJointLimitCone &, PxJointLimitCone > LimitCone; |
| 714 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSphericalJoint_SwingYAngle, PxSphericalJoint, PxReal > SwingYAngle; |
| 715 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSphericalJoint_SwingZAngle, PxSphericalJoint, PxReal > SwingZAngle; |
| 716 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSphericalJoint_SphericalJointFlags, PxSphericalJoint, PxSphericalJointFlags, PxSphericalJointFlags > SphericalJointFlags; |
| 717 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSphericalJoint_ProjectionLinearTolerance, PxSphericalJoint, PxReal, PxReal > ProjectionLinearTolerance; |
| 718 | PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSphericalJoint_ConcreteTypeName, PxSphericalJoint, const char * > ConcreteTypeName; |
| 719 | |
| 720 | PxSphericalJointGeneratedInfo(); |
| 721 | template<typename TReturnType, typename TOperator> |
| 722 | TReturnType visitType( TOperator inOperator ) const |
| 723 | { |
| 724 | return inOperator( nullptr ); |
| 725 | } |
| 726 | template<typename TOperator> |
| 727 | void visitBases( TOperator inOperator ) |
| 728 | { |
| 729 | PX_UNUSED(inOperator); |
| 730 | inOperator( *static_cast<PxJointGeneratedInfo*>( this ) ); |
| 731 | } |
| 732 | template<typename TOperator> |
| 733 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 734 | { |
| 735 | PX_UNUSED(inOperator); |
| 736 | PX_UNUSED(inStartIndex); |
| 737 | inStartIndex = PxJointGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 738 | inStartIndex = PxJointGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 739 | return inStartIndex; |
| 740 | } |
| 741 | static PxU32 instancePropertyCount() { return 6; } |
| 742 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 743 | + PxJointGeneratedInfo::totalPropertyCount(); } |
| 744 | template<typename TOperator> |
| 745 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 746 | { |
| 747 | PX_UNUSED(inOperator); |
| 748 | PX_UNUSED(inStartIndex); |
| 749 | inOperator( LimitCone, inStartIndex + 0 );; |
| 750 | inOperator( SwingYAngle, inStartIndex + 1 );; |
| 751 | inOperator( SwingZAngle, inStartIndex + 2 );; |
| 752 | inOperator( SphericalJointFlags, inStartIndex + 3 );; |
| 753 | inOperator( ProjectionLinearTolerance, inStartIndex + 4 );; |
| 754 | inOperator( ConcreteTypeName, inStartIndex + 5 );; |
| 755 | return 6 + inStartIndex; |
| 756 | } |
| 757 | }; |
| 758 | template<> struct PxClassInfoTraits<PxSphericalJoint> |
| 759 | { |
| 760 | PxSphericalJointGeneratedInfo Info; |
| 761 | const PxSphericalJointGeneratedInfo* getInfo() { return &Info; } |
| 762 | }; |
| 763 | |
| 764 | class PxJointLimitParameters; |
| 765 | struct PxJointLimitParametersGeneratedValues |
| 766 | { |
| 767 | PxReal Restitution; |
| 768 | PxReal BounceThreshold; |
| 769 | PxReal Stiffness; |
| 770 | PxReal Damping; |
| 771 | PxReal ContactDistance; |
| 772 | PxJointLimitParametersGeneratedValues( const PxJointLimitParameters* inSource ); |
| 773 | }; |
| 774 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitParameters, Restitution, PxJointLimitParametersGeneratedValues) |
| 775 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitParameters, BounceThreshold, PxJointLimitParametersGeneratedValues) |
| 776 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitParameters, Stiffness, PxJointLimitParametersGeneratedValues) |
| 777 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitParameters, Damping, PxJointLimitParametersGeneratedValues) |
| 778 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitParameters, ContactDistance, PxJointLimitParametersGeneratedValues) |
| 779 | struct PxJointLimitParametersGeneratedInfo |
| 780 | |
| 781 | { |
| 782 | static const char* getClassName() { return "PxJointLimitParameters" ; } |
| 783 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitParameters_Restitution, PxJointLimitParameters, PxReal, PxReal > Restitution; |
| 784 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitParameters_BounceThreshold, PxJointLimitParameters, PxReal, PxReal > BounceThreshold; |
| 785 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitParameters_Stiffness, PxJointLimitParameters, PxReal, PxReal > Stiffness; |
| 786 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitParameters_Damping, PxJointLimitParameters, PxReal, PxReal > Damping; |
| 787 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitParameters_ContactDistance, PxJointLimitParameters, PxReal, PxReal > ContactDistance; |
| 788 | |
| 789 | PxJointLimitParametersGeneratedInfo(); |
| 790 | template<typename TReturnType, typename TOperator> |
| 791 | TReturnType visitType( TOperator inOperator ) const |
| 792 | { |
| 793 | return inOperator( nullptr ); |
| 794 | } |
| 795 | template<typename TOperator> |
| 796 | void visitBases( TOperator inOperator ) |
| 797 | { |
| 798 | PX_UNUSED(inOperator); |
| 799 | } |
| 800 | template<typename TOperator> |
| 801 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 802 | { |
| 803 | PX_UNUSED(inOperator); |
| 804 | PX_UNUSED(inStartIndex); |
| 805 | return inStartIndex; |
| 806 | } |
| 807 | static PxU32 instancePropertyCount() { return 5; } |
| 808 | static PxU32 totalPropertyCount() { return instancePropertyCount(); } |
| 809 | template<typename TOperator> |
| 810 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 811 | { |
| 812 | PX_UNUSED(inOperator); |
| 813 | PX_UNUSED(inStartIndex); |
| 814 | inOperator( Restitution, inStartIndex + 0 );; |
| 815 | inOperator( BounceThreshold, inStartIndex + 1 );; |
| 816 | inOperator( Stiffness, inStartIndex + 2 );; |
| 817 | inOperator( Damping, inStartIndex + 3 );; |
| 818 | inOperator( ContactDistance, inStartIndex + 4 );; |
| 819 | return 5 + inStartIndex; |
| 820 | } |
| 821 | }; |
| 822 | template<> struct PxClassInfoTraits<PxJointLimitParameters> |
| 823 | { |
| 824 | PxJointLimitParametersGeneratedInfo Info; |
| 825 | const PxJointLimitParametersGeneratedInfo* getInfo() { return &Info; } |
| 826 | }; |
| 827 | |
| 828 | class PxJointLinearLimit; |
| 829 | struct PxJointLinearLimitGeneratedValues |
| 830 | : PxJointLimitParametersGeneratedValues { |
| 831 | PxReal Value; |
| 832 | PxJointLinearLimitGeneratedValues( const PxJointLinearLimit* inSource ); |
| 833 | }; |
| 834 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLinearLimit, Value, PxJointLinearLimitGeneratedValues) |
| 835 | struct PxJointLinearLimitGeneratedInfo |
| 836 | : PxJointLimitParametersGeneratedInfo |
| 837 | { |
| 838 | static const char* getClassName() { return "PxJointLinearLimit" ; } |
| 839 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLinearLimit_Value, PxJointLinearLimit, PxReal, PxReal > Value; |
| 840 | |
| 841 | PxJointLinearLimitGeneratedInfo(); |
| 842 | template<typename TReturnType, typename TOperator> |
| 843 | TReturnType visitType( TOperator inOperator ) const |
| 844 | { |
| 845 | return inOperator( nullptr ); |
| 846 | } |
| 847 | template<typename TOperator> |
| 848 | void visitBases( TOperator inOperator ) |
| 849 | { |
| 850 | PX_UNUSED(inOperator); |
| 851 | inOperator( *static_cast<PxJointLimitParametersGeneratedInfo*>( this ) ); |
| 852 | } |
| 853 | template<typename TOperator> |
| 854 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 855 | { |
| 856 | PX_UNUSED(inOperator); |
| 857 | PX_UNUSED(inStartIndex); |
| 858 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 859 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 860 | return inStartIndex; |
| 861 | } |
| 862 | static PxU32 instancePropertyCount() { return 1; } |
| 863 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 864 | + PxJointLimitParametersGeneratedInfo::totalPropertyCount(); } |
| 865 | template<typename TOperator> |
| 866 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 867 | { |
| 868 | PX_UNUSED(inOperator); |
| 869 | PX_UNUSED(inStartIndex); |
| 870 | inOperator( Value, inStartIndex + 0 );; |
| 871 | return 1 + inStartIndex; |
| 872 | } |
| 873 | }; |
| 874 | template<> struct PxClassInfoTraits<PxJointLinearLimit> |
| 875 | { |
| 876 | PxJointLinearLimitGeneratedInfo Info; |
| 877 | const PxJointLinearLimitGeneratedInfo* getInfo() { return &Info; } |
| 878 | }; |
| 879 | |
| 880 | class PxJointLinearLimitPair; |
| 881 | struct PxJointLinearLimitPairGeneratedValues |
| 882 | : PxJointLimitParametersGeneratedValues { |
| 883 | PxReal Upper; |
| 884 | PxReal Lower; |
| 885 | PxJointLinearLimitPairGeneratedValues( const PxJointLinearLimitPair* inSource ); |
| 886 | }; |
| 887 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLinearLimitPair, Upper, PxJointLinearLimitPairGeneratedValues) |
| 888 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLinearLimitPair, Lower, PxJointLinearLimitPairGeneratedValues) |
| 889 | struct PxJointLinearLimitPairGeneratedInfo |
| 890 | : PxJointLimitParametersGeneratedInfo |
| 891 | { |
| 892 | static const char* getClassName() { return "PxJointLinearLimitPair" ; } |
| 893 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLinearLimitPair_Upper, PxJointLinearLimitPair, PxReal, PxReal > Upper; |
| 894 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLinearLimitPair_Lower, PxJointLinearLimitPair, PxReal, PxReal > Lower; |
| 895 | |
| 896 | PxJointLinearLimitPairGeneratedInfo(); |
| 897 | template<typename TReturnType, typename TOperator> |
| 898 | TReturnType visitType( TOperator inOperator ) const |
| 899 | { |
| 900 | return inOperator( nullptr ); |
| 901 | } |
| 902 | template<typename TOperator> |
| 903 | void visitBases( TOperator inOperator ) |
| 904 | { |
| 905 | PX_UNUSED(inOperator); |
| 906 | inOperator( *static_cast<PxJointLimitParametersGeneratedInfo*>( this ) ); |
| 907 | } |
| 908 | template<typename TOperator> |
| 909 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 910 | { |
| 911 | PX_UNUSED(inOperator); |
| 912 | PX_UNUSED(inStartIndex); |
| 913 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 914 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 915 | return inStartIndex; |
| 916 | } |
| 917 | static PxU32 instancePropertyCount() { return 2; } |
| 918 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 919 | + PxJointLimitParametersGeneratedInfo::totalPropertyCount(); } |
| 920 | template<typename TOperator> |
| 921 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 922 | { |
| 923 | PX_UNUSED(inOperator); |
| 924 | PX_UNUSED(inStartIndex); |
| 925 | inOperator( Upper, inStartIndex + 0 );; |
| 926 | inOperator( Lower, inStartIndex + 1 );; |
| 927 | return 2 + inStartIndex; |
| 928 | } |
| 929 | }; |
| 930 | template<> struct PxClassInfoTraits<PxJointLinearLimitPair> |
| 931 | { |
| 932 | PxJointLinearLimitPairGeneratedInfo Info; |
| 933 | const PxJointLinearLimitPairGeneratedInfo* getInfo() { return &Info; } |
| 934 | }; |
| 935 | |
| 936 | class PxJointAngularLimitPair; |
| 937 | struct PxJointAngularLimitPairGeneratedValues |
| 938 | : PxJointLimitParametersGeneratedValues { |
| 939 | PxReal Upper; |
| 940 | PxReal Lower; |
| 941 | PxJointAngularLimitPairGeneratedValues( const PxJointAngularLimitPair* inSource ); |
| 942 | }; |
| 943 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointAngularLimitPair, Upper, PxJointAngularLimitPairGeneratedValues) |
| 944 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointAngularLimitPair, Lower, PxJointAngularLimitPairGeneratedValues) |
| 945 | struct PxJointAngularLimitPairGeneratedInfo |
| 946 | : PxJointLimitParametersGeneratedInfo |
| 947 | { |
| 948 | static const char* getClassName() { return "PxJointAngularLimitPair" ; } |
| 949 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointAngularLimitPair_Upper, PxJointAngularLimitPair, PxReal, PxReal > Upper; |
| 950 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointAngularLimitPair_Lower, PxJointAngularLimitPair, PxReal, PxReal > Lower; |
| 951 | |
| 952 | PxJointAngularLimitPairGeneratedInfo(); |
| 953 | template<typename TReturnType, typename TOperator> |
| 954 | TReturnType visitType( TOperator inOperator ) const |
| 955 | { |
| 956 | return inOperator( nullptr ); |
| 957 | } |
| 958 | template<typename TOperator> |
| 959 | void visitBases( TOperator inOperator ) |
| 960 | { |
| 961 | PX_UNUSED(inOperator); |
| 962 | inOperator( *static_cast<PxJointLimitParametersGeneratedInfo*>( this ) ); |
| 963 | } |
| 964 | template<typename TOperator> |
| 965 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 966 | { |
| 967 | PX_UNUSED(inOperator); |
| 968 | PX_UNUSED(inStartIndex); |
| 969 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 970 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 971 | return inStartIndex; |
| 972 | } |
| 973 | static PxU32 instancePropertyCount() { return 2; } |
| 974 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 975 | + PxJointLimitParametersGeneratedInfo::totalPropertyCount(); } |
| 976 | template<typename TOperator> |
| 977 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 978 | { |
| 979 | PX_UNUSED(inOperator); |
| 980 | PX_UNUSED(inStartIndex); |
| 981 | inOperator( Upper, inStartIndex + 0 );; |
| 982 | inOperator( Lower, inStartIndex + 1 );; |
| 983 | return 2 + inStartIndex; |
| 984 | } |
| 985 | }; |
| 986 | template<> struct PxClassInfoTraits<PxJointAngularLimitPair> |
| 987 | { |
| 988 | PxJointAngularLimitPairGeneratedInfo Info; |
| 989 | const PxJointAngularLimitPairGeneratedInfo* getInfo() { return &Info; } |
| 990 | }; |
| 991 | |
| 992 | class PxJointLimitCone; |
| 993 | struct PxJointLimitConeGeneratedValues |
| 994 | : PxJointLimitParametersGeneratedValues { |
| 995 | PxReal YAngle; |
| 996 | PxReal ZAngle; |
| 997 | PxJointLimitConeGeneratedValues( const PxJointLimitCone* inSource ); |
| 998 | }; |
| 999 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitCone, YAngle, PxJointLimitConeGeneratedValues) |
| 1000 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitCone, ZAngle, PxJointLimitConeGeneratedValues) |
| 1001 | struct PxJointLimitConeGeneratedInfo |
| 1002 | : PxJointLimitParametersGeneratedInfo |
| 1003 | { |
| 1004 | static const char* getClassName() { return "PxJointLimitCone" ; } |
| 1005 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitCone_YAngle, PxJointLimitCone, PxReal, PxReal > YAngle; |
| 1006 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitCone_ZAngle, PxJointLimitCone, PxReal, PxReal > ZAngle; |
| 1007 | |
| 1008 | PxJointLimitConeGeneratedInfo(); |
| 1009 | template<typename TReturnType, typename TOperator> |
| 1010 | TReturnType visitType( TOperator inOperator ) const |
| 1011 | { |
| 1012 | return inOperator( nullptr ); |
| 1013 | } |
| 1014 | template<typename TOperator> |
| 1015 | void visitBases( TOperator inOperator ) |
| 1016 | { |
| 1017 | PX_UNUSED(inOperator); |
| 1018 | inOperator( *static_cast<PxJointLimitParametersGeneratedInfo*>( this ) ); |
| 1019 | } |
| 1020 | template<typename TOperator> |
| 1021 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1022 | { |
| 1023 | PX_UNUSED(inOperator); |
| 1024 | PX_UNUSED(inStartIndex); |
| 1025 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 1026 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 1027 | return inStartIndex; |
| 1028 | } |
| 1029 | static PxU32 instancePropertyCount() { return 2; } |
| 1030 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 1031 | + PxJointLimitParametersGeneratedInfo::totalPropertyCount(); } |
| 1032 | template<typename TOperator> |
| 1033 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1034 | { |
| 1035 | PX_UNUSED(inOperator); |
| 1036 | PX_UNUSED(inStartIndex); |
| 1037 | inOperator( YAngle, inStartIndex + 0 );; |
| 1038 | inOperator( ZAngle, inStartIndex + 1 );; |
| 1039 | return 2 + inStartIndex; |
| 1040 | } |
| 1041 | }; |
| 1042 | template<> struct PxClassInfoTraits<PxJointLimitCone> |
| 1043 | { |
| 1044 | PxJointLimitConeGeneratedInfo Info; |
| 1045 | const PxJointLimitConeGeneratedInfo* getInfo() { return &Info; } |
| 1046 | }; |
| 1047 | |
| 1048 | class PxJointLimitPyramid; |
| 1049 | struct PxJointLimitPyramidGeneratedValues |
| 1050 | : PxJointLimitParametersGeneratedValues { |
| 1051 | PxReal YAngleMin; |
| 1052 | PxReal YAngleMax; |
| 1053 | PxReal ZAngleMin; |
| 1054 | PxReal ZAngleMax; |
| 1055 | PxJointLimitPyramidGeneratedValues( const PxJointLimitPyramid* inSource ); |
| 1056 | }; |
| 1057 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitPyramid, YAngleMin, PxJointLimitPyramidGeneratedValues) |
| 1058 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitPyramid, YAngleMax, PxJointLimitPyramidGeneratedValues) |
| 1059 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitPyramid, ZAngleMin, PxJointLimitPyramidGeneratedValues) |
| 1060 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxJointLimitPyramid, ZAngleMax, PxJointLimitPyramidGeneratedValues) |
| 1061 | struct PxJointLimitPyramidGeneratedInfo |
| 1062 | : PxJointLimitParametersGeneratedInfo |
| 1063 | { |
| 1064 | static const char* getClassName() { return "PxJointLimitPyramid" ; } |
| 1065 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitPyramid_YAngleMin, PxJointLimitPyramid, PxReal, PxReal > YAngleMin; |
| 1066 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitPyramid_YAngleMax, PxJointLimitPyramid, PxReal, PxReal > YAngleMax; |
| 1067 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitPyramid_ZAngleMin, PxJointLimitPyramid, PxReal, PxReal > ZAngleMin; |
| 1068 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxJointLimitPyramid_ZAngleMax, PxJointLimitPyramid, PxReal, PxReal > ZAngleMax; |
| 1069 | |
| 1070 | PxJointLimitPyramidGeneratedInfo(); |
| 1071 | template<typename TReturnType, typename TOperator> |
| 1072 | TReturnType visitType( TOperator inOperator ) const |
| 1073 | { |
| 1074 | return inOperator( nullptr ); |
| 1075 | } |
| 1076 | template<typename TOperator> |
| 1077 | void visitBases( TOperator inOperator ) |
| 1078 | { |
| 1079 | PX_UNUSED(inOperator); |
| 1080 | inOperator( *static_cast<PxJointLimitParametersGeneratedInfo*>( this ) ); |
| 1081 | } |
| 1082 | template<typename TOperator> |
| 1083 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1084 | { |
| 1085 | PX_UNUSED(inOperator); |
| 1086 | PX_UNUSED(inStartIndex); |
| 1087 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 1088 | inStartIndex = PxJointLimitParametersGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 1089 | return inStartIndex; |
| 1090 | } |
| 1091 | static PxU32 instancePropertyCount() { return 4; } |
| 1092 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 1093 | + PxJointLimitParametersGeneratedInfo::totalPropertyCount(); } |
| 1094 | template<typename TOperator> |
| 1095 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1096 | { |
| 1097 | PX_UNUSED(inOperator); |
| 1098 | PX_UNUSED(inStartIndex); |
| 1099 | inOperator( YAngleMin, inStartIndex + 0 );; |
| 1100 | inOperator( YAngleMax, inStartIndex + 1 );; |
| 1101 | inOperator( ZAngleMin, inStartIndex + 2 );; |
| 1102 | inOperator( ZAngleMax, inStartIndex + 3 );; |
| 1103 | return 4 + inStartIndex; |
| 1104 | } |
| 1105 | }; |
| 1106 | template<> struct PxClassInfoTraits<PxJointLimitPyramid> |
| 1107 | { |
| 1108 | PxJointLimitPyramidGeneratedInfo Info; |
| 1109 | const PxJointLimitPyramidGeneratedInfo* getInfo() { return &Info; } |
| 1110 | }; |
| 1111 | |
| 1112 | class PxSpring; |
| 1113 | struct PxSpringGeneratedValues |
| 1114 | { |
| 1115 | PxReal Stiffness; |
| 1116 | PxReal Damping; |
| 1117 | PxSpringGeneratedValues( const PxSpring* inSource ); |
| 1118 | }; |
| 1119 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSpring, Stiffness, PxSpringGeneratedValues) |
| 1120 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxSpring, Damping, PxSpringGeneratedValues) |
| 1121 | struct PxSpringGeneratedInfo |
| 1122 | |
| 1123 | { |
| 1124 | static const char* getClassName() { return "PxSpring" ; } |
| 1125 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSpring_Stiffness, PxSpring, PxReal, PxReal > Stiffness; |
| 1126 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSpring_Damping, PxSpring, PxReal, PxReal > Damping; |
| 1127 | |
| 1128 | PxSpringGeneratedInfo(); |
| 1129 | template<typename TReturnType, typename TOperator> |
| 1130 | TReturnType visitType( TOperator inOperator ) const |
| 1131 | { |
| 1132 | return inOperator( nullptr ); |
| 1133 | } |
| 1134 | template<typename TOperator> |
| 1135 | void visitBases( TOperator inOperator ) |
| 1136 | { |
| 1137 | PX_UNUSED(inOperator); |
| 1138 | } |
| 1139 | template<typename TOperator> |
| 1140 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1141 | { |
| 1142 | PX_UNUSED(inOperator); |
| 1143 | PX_UNUSED(inStartIndex); |
| 1144 | return inStartIndex; |
| 1145 | } |
| 1146 | static PxU32 instancePropertyCount() { return 2; } |
| 1147 | static PxU32 totalPropertyCount() { return instancePropertyCount(); } |
| 1148 | template<typename TOperator> |
| 1149 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1150 | { |
| 1151 | PX_UNUSED(inOperator); |
| 1152 | PX_UNUSED(inStartIndex); |
| 1153 | inOperator( Stiffness, inStartIndex + 0 );; |
| 1154 | inOperator( Damping, inStartIndex + 1 );; |
| 1155 | return 2 + inStartIndex; |
| 1156 | } |
| 1157 | }; |
| 1158 | template<> struct PxClassInfoTraits<PxSpring> |
| 1159 | { |
| 1160 | PxSpringGeneratedInfo Info; |
| 1161 | const PxSpringGeneratedInfo* getInfo() { return &Info; } |
| 1162 | }; |
| 1163 | |
| 1164 | static PxU32ToName g_physx__PxD6JointDriveFlag__EnumConversion[] = { |
| 1165 | { .mName: "eACCELERATION" , .mValue: static_cast<PxU32>( physx::PxD6JointDriveFlag::eACCELERATION ) }, |
| 1166 | { NULL, .mValue: 0 } |
| 1167 | }; |
| 1168 | |
| 1169 | template<> struct PxEnumTraits< physx::PxD6JointDriveFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxD6JointDriveFlag__EnumConversion ) {} const PxU32ToName* NameConversion; }; |
| 1170 | class PxD6JointDrive; |
| 1171 | struct PxD6JointDriveGeneratedValues |
| 1172 | : PxSpringGeneratedValues { |
| 1173 | PxReal ForceLimit; |
| 1174 | PxD6JointDriveFlags Flags; |
| 1175 | PxD6JointDriveGeneratedValues( const PxD6JointDrive* inSource ); |
| 1176 | }; |
| 1177 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6JointDrive, ForceLimit, PxD6JointDriveGeneratedValues) |
| 1178 | DEFINE_PROPERTY_TO_VALUE_STRUCT_MAP( PxD6JointDrive, Flags, PxD6JointDriveGeneratedValues) |
| 1179 | struct PxD6JointDriveGeneratedInfo |
| 1180 | : PxSpringGeneratedInfo |
| 1181 | { |
| 1182 | static const char* getClassName() { return "PxD6JointDrive" ; } |
| 1183 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6JointDrive_ForceLimit, PxD6JointDrive, PxReal, PxReal > ForceLimit; |
| 1184 | PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxD6JointDrive_Flags, PxD6JointDrive, PxD6JointDriveFlags, PxD6JointDriveFlags > Flags; |
| 1185 | |
| 1186 | PxD6JointDriveGeneratedInfo(); |
| 1187 | template<typename TReturnType, typename TOperator> |
| 1188 | TReturnType visitType( TOperator inOperator ) const |
| 1189 | { |
| 1190 | return inOperator( nullptr ); |
| 1191 | } |
| 1192 | template<typename TOperator> |
| 1193 | void visitBases( TOperator inOperator ) |
| 1194 | { |
| 1195 | PX_UNUSED(inOperator); |
| 1196 | inOperator( *static_cast<PxSpringGeneratedInfo*>( this ) ); |
| 1197 | } |
| 1198 | template<typename TOperator> |
| 1199 | PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1200 | { |
| 1201 | PX_UNUSED(inOperator); |
| 1202 | PX_UNUSED(inStartIndex); |
| 1203 | inStartIndex = PxSpringGeneratedInfo::visitBaseProperties( inOperator, inStartIndex ); |
| 1204 | inStartIndex = PxSpringGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex ); |
| 1205 | return inStartIndex; |
| 1206 | } |
| 1207 | static PxU32 instancePropertyCount() { return 2; } |
| 1208 | static PxU32 totalPropertyCount() { return instancePropertyCount() |
| 1209 | + PxSpringGeneratedInfo::totalPropertyCount(); } |
| 1210 | template<typename TOperator> |
| 1211 | PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 ) const |
| 1212 | { |
| 1213 | PX_UNUSED(inOperator); |
| 1214 | PX_UNUSED(inStartIndex); |
| 1215 | inOperator( ForceLimit, inStartIndex + 0 );; |
| 1216 | inOperator( Flags, inStartIndex + 1 );; |
| 1217 | return 2 + inStartIndex; |
| 1218 | } |
| 1219 | }; |
| 1220 | template<> struct PxClassInfoTraits<PxD6JointDrive> |
| 1221 | { |
| 1222 | PxD6JointDriveGeneratedInfo Info; |
| 1223 | const PxD6JointDriveGeneratedInfo* getInfo() { return &Info; } |
| 1224 | }; |
| 1225 | |
| 1226 | |
| 1227 | |
| 1228 | #undef THERE_IS_NO_INCLUDE_GUARD_HERE_FOR_A_REASON |
| 1229 | #undef PX_PROPERTY_INFO_NAME |
| 1230 | |