}
- (id)initWithDevice:(IOHIDDeviceRef)dev {
- if ((self = [super init])) {
+ if ((self = [super initWithName:nil did:nil base:nil])) {
self.device = dev;
self.productName = (__bridge NSString *)IOHIDDeviceGetProperty(dev, CFSTR(kIOHIDProductKey));
vendorId = [(__bridge NSNumber *)IOHIDDeviceGetProperty(dev, CFSTR(kIOHIDVendorIDKey)) intValue];
}
- (NJInput *)findInputByCookie:(IOHIDElementCookie)cookie {
- for (NJInput *child in _children)
+ for (NJInput *child in self.children)
if (child.cookie == cookie)
return child;
return nil;
return [self findInputByCookie:cookie];
}
-- (BOOL)isEqual:(id)object {
- return [object isKindOfClass:NJDevice.class]
- && [[object uid] isEqualToString:self.uid];
-}
-
-- (NSUInteger)hash {
- return self.uid.hash;
-}
-
-- (id <NJInputPathElement>)elementForUID:(NSString *)uid {
- if ([uid isEqualToString:self.uid])
- return self;
- else if (![uid hasPrefix:self.uid])
- return nil;
- else {
- for (id <NJInputPathElement> elem in self.children) {
- id <NJInputPathElement> ret = [elem elementForUID:uid];
- if (ret)
- return ret;
- }
- }
- return nil;
-}
-
@end