pointing

0.0.5 • Public • Published

pointing


Libpointing Node.js bindings

Libpointing is an open-source cross-platform library to get raw events from pointing devices and master transfer functions.

Description


Libpointing is an open-source cross-platform library that provides direct access to HID pointing devices and supports the design of pointing transfer functions.

Installation


Note that, pointing with npm can be installed only on Mac OS and Linux.

Example


var pointing = require('pointing');

if (process.argv.length < 5)
	console.log("Usage: node", process.argv[1], "[inputdeviceURI [outputdeviceURI [transferfunctionURI]]]")

global.input = pointing.PointingDevice((process.argv[2]) ? process.argv[2] : "any:")
var output = pointing.DisplayDevice((process.argv[3]) ? process.argv[3] : "any:");
var tFunc = pointing.TransferFunction((process.argv[4]) ? process.argv[4] : "system:", input, output);

input.setPointingCallback(function(timestamp, dx, dy, buttons) {
	var pixels = tFunc.applyi(dx, dy, timestamp);
	console.log(timestamp, dx, dy, buttons, " -> ", pixels.dx, pixels.dy);
});

var manager = pointing.PointingDeviceManager().addDeviceUpdateCallback(
	function(deviceDescriptor, wasAdded)
	{
		console.log(deviceDescriptor, wasAdded);
	}
);
var acc = pointing.SystemPointerAcceleration();
console.log("Current acceleration for mouse:", acc.get());

setTimeout(function() {
	console.log("Finished");
}, 100000);

License


This software may be used and distributed according to the terms of the GNU General Public License version 2 or any later version.

Readme

Keywords

none

Package Sidebar

Install

npm i pointing

Weekly Downloads

1

Version

0.0.5

License

GPL

Last publish

Collaborators

  • izzat