I know that this is not what you want to hear, but there is no comprehensive way to do what you want.
Individual models and models have their own way of exposing. For example, I did some work with Synaptic touchpads (fairly common) that invoke the COM interface on Windows. This code will not work on other touch panels.
You can find some common ones and run other code, on the basis of which the systems are supported.
source
share