Path: blob/master/thirdparty/jolt_physics/Jolt/Physics/Constraints/MotorSettings.cpp
9912 views
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)1// SPDX-FileCopyrightText: 2021 Jorrit Rouwe2// SPDX-License-Identifier: MIT34#include <Jolt/Jolt.h>56#include <Jolt/Physics/Constraints/MotorSettings.h>7#include <Jolt/ObjectStream/TypeDeclarations.h>8#include <Jolt/Core/StreamIn.h>9#include <Jolt/Core/StreamOut.h>1011JPH_NAMESPACE_BEGIN1213JPH_IMPLEMENT_SERIALIZABLE_NON_VIRTUAL(MotorSettings)14{15JPH_ADD_ENUM_ATTRIBUTE_WITH_ALIAS(MotorSettings, mSpringSettings.mMode, "mSpringMode")16JPH_ADD_ATTRIBUTE_WITH_ALIAS(MotorSettings, mSpringSettings.mFrequency, "mFrequency") // Renaming attributes to stay compatible with old versions of the library17JPH_ADD_ATTRIBUTE_WITH_ALIAS(MotorSettings, mSpringSettings.mDamping, "mDamping")18JPH_ADD_ATTRIBUTE(MotorSettings, mMinForceLimit)19JPH_ADD_ATTRIBUTE(MotorSettings, mMaxForceLimit)20JPH_ADD_ATTRIBUTE(MotorSettings, mMinTorqueLimit)21JPH_ADD_ATTRIBUTE(MotorSettings, mMaxTorqueLimit)22}2324void MotorSettings::SaveBinaryState(StreamOut &inStream) const25{26mSpringSettings.SaveBinaryState(inStream);27inStream.Write(mMinForceLimit);28inStream.Write(mMaxForceLimit);29inStream.Write(mMinTorqueLimit);30inStream.Write(mMaxTorqueLimit);31}3233void MotorSettings::RestoreBinaryState(StreamIn &inStream)34{35mSpringSettings.RestoreBinaryState(inStream);36inStream.Read(mMinForceLimit);37inStream.Read(mMaxForceLimit);38inStream.Read(mMinTorqueLimit);39inStream.Read(mMaxTorqueLimit);40}4142JPH_NAMESPACE_END434445