// Created on : Sat May 02 12:41:15 2020 // Created by: Irina KRYLOVA // Generator: Express (EXPRESS -> CASCADE/XSTEP Translator) V3.0 // Copyright (c) Open CASCADE 2020 // // This file is part of Open CASCADE Technology software library. // // This library is free software; you can redistribute it and/or modify it under // the terms of the GNU Lesser General Public License version 2.1 as published // by the Free Software Foundation, with special exception defined in the file // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT // distribution for complete text of the license and disclaimer of any warranty. // // Alternatively, this file may be used under the terms of Open CASCADE // commercial license or contractual agreement. #ifndef _StepKinematics_RackAndPinionPairWithRange_HeaderFile_ #define _StepKinematics_RackAndPinionPairWithRange_HeaderFile_ #include "Standard.hxx" #include "StepKinematics_RackAndPinionPair.hxx" #include "TCollection_HAsciiString.hxx" #include "StepRepr_RepresentationItem.hxx" #include "StepKinematics_KinematicJoint.hxx" //! Representation of STEP entity RackAndPinionPairWithRange class StepKinematics_RackAndPinionPairWithRange : public StepKinematics_RackAndPinionPair { public: //! default constructor Standard_EXPORT StepKinematics_RackAndPinionPairWithRange(); //! Initialize all fields (own and inherited) Standard_EXPORT void Init( const occ::handle& theRepresentationItem_Name, const occ::handle& theItemDefinedTransformation_Name, const bool hasItemDefinedTransformation_Description, const occ::handle& theItemDefinedTransformation_Description, const occ::handle& theItemDefinedTransformation_TransformItem1, const occ::handle& theItemDefinedTransformation_TransformItem2, const occ::handle& theKinematicPair_Joint, const double theRackAndPinionPair_PinionRadius, const bool hasLowerLimitRackDisplacement, const double theLowerLimitRackDisplacement, const bool hasUpperLimitRackDisplacement, const double theUpperLimitRackDisplacement); //! Returns field LowerLimitRackDisplacement Standard_EXPORT double LowerLimitRackDisplacement() const; //! Sets field LowerLimitRackDisplacement Standard_EXPORT void SetLowerLimitRackDisplacement(const double theLowerLimitRackDisplacement); //! Returns True if optional field LowerLimitRackDisplacement is defined Standard_EXPORT bool HasLowerLimitRackDisplacement() const; //! Returns field UpperLimitRackDisplacement Standard_EXPORT double UpperLimitRackDisplacement() const; //! Sets field UpperLimitRackDisplacement Standard_EXPORT void SetUpperLimitRackDisplacement(const double theUpperLimitRackDisplacement); //! Returns True if optional field UpperLimitRackDisplacement is defined Standard_EXPORT bool HasUpperLimitRackDisplacement() const; DEFINE_STANDARD_RTTIEXT(StepKinematics_RackAndPinionPairWithRange, StepKinematics_RackAndPinionPair) private: double myLowerLimitRackDisplacement; //!< optional double myUpperLimitRackDisplacement; //!< optional // clang-format off bool defLowerLimitRackDisplacement; //!< flag "is LowerLimitRackDisplacement defined" bool defUpperLimitRackDisplacement; //!< flag "is UpperLimitRackDisplacement defined" // clang-format on }; #endif // _StepKinematics_RackAndPinionPairWithRange_HeaderFile_