Keyboard class - Receive data?

I started a simple project creating a USB keyboard device with an ATmega32u4 board. I'm using the Keyboard class as the foundation. I can send characters to the PC from my device, but I also need to be able to send configuration data from the PC to the ATMega. The Keyboard class does not have any method for receiving data, so I figure I need to write this myself.

Where would I start?
What library would I use?
Would I use HID to receive a report? (The HID class used by Keyboard does not have a receive report method)

Thanks,

The Keyboard class does not have any method for receiving data, so I figure I need to write this myself.

So, take a peak at the keyboard connected to your PC. Exactly, and I mean EXACTLY, what does it mean for the PC to send IT data?

What does it mean for the PC to send data to the Arduino-as-keyboard? Not a damned thing, as far as I can tell.

So, what does it mean to you?

Now, sending data to the Arduino-as-microcontroller is a whole different story. And a completely different process. Which it already knows how to deal with.

PaulS:
What does it mean for the PC to send data to the Arduino-as-keyboard? Not a damned thing, as far as I can tell.

It does at least send the state of the caps, num and sroll lock lights.

Pieter

PieterP:
It does at least send the state of the caps, num and sroll lock lights.

Pieter

And the Arduino-as-keyboard needs to know that? Hmmm. Maybe. I don't think that that was the intent of the Keyboard class.