BsSliderJoint.h 845 B

1234567891011121314151617181920212223242526272829303132
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsCorePrerequisites.h"
  5. #include "BsJoint.h"
  6. namespace BansheeEngine
  7. {
  8. class BS_CORE_EXPORT SliderJoint : public Joint
  9. {
  10. public:
  11. enum class Flag
  12. {
  13. Limit = 0x1,
  14. };
  15. public:
  16. virtual ~SliderJoint() { }
  17. virtual float getPosition() const = 0;
  18. virtual float getSpeed() const = 0;
  19. virtual LimitLinearRange getLimit() const = 0;
  20. virtual void setLimit(const LimitLinearRange& limit) = 0;
  21. virtual void setFlag(Flag flag, bool enabled) = 0;
  22. virtual bool hasFlag(Flag flag) = 0;
  23. static SPtr<SliderJoint> create();
  24. };
  25. }