Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-10-27 09:39:26

0001 // Created on : Sat May 02 12:41:15 2020
0002 // Created by: Irina KRYLOVA
0003 // Generator:   Express (EXPRESS -> CASCADE/XSTEP Translator) V3.0
0004 // Copyright (c) Open CASCADE 2020
0005 //
0006 // This file is part of Open CASCADE Technology software library.
0007 //
0008 // This library is free software; you can redistribute it and/or modify it under
0009 // the terms of the GNU Lesser General Public License version 2.1 as published
0010 // by the Free Software Foundation, with special exception defined in the file
0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0012 // distribution for complete text of the license and disclaimer of any warranty.
0013 //
0014 // Alternatively, this file may be used under the terms of Open CASCADE
0015 // commercial license or contractual agreement.
0016 
0017 #ifndef _StepKinematics_RackAndPinionPairWithRange_HeaderFile_
0018 #define _StepKinematics_RackAndPinionPairWithRange_HeaderFile_
0019 
0020 #include <Standard.hxx>
0021 #include <StepKinematics_RackAndPinionPair.hxx>
0022 
0023 #include <TCollection_HAsciiString.hxx>
0024 #include <StepRepr_RepresentationItem.hxx>
0025 #include <StepKinematics_KinematicJoint.hxx>
0026 
0027 //! Representation of STEP entity RackAndPinionPairWithRange
0028 class StepKinematics_RackAndPinionPairWithRange : public StepKinematics_RackAndPinionPair
0029 {
0030 public:
0031   //! default constructor
0032   Standard_EXPORT StepKinematics_RackAndPinionPairWithRange();
0033 
0034   //! Initialize all fields (own and inherited)
0035   Standard_EXPORT void Init(
0036     const occ::handle<TCollection_HAsciiString>&      theRepresentationItem_Name,
0037     const occ::handle<TCollection_HAsciiString>&      theItemDefinedTransformation_Name,
0038     const bool                                        hasItemDefinedTransformation_Description,
0039     const occ::handle<TCollection_HAsciiString>&      theItemDefinedTransformation_Description,
0040     const occ::handle<StepRepr_RepresentationItem>&   theItemDefinedTransformation_TransformItem1,
0041     const occ::handle<StepRepr_RepresentationItem>&   theItemDefinedTransformation_TransformItem2,
0042     const occ::handle<StepKinematics_KinematicJoint>& theKinematicPair_Joint,
0043     const double                                      theRackAndPinionPair_PinionRadius,
0044     const bool                                        hasLowerLimitRackDisplacement,
0045     const double                                      theLowerLimitRackDisplacement,
0046     const bool                                        hasUpperLimitRackDisplacement,
0047     const double                                      theUpperLimitRackDisplacement);
0048 
0049   //! Returns field LowerLimitRackDisplacement
0050   Standard_EXPORT double LowerLimitRackDisplacement() const;
0051   //! Sets field LowerLimitRackDisplacement
0052   Standard_EXPORT void SetLowerLimitRackDisplacement(const double theLowerLimitRackDisplacement);
0053   //! Returns True if optional field LowerLimitRackDisplacement is defined
0054   Standard_EXPORT bool HasLowerLimitRackDisplacement() const;
0055 
0056   //! Returns field UpperLimitRackDisplacement
0057   Standard_EXPORT double UpperLimitRackDisplacement() const;
0058   //! Sets field UpperLimitRackDisplacement
0059   Standard_EXPORT void SetUpperLimitRackDisplacement(const double theUpperLimitRackDisplacement);
0060   //! Returns True if optional field UpperLimitRackDisplacement is defined
0061   Standard_EXPORT bool HasUpperLimitRackDisplacement() const;
0062 
0063   DEFINE_STANDARD_RTTIEXT(StepKinematics_RackAndPinionPairWithRange,
0064                           StepKinematics_RackAndPinionPair)
0065 
0066 private:
0067   double myLowerLimitRackDisplacement; //!< optional
0068   double myUpperLimitRackDisplacement; //!< optional
0069   // clang-format off
0070   bool defLowerLimitRackDisplacement; //!< flag "is LowerLimitRackDisplacement defined"
0071   bool defUpperLimitRackDisplacement; //!< flag "is UpperLimitRackDisplacement defined"
0072   // clang-format on
0073 };
0074 #endif // _StepKinematics_RackAndPinionPairWithRange_HeaderFile_