// Copyright 2009 University of Otago. All rights reserved.
//
-#import <Cocoa/Cocoa.h>
@class JSAction;
@interface Joystick : NSObject
-@property (assign) int vendorId;
-@property (assign) int productId;
-@property (assign) int index;
-@property (copy) NSString *productName;
-@property (assign) IOHIDDeviceRef device;
-@property (readonly) NSArray *children;
-@property (readonly) NSString *name;
+@property (nonatomic, assign) int index;
+@property (nonatomic, copy) NSString *productName;
+@property (nonatomic, assign) IOHIDDeviceRef device;
+@property (nonatomic, copy) NSArray *children;
+@property (nonatomic, readonly) NSString *name;
+@property (readonly) NSString *uid;
--(void) populateActions;
--(id) handlerForEvent: (IOHIDValueRef) value;
--(id)initWithDevice: (IOHIDDeviceRef) newDevice;
--(JSAction*) actionForEvent: (IOHIDValueRef) value;
+- (id)initWithDevice:(IOHIDDeviceRef)device;
+- (id)handlerForEvent:(IOHIDValueRef)value;
+- (JSAction *)actionForEvent:(IOHIDValueRef)value;
@end