aboutsummaryrefslogtreecommitdiff
path: root/libraries/HID
diff options
context:
space:
mode:
authorCristian Maglie <c.maglie@arduino.cc>2015-09-30 17:13:54 +0200
committerCristian Maglie <c.maglie@arduino.cc>2015-10-02 11:59:23 +0200
commitf8b2d8acb3ff0bd12d40d428659401c851d6e8ba (patch)
tree56c285950d5e3e6f7a7062961df7eaa9a387a04e /libraries/HID
parent27c1832acab4bcc4527340721733d53afde33a65 (diff)
[HID] Removed static fields in HID class
There is still the epType[] array to be handled in some way.
Diffstat (limited to 'libraries/HID')
-rw-r--r--libraries/HID/HID.cpp26
-rw-r--r--libraries/HID/HID.h13
2 files changed, 13 insertions, 26 deletions
diff --git a/libraries/HID/HID.cpp b/libraries/HID/HID.cpp
index d358f45..10cd5a6 100644
--- a/libraries/HID/HID.cpp
+++ b/libraries/HID/HID.cpp
@@ -23,24 +23,6 @@
HID_ HID;
-//================================================================================
-//================================================================================
-// HID Interface
-
-HIDDescriptor HID_::hidInterface;
-
-HIDDescriptorListNode* HID_::rootNode = NULL;
-uint16_t HID_::sizeof_hidReportDescriptor = 0;
-uint8_t HID_::modules_count = 0;
-uint8_t HID_::epType[] = { EP_TYPE_INTERRUPT_IN };
-
-//================================================================================
-//================================================================================
-// Driver
-
-uint8_t HID_::protocol = 1;
-uint8_t HID_::idle = 1;
-
int HID_::getInterface(uint8_t* interfaceNum)
{
interfaceNum[0] += 1; // uses 1
@@ -128,7 +110,13 @@ bool HID_::setup(USBSetup& setup, uint8_t i)
}
}
-HID_::HID_(void) : PUSBListNode(1, 1, epType)
+// XXX: I've found no way to pass literal value directly in
+// the PUSBListNode constructor
+static uint8_t epTypeDef[] = { EP_TYPE_INTERRUPT_IN };
+
+HID_::HID_(void) : PUSBListNode(1, 1, epTypeDef),
+ rootNode(NULL), sizeof_hidReportDescriptor(0),
+ modules_count(0), protocol(1), idle(1)
{
// XXX: Shall this be done in PUSBListNode(...) constructor?
PluggableUSB.plug(this);
diff --git a/libraries/HID/HID.h b/libraries/HID/HID.h
index 1c8e2fc..bff51bb 100644
--- a/libraries/HID/HID.h
+++ b/libraries/HID/HID.h
@@ -87,15 +87,14 @@ protected:
bool setup(USBSetup& setup, uint8_t i);
private:
- static HIDDescriptor hidInterface;
+ HIDDescriptor hidInterface;
- static HIDDescriptorListNode* rootNode;
- static uint16_t sizeof_hidReportDescriptor;
- static uint8_t modules_count;
- static uint8_t epType[];
+ HIDDescriptorListNode* rootNode;
+ uint16_t sizeof_hidReportDescriptor;
+ uint8_t modules_count;
- static uint8_t protocol;
- static uint8_t idle;
+ uint8_t protocol;
+ uint8_t idle;
};
#define D_HIDREPORT(_descriptorLength) \