3

我有一个 USB 游戏手柄,我正在尝试为其编写用户空间驱动程序。最初,我编写了与 Linux 一起使用的驱动程序(使用 libusb),在那里一切似乎都运行良好。

基本上,我从设备中获取所有有用的数据(例如 X、Y 坐标和按钮按下)并将其存储在一个数组中,然后打印到屏幕上。现在我可以很容易地用 OS X 做到这一点。

但是,我不知道如何广播该数据,以便其他应用程序可以使用它。我意识到一种解决方法是调用 CGEventCreateKeyboardEvent,我基本上可以将设备的按钮映射到击键。但是,我宁愿不使用模拟击键,因为某些信息(例如 X、Y 坐标)难以表示为击键事件。

我对 IOKit 不熟悉,那么那里(或隐藏在 Apple 文档中的其他地方)是否有可用的功能可以帮助我做到这一点?而且,如果是这样,我是否必须重新编写当前的驱动程序才能使用 IOKit/other-Apple-library 方式?或者是否有一些超级易用的功能可以让我获取数据并将其发送到任何前台应用程序?

4

0 回答 0