/**
 * \page BoxAlgorithm_KeyboardStimulator Keyboard stimulator
__________________________________________________________________

Detailed description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Description|
 * This plugin grabs key presses and translates them into OpenViBE stimulations
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Description|
__________________________________________________________________

Outputs description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Outputs|
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Outputs|
 *
 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Output1|
 * A stream of stimulations generated by key presses
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Output1|
__________________________________________________________________

Settings description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Settings|
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Settings|
 *
 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Setting1|
 * The name of the file containing the associations between keys and stimulations
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Setting1|
 *
 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Setting2|
 * TCP Tagging host address to send stimuli to (empty string: do not connect)
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Setting2|
 *
 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Setting3|
 * TCP Tagging host port
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Setting3|
__________________________________________________________________

Examples description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Examples|
 *
 * Here is one example of configuration file :
 *
 * \code
 * Left      0x00000301
 * Right     0x00000302
 * Up        0x0000030C
 * Down      0x00000306
 * a         0x00000300
 * r         0x00000312
 * t         0x00000311
 * y         0x0000030D
 * BackSpace 0x00000004
 * Return    0x00000320
 * \endcode
 *
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Examples|
__________________________________________________________________

Miscellaneous description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_KeyboardStimulator_Miscellaneous|
 *
 * The configuration file should contain a list where each element is formatted like this :
 *
 * \code
 * Name_of_the_key Stimulation_numeric_identifier
 * \endcode
 *
 * For a complete listing of the key names, please consult GDK's "gdk/gdkkeysyms.h" header file.
 * The names are the same but without the leading "GDK_"
 *
 * If TCP Tagging hostname is specified, the stimulator will send the stimuli
 * to Acquisition Server in that address for accurate alignment of the stimuli 
 * to the EEG signal. If the keypresses are not wanted to be inserted into the signal, 
 * set host address to an empty string. To send to an Acquisition Server running on the same computer, 
 * use 'localhost' as the address. 
 *
 * |OVP_DocEnd_BoxAlgorithm_KeyboardStimulator_Miscellaneous|
*/
