#ifndef _IOKIT_HID_IOHIDELEMENT_H
#define _IOKIT_HID_IOHIDELEMENT_H
#include <libkern/c++/OSArray.h>
#include <libkern/c++/OSData.h>
#include <IOKit/hid/IOHIDKeys.h>
class IOHIDElement: public OSObject
{
OSDeclareAbstractStructors( IOHIDElement )
struct ExpansionData {
};
ExpansionData * _reserved;
public:
virtual IOHIDElementCookie getCookie() = 0;
virtual IOHIDElement * getParentElement() = 0;
virtual OSArray * getChildElements() = 0;
virtual IOHIDElementType getType() = 0;
virtual IOHIDElementCollectionType getCollectionType() = 0;
virtual UInt32 getUsagePage() = 0;
virtual UInt32 getUsage() = 0;
virtual UInt32 getLogicalMin() = 0;
virtual UInt32 getLogicalMax() = 0;
virtual UInt32 getPhysicalMin() = 0;
virtual UInt32 getPhysicalMax() = 0;
virtual UInt32 getUnitExponent() = 0;
virtual UInt32 getUnit() = 0;
virtual UInt32 getReportSize() = 0;
virtual UInt32 getReportCount() = 0;
virtual UInt32 getReportID() = 0;
virtual UInt32 getFlags() = 0;
virtual AbsoluteTime getTimeStamp() = 0;
virtual UInt32 getValue() = 0;
virtual OSData * getDataValue() = 0;
virtual void setValue(UInt32 value) = 0;
virtual void setDataValue(OSData * value) = 0;
OSMetaClassDeclareReservedUnused(IOHIDElement, 0);
OSMetaClassDeclareReservedUnused(IOHIDElement, 1);
OSMetaClassDeclareReservedUnused(IOHIDElement, 2);
OSMetaClassDeclareReservedUnused(IOHIDElement, 3);
OSMetaClassDeclareReservedUnused(IOHIDElement, 4);
OSMetaClassDeclareReservedUnused(IOHIDElement, 5);
OSMetaClassDeclareReservedUnused(IOHIDElement, 6);
OSMetaClassDeclareReservedUnused(IOHIDElement, 7);
OSMetaClassDeclareReservedUnused(IOHIDElement, 8);
OSMetaClassDeclareReservedUnused(IOHIDElement, 9);
OSMetaClassDeclareReservedUnused(IOHIDElement, 10);
OSMetaClassDeclareReservedUnused(IOHIDElement, 11);
OSMetaClassDeclareReservedUnused(IOHIDElement, 12);
OSMetaClassDeclareReservedUnused(IOHIDElement, 13);
OSMetaClassDeclareReservedUnused(IOHIDElement, 14);
OSMetaClassDeclareReservedUnused(IOHIDElement, 15);
OSMetaClassDeclareReservedUnused(IOHIDElement, 16);
OSMetaClassDeclareReservedUnused(IOHIDElement, 17);
OSMetaClassDeclareReservedUnused(IOHIDElement, 18);
OSMetaClassDeclareReservedUnused(IOHIDElement, 19);
OSMetaClassDeclareReservedUnused(IOHIDElement, 20);
OSMetaClassDeclareReservedUnused(IOHIDElement, 21);
OSMetaClassDeclareReservedUnused(IOHIDElement, 22);
OSMetaClassDeclareReservedUnused(IOHIDElement, 23);
OSMetaClassDeclareReservedUnused(IOHIDElement, 24);
OSMetaClassDeclareReservedUnused(IOHIDElement, 25);
OSMetaClassDeclareReservedUnused(IOHIDElement, 26);
OSMetaClassDeclareReservedUnused(IOHIDElement, 27);
OSMetaClassDeclareReservedUnused(IOHIDElement, 28);
OSMetaClassDeclareReservedUnused(IOHIDElement, 29);
OSMetaClassDeclareReservedUnused(IOHIDElement, 30);
OSMetaClassDeclareReservedUnused(IOHIDElement, 31);
};
#endif