Rename methods uniquely between mapping/device controllers.
[enjoyable.git] / Classes / NJDeviceController.h
1 //
2 // NJDeviceController.h
3 // Enjoy
4 //
5 // Created by Sam McCall on 4/05/09.
6 // Copyright 2009 University of Otago. All rights reserved.
7 //
8
9 #import "NJHIDManager.h"
10
11 @class NJDevice;
12 @class NJInput;
13 @class NJInputPathElement;
14 @class NJMappingsController;
15
16 @protocol NJDeviceControllerDelegate;
17
18 @interface NJDeviceController : NSObject <NJHIDManagerDelegate> {
19 IBOutlet NJMappingsController *mappingsController;
20 }
21
22 @property (nonatomic, weak) IBOutlet id <NJDeviceControllerDelegate> delegate;
23
24 @property (nonatomic, assign) NSPoint mouseLoc;
25 @property (nonatomic, assign) BOOL simulatingEvents;
26 @property (nonatomic, readonly) NSArray *devices;
27
28 - (NJInputPathElement *)elementForUID:(NSString *)uid;
29
30 @end
31
32 @protocol NJDeviceControllerDelegate
33
34 - (void)deviceController:(NJDeviceController *)dc didAddDevice:(NJDevice *)device;
35 - (void)deviceController:(NJDeviceController *)dc didRemoveDeviceAtIndex:(NSInteger)idx;
36 - (void)deviceController:(NJDeviceController *)dc didInput:(NJInput *)input;
37 - (void)deviceControllerDidStartHID:(NJDeviceController *)dc;
38 - (void)deviceControllerDidStopHID:(NJDeviceController *)dc;
39 - (void)deviceController:(NJDeviceController *)dc didError:(NSError *)error;
40
41 @end