forked from cl3m/MiddleClick
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Controller.h
70 lines (53 loc) · 1.5 KB
/
Controller.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
//
// Controller.h
// MiddleClick
//
// Created by Alex Galonsky on 11/9/09.
// Copyright 2009 __MyCompanyName__. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface Controller : NSObject {
@public
int tap1Type;
int tap3Type;
int click1Type;
int click3Type;
}
typedef struct { float x,y; } mtPoint;
typedef struct { mtPoint pos,vel; } mtReadout;
typedef struct {
int frame;
double timestamp;
int identifier, state, foo3, foo4;
mtReadout normalized;
float size;
int zero1;
float angle, majorAxis, minorAxis; // ellipsoid
mtReadout mm;
int zero2[2];
float unk2;
} Finger;
typedef int MTDeviceRef;
typedef int (*MTContactCallbackFunction)(int,Finger*,int,double,int);
MTDeviceRef MTDeviceCreateDefault();
void MTRegisterContactFrameCallback(MTDeviceRef, MTContactCallbackFunction);
void MTDeviceStart(MTDeviceRef);
CFMutableArrayRef MTDeviceCreateList(void); //returns a CFMutableArrayRef array of all multitouch devices
NSDate *touchStartTime;
float middleclickX, middleclickY;
float middleclickX2, middleclickY2;
MTDeviceRef dev;
#define SINGLE_CLICK 10
#define DOUBLE_CLICK 12
#define MIDDLE_CLICK 30
#define NO_CLICK 0
Controller *callbackController;
int callback(int device, Finger *data, int nFingers, double timestamp, int frame);
- (void) start;
- (void)setTap1Type:(int)type;
- (void)setTap3Type:(int)type;
- (void)setClick1Type:(int)type;
- (void)setClick3Type:(int)type;
- (void) sendClickInputType:(int) type;
- (void) executeClickType:(BOOL) clicked withFingers:(int) numFingers;
@end