2017-10-06 20:48:14 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <memory>
|
2020-06-18 13:56:14 +01:00
|
|
|
#include <set>
|
2017-10-06 20:48:14 +01:00
|
|
|
|
|
|
|
class Paddle
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
Paddle();
|
|
|
|
|
|
|
|
virtual ~Paddle();
|
|
|
|
|
|
|
|
virtual bool getButton(int i) const;
|
2020-10-15 16:24:20 +01:00
|
|
|
virtual double getAxis(int i) const;
|
|
|
|
|
|
|
|
int getAxisValue(int i) const;
|
2017-10-06 20:48:14 +01:00
|
|
|
|
2020-06-18 14:06:14 +01:00
|
|
|
static constexpr int ourOpenApple = 0x61;
|
2020-10-11 10:29:37 +01:00
|
|
|
static constexpr int ourSolidApple = 0x62;
|
2020-06-18 14:06:14 +01:00
|
|
|
static constexpr int ourThirdApple = 0x63;
|
2020-06-18 13:56:14 +01:00
|
|
|
|
|
|
|
static void setButtonPressed(int i);
|
|
|
|
static void setButtonReleased(int i);
|
|
|
|
static std::set<int> ourButtons;
|
2020-10-17 19:19:46 +01:00
|
|
|
static void setSquaring(bool value);
|
2020-06-18 13:56:14 +01:00
|
|
|
|
2017-10-06 20:48:14 +01:00
|
|
|
static std::shared_ptr<const Paddle> & instance();
|
2020-10-17 19:19:46 +01:00
|
|
|
|
|
|
|
private:
|
|
|
|
static bool ourSquaring;
|
2017-10-06 20:48:14 +01:00
|
|
|
};
|