#import <Foundation/Foundation.h>
#import <IOKit/usb/USB.h>
#import "BusProberSharedFunctions.h"
#import "OutlineViewNode.h"
#import "BusProbeClass.h"
@interface BusProbeDevice : NSObject {
OutlineViewNode * _rootNode;
UInt8 _speed;
USBDeviceAddress _address;
UInt32 _locationID;
UInt32 _vendorID;
UInt32 _productID;
BusProbeClass * _deviceClassInfo;
BusProbeClass * _lastInterfaceClassInfo;
UInt8 _lastInterfaceSubclass;
int _currentInterfaceNumber;
}
- (OutlineViewNode *)rootNode;
- (void)addProperty:(char *)property withValue:(char *)value atDepth:(int)depth;
- (void)addNumberProperty:(char *)property value:(UInt32)value size:(int)sizeInBytes atDepth:(int)depth usingStyle:(int)style;
- (void)addStringProperty:(char *)property fromStringIndex:(UInt8)strIndex fromDeviceInterface:(IOUSBDeviceInterface **)deviceIntf atDepth:(int)depth;
- (NSString *)deviceName;
- (void)setDeviceName:(NSString *)name;
- (NSString *)deviceDescription;
- (void)setDeviceDescription:(NSString *)description;
- (UInt8)speed;
- (void)setSpeed:(UInt8)speed;
- (USBDeviceAddress)address;
- (void)setAddress:(USBDeviceAddress)address;
- (UInt32)locationID;
- (void)setLocationID:(UInt32)locationID;
- (UInt32)vendorID;
- (void)setVendorID:(UInt32)vendorID;
- (UInt32)productID;
- (void)setProductID:(UInt32)productID;
- (UInt32)locationID;
- (void)setLocationID:(UInt32)locationID;
- (BusProbeClass *)deviceClassInfo;
- (void)setDeviceClassInfo:(BusProbeClass *)classInfo;
- (BusProbeClass *)lastInterfaceClassInfo;
- (void)setLastInterfaceClassInfo:(BusProbeClass *)classInfo;
- (int)currentInterfaceNumber;
- (void)setCurrentInterfaceNumber:(int)currentNum;
- (NSString *)description;
@end