MeshLib C++ Docs
Loading...
Searching...
No Matches
MRTouchpadWin32Handler.h
Go to the documentation of this file.
1#pragma once
2#ifdef _WIN32
3
6
7#pragma warning( push )
8#pragma warning( disable: 4265 )
9#pragma warning( disable: 4986 )
10#pragma warning( disable: 5204 )
11#pragma warning( disable: 5220 )
12#include <directmanipulation.h>
13#include <wrl.h>
14#pragma warning( pop )
15
16#include <map>
17
18namespace MR
19{
22
23
26class TouchpadWin32Handler : public TouchpadController::Handler
27{
28public:
29 TouchpadWin32Handler( GLFWwindow* window );
30 ~TouchpadWin32Handler() override;
31
32 static void CALLBACK TouchpadEventPoll( PVOID lpParam, BOOLEAN timerOrWaitFired );
33
34private:
35 HWND window_;
36
37 std::shared_ptr<Win32MessageHandler> msgHandler_;
38 boost::signals2::scoped_connection onWinMsg_;
39 void processPointerHitTestEvent_( WPARAM wParam );
40
41 Microsoft::WRL::ComPtr<IDirectManipulationManager> manager_;
42 Microsoft::WRL::ComPtr<IDirectManipulationUpdateManager> updateManager_;
43 Microsoft::WRL::ComPtr<IDirectManipulationViewport> viewport_;
44
45 class DirectManipulationViewportEventHandler;
46 Microsoft::WRL::ComPtr<DirectManipulationViewportEventHandler> eventHandler_;
47 DWORD eventHandlerCookie_;
48
49 friend class DirectManipulationViewportEventHandler;
50 HANDLE timerQueue_{ NULL };
51 HANDLE timer_{ NULL };
52 void startTouchpadEventPolling_();
53 void stopTouchpadEventPolling_();
54};
55
56}
57
58#endif
only for bindings generation
Definition MRCameraOrientationPlugin.h:8