1 // ============================================================================= 2 // PROJECT CHRONO - http://projectchrono.org 3 // 4 // Copyright (c) 2014 projectchrono.org 5 // All rights reserved. 6 // 7 // Use of this source code is governed by a BSD-style license that can be found 8 // in the LICENSE file at the top level of the distribution and at 9 // http://projectchrono.org/license-chrono.txt. 10 // 11 // ============================================================================= 12 // Authors: Radu Serban 13 // ============================================================================= 14 // 15 // MTV balancer subsystem (installed on rear chassis) 16 // 17 // ============================================================================= 18 19 #ifndef MTV_BALANCER_H 20 #define MTV_BALANCER_H 21 22 #include "chrono_models/ChApiModels.h" 23 #include "chrono_vehicle/wheeled_vehicle/subchassis/ChBalancer.h" 24 25 namespace chrono { 26 namespace vehicle { 27 namespace fmtv { 28 29 /// @addtogroup vehicle_models_fmtv 30 /// @{ 31 32 /// MTV balancer subsystem (installed on rear chassis). 33 class CH_MODELS_API MTV_Balancer : public ChBalancer { 34 public: 35 MTV_Balancer(const std::string& name); 36 37 virtual const ChVector<> GetLocation(PointId which) override; 38 GetBalancerBeamMass()39 virtual double GetBalancerBeamMass() const override { return m_beam_mass; } GetBalancerBeamInertia()40 virtual const ChVector<>& GetBalancerBeamInertia() const override { return m_beam_inertia; } GetBalancerMaxPitch()41 virtual const double GetBalancerMaxPitch() const override { return m_beam_max_pitch; } GetBalancerBeamDimensions()42 virtual const ChVector<>& GetBalancerBeamDimensions() const override { return m_beam_dimensions; } 43 44 private: 45 static const double m_beam_max_pitch; 46 static const double m_beam_mass; 47 static const ChVector<> m_beam_inertia; 48 static const ChVector<> m_beam_dimensions; 49 }; 50 51 /// @} vehicle_models_fmtv 52 53 } // namespace fmtv 54 } // end namespace vehicle 55 } // end namespace chrono 56 57 #endif