- TEST_SPEC.md: Updated test directory structure to reflect Core/Asset, Core/IO, and Resources/<Type> subdirectories - TEST_SPEC.md: Updated module names and test counts (852 total) - TEST_SPEC.md: Updated build commands for new Resources subdirectories - README.md: Updated engine structure with Core/Asset/ and Core/IO/ - README.md: Updated Resources section with layered architecture - README.md: Updated test coverage table with accurate counts
35 lines
986 B
C++
35 lines
986 B
C++
#pragma once
|
|
#include "InputTypes.h"
|
|
#include <XCEngine/Core/Containers/String.h>
|
|
|
|
namespace XCEngine {
|
|
namespace Input {
|
|
|
|
class InputAxis {
|
|
public:
|
|
InputAxis() = default;
|
|
InputAxis(const Containers::String& name, KeyCode positive, KeyCode negative = KeyCode::None)
|
|
: m_name(name), m_positiveKey(positive), m_negativeKey(negative) {}
|
|
|
|
const Containers::String& GetName() const { return m_name; }
|
|
KeyCode GetPositiveKey() const { return m_positiveKey; }
|
|
KeyCode GetNegativeKey() const { return m_negativeKey; }
|
|
|
|
void SetKeys(KeyCode positive, KeyCode negative) {
|
|
m_positiveKey = positive;
|
|
m_negativeKey = negative;
|
|
}
|
|
|
|
float GetValue() const { return m_value; }
|
|
void SetValue(float value) { m_value = value; }
|
|
|
|
private:
|
|
Containers::String m_name;
|
|
KeyCode m_positiveKey = KeyCode::None;
|
|
KeyCode m_negativeKey = KeyCode::None;
|
|
float m_value = 0.0f;
|
|
};
|
|
|
|
} // namespace Input
|
|
} // namespace XCEngine
|