Program Listing for File input_listener.h¶
↰ Return to documentation for file (rootex/core/input/input_listener.h
)
#pragma once
#include "common/common.h"
#include "gainput/gainput.h"
#include <functional>
typedef std::function<bool(int userButton, bool oldValue, bool newValue)> InputBoolListenerFunction;
typedef std::function<bool(int userButton, float oldValue, float newValue)> InputFloatListenerFunction;
class InputListener : public gainput::MappedInputListener
{
InputBoolListenerFunction m_BoolListenerFunction;
InputFloatListenerFunction m_FloatListenerFunction;
int m_ID;
public:
InputListener(InputBoolListenerFunction boolListener, InputFloatListenerFunction floatListener);
InputListener(InputListener&) = delete;
~InputListener() = default;
virtual bool OnUserButtonBool(gainput::UserButtonId userButton, bool oldValue, bool newValue) override;
virtual bool OnUserButtonFloat(gainput::UserButtonId userButton, float oldValue, float newValue) override;
int getID() const { return m_ID; }
void setID(int id) { m_ID = id; }
};