TapGesture::TapGesture(InputManager& manager, DeviceId device, DeviceVariant variant) : InputGesture(manager, device), firstDownTime_(0) { actionButton_.buttonId = InvalidDeviceButtonId; state_ = manager_.GetAllocator().New<InputState>(manager.GetAllocator(), 1); GAINPUT_ASSERT(state_); previousState_ = manager_.GetAllocator().New<InputState>(manager.GetAllocator(), 1); GAINPUT_ASSERT(previousState_); }
InputDeviceTouch::InputDeviceTouch(InputManager& manager, DeviceId device, unsigned index, DeviceVariant /*variant*/) : InputDevice(manager, device, index == InputDevice::AutoIndex ? manager.GetDeviceCountByType(DT_TOUCH) : 0), impl_(0) { state_ = manager.GetAllocator().New<InputState>(manager.GetAllocator(), TouchPointCount*TouchDataElems); GAINPUT_ASSERT(state_); previousState_ = manager.GetAllocator().New<InputState>(manager.GetAllocator(), TouchPointCount*TouchDataElems); GAINPUT_ASSERT(previousState_); #if defined(GAINPUT_PLATFORM_ANDROID) if (variant != DV_NULL) { impl_ = manager.GetAllocator().New<InputDeviceTouchImplAndroid>(manager, *this, *state_, *previousState_); } #elif defined(GAINPUT_PLATFORM_IOS) if (variant != DV_NULL) { impl_ = manager.GetAllocator().New<InputDeviceTouchImplIos>(manager, *this, *state_, *previousState_); } #endif if (!impl_) { impl_ = manager.GetAllocator().New<InputDeviceTouchImplNull>(manager, *this); } GAINPUT_ASSERT(impl_); }
InputRecorder::InputRecorder(InputManager& manager) : manager_(manager), isRecording_(false), recordingListener_(0), recording_(0), startTime_(0), recordedDevices_(manager.GetAllocator()) { }