Files
kaizen/lib/source/gainput/GainputInputState.cpp
Simone 4e42229bdd Squashed 'external/gainput/' content from commit 2be0a50
git-subtree-dir: external/gainput
git-subtree-split: 2be0a50089eafcc6fccb66142180082e48f27f4c
2024-01-22 08:51:55 +01:00

33 lines
592 B
C++

#include <gainput/gainput.h>
namespace gainput
{
InputState::InputState(Allocator& allocator, unsigned int buttonCount) :
allocator_(allocator),
buttonCount_(buttonCount)
{
const size_t size = sizeof(Button) * buttonCount_;
buttons_ = static_cast<Button*>(allocator_.Allocate(size));
GAINPUT_ASSERT(buttons_);
memset(buttons_, 0, size);
}
InputState::~InputState()
{
allocator_.Deallocate(buttons_);
}
InputState&
InputState::operator=(const InputState& other)
{
const size_t size = sizeof(Button) * buttonCount_;
memcpy(buttons_, other.buttons_, size);
return *this;
}
}