Minor documentation page updates.
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Device / CDC.h
index bbe1c98..b1d7c6d 100644 (file)
 \r
                #include <string.h>\r
 \r
 \r
                #include <string.h>\r
 \r
+       /* Enable C linkage for C++ Compilers: */\r
+               #if defined(__cplusplus)\r
+                       extern "C" {\r
+               #endif\r
+\r
        /* Macros: */\r
                /** CDC Class specific request to get the current virtual serial port configuration settings. */\r
        /* Macros: */\r
                /** CDC Class specific request to get the current virtual serial port configuration settings. */\r
-               #define REQ_GetLineEncoding          0x21\r
+               #define REQ_GetLineEncoding              0x21\r
 \r
                /** CDC Class specific request to set the current virtual serial port configuration settings. */\r
 \r
                /** CDC Class specific request to set the current virtual serial port configuration settings. */\r
-               #define REQ_SetLineEncoding          0x20\r
+               #define REQ_SetLineEncoding              0x20\r
 \r
                /** CDC Class specific request to set the current virtual serial port handshake line states. */\r
 \r
                /** CDC Class specific request to set the current virtual serial port handshake line states. */\r
-               #define REQ_SetControlLineState      0x22\r
+               #define REQ_SetControlLineState          0x22\r
                \r
                /** Notification type constant for a change in the virtual serial port handshake line states, for\r
                 *  use with a USB_Notification_Header_t notification structure when sent to the host via the CDC \r
                 *  notification endpoint.\r
                 */\r
                \r
                /** Notification type constant for a change in the virtual serial port handshake line states, for\r
                 *  use with a USB_Notification_Header_t notification structure when sent to the host via the CDC \r
                 *  notification endpoint.\r
                 */\r
-               #define NOTIF_SerialState            0x20\r
+               #define NOTIF_SerialState                0x20\r
 \r
                /** Mask for the DTR handshake line for use with the REQ_SetControlLineState class specific request\r
                 *  from the host, to indicate that the DTR line state should be high.\r
                 */\r
 \r
                /** Mask for the DTR handshake line for use with the REQ_SetControlLineState class specific request\r
                 *  from the host, to indicate that the DTR line state should be high.\r
                 */\r
-               #define CONTROL_LINE_OUT_DTR         (1 << 0)\r
+               #define CDC_CONTROL_LINE_OUT_DTR         (1 << 0)\r
 \r
                /** Mask for the RTS handshake line for use with the REQ_SetControlLineState class specific request\r
                 *  from the host, to indicate that theRTS line state should be high.\r
                 */\r
 \r
                /** Mask for the RTS handshake line for use with the REQ_SetControlLineState class specific request\r
                 *  from the host, to indicate that theRTS line state should be high.\r
                 */\r
-               #define CONTROL_LINE_OUT_RTS         (1 << 1)\r
+               #define CDC_CONTROL_LINE_OUT_RTS         (1 << 1)\r
                \r
                /** Mask for the DCD handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the DCD line state is currently high.\r
                 */\r
                \r
                /** Mask for the DCD handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the DCD line state is currently high.\r
                 */\r
-               #define CONTROL_LINE_IN_DCD          (1 << 0)\r
+               #define CDC_CONTROL_LINE_IN_DCD          (1 << 0)\r
 \r
                /** Mask for the DSR handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the DSR line state is currently high.\r
                 */\r
 \r
                /** Mask for the DSR handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the DSR line state is currently high.\r
                 */\r
-               #define CONTROL_LINE_IN_DSR          (1 << 1)\r
+               #define CDC_CONTROL_LINE_IN_DSR          (1 << 1)\r
 \r
                /** Mask for the BREAK handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the BREAK line state is currently high.\r
                 */\r
 \r
                /** Mask for the BREAK handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the BREAK line state is currently high.\r
                 */\r
-               #define CONTROL_LINE_IN_BREAK        (1 << 2)\r
+               #define CDC_CONTROL_LINE_IN_BREAK        (1 << 2)\r
 \r
                /** Mask for the RING handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the RING line state is currently high.\r
                 */\r
 \r
                /** Mask for the RING handshake line for use with the a NOTIF_SerialState class specific notification\r
                 *  from the device to the host, to indicate that the RING line state is currently high.\r
                 */\r
-               #define CONTROL_LINE_IN_RING         (1 << 3)\r
+               #define CDC_CONTROL_LINE_IN_RING         (1 << 3)\r
 \r
                /** Mask for use with the a NOTIF_SerialState class specific notification from the device to the host,\r
                 *  to indicate that a framing error has occurred on the virtual serial port.\r
                 */\r
 \r
                /** Mask for use with the a NOTIF_SerialState class specific notification from the device to the host,\r
                 *  to indicate that a framing error has occurred on the virtual serial port.\r
                 */\r
-               #define CONTROL_LINE_IN_FRAMEERROR   (1 << 4)\r
+               #define CDC_CONTROL_LINE_IN_FRAMEERROR   (1 << 4)\r
 \r
                /** Mask for use with the a NOTIF_SerialState class specific notification from the device to the host,\r
                 *  to indicate that a parity error has occurred on the virtual serial port.\r
                 */\r
 \r
                /** Mask for use with the a NOTIF_SerialState class specific notification from the device to the host,\r
                 *  to indicate that a parity error has occurred on the virtual serial port.\r
                 */\r
-               #define CONTROL_LINE_IN_PARITYERROR  (1 << 5)\r
+               #define CDC_CONTROL_LINE_IN_PARITYERROR  (1 << 5)\r
 \r
                /** Mask for use with the a NOTIF_SerialState class specific notification from the device to the host,\r
                 *  to indicate that a data overrun error has occurred on the virtual serial port.\r
                 */\r
 \r
                /** Mask for use with the a NOTIF_SerialState class specific notification from the device to the host,\r
                 *  to indicate that a data overrun error has occurred on the virtual serial port.\r
                 */\r
-               #define CONTROL_LINE_IN_OVERRUNERROR (1 << 6)\r
+               #define CDC_CONTROL_LINE_IN_OVERRUNERROR (1 << 6)\r
                \r
                /** Macro to define a CDC class-specific functional descriptor. CDC functional descriptors have a\r
                 *  uniform structure but variable sized data payloads, thus cannot be represented accurately by\r
                \r
                /** Macro to define a CDC class-specific functional descriptor. CDC functional descriptors have a\r
                 *  uniform structure but variable sized data payloads, thus cannot be represented accurately by\r
                /** Enum for the possible line encoding formats of a virtual serial port. */\r
                enum CDCDevice_CDC_LineCodingFormats_t\r
                {\r
                /** Enum for the possible line encoding formats of a virtual serial port. */\r
                enum CDCDevice_CDC_LineCodingFormats_t\r
                {\r
-                       OneStopBit          = 0, /**< Each frame contains one stop bit */\r
-                       OneAndAHalfStopBits = 1, /**< Each frame contains one and a half stop bits */\r
-                       TwoStopBits         = 2, /**< Each frame contains two stop bits */\r
+                       CDC_LINEENCODING_OneStopBit          = 0, /**< Each frame contains one stop bit */\r
+                       CDC_LINEENCODING_OneAndAHalfStopBits = 1, /**< Each frame contains one and a half stop bits */\r
+                       CDC_LINEENCODING_TwoStopBits         = 2, /**< Each frame contains two stop bits */\r
                };\r
                \r
                /** Enum for the possible line encoding parity settings of a virtual serial port. */\r
                enum CDCDevice_LineCodingParity_t\r
                {\r
                };\r
                \r
                /** Enum for the possible line encoding parity settings of a virtual serial port. */\r
                enum CDCDevice_LineCodingParity_t\r
                {\r
-                       Parity_None         = 0, /**< No parity bit mode on each frame */\r
-                       Parity_Odd          = 1, /**< Odd parity bit mode on each frame */\r
-                       Parity_Even         = 2, /**< Even parity bit mode on each frame */\r
-                       Parity_Mark         = 3, /**< Mark parity bit mode on each frame */\r
-                       Parity_Space        = 4, /**< Space parity bit mode on each frame */\r
+                       CDC_PARITY_None    = 0, /**< No parity bit mode on each frame */\r
+                       CDC_PARITY_Odd     = 1, /**< Odd parity bit mode on each frame */\r
+                       CDC_PARITY_Even    = 2, /**< Even parity bit mode on each frame */\r
+                       CDC_PARITY_Mark    = 3, /**< Mark parity bit mode on each frame */\r
+                       CDC_PARITY_Space   = 4, /**< Space parity bit mode on each frame */\r
                };\r
 \r
        /* Type Defines: */\r
                };\r
 \r
        /* Type Defines: */\r
                        void EVENT_USB_CDC_ControLineStateChanged(void) ATTR_WEAK ATTR_ALIAS(USB_CDC_Event_Stub);; \r
                #endif\r
        \r
                        void EVENT_USB_CDC_ControLineStateChanged(void) ATTR_WEAK ATTR_ALIAS(USB_CDC_Event_Stub);; \r
                #endif\r
        \r
-               void     USB_CDC_USBTask(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                bool     USB_CDC_ConfigureEndpoints(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                void     USB_CDC_ProcessControlPacket(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                void     USB_CDC_USBTask(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                bool     USB_CDC_ConfigureEndpoints(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                void     USB_CDC_ProcessControlPacket(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                void     USB_CDC_USBTask(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                uint16_t USB_CDC_BytesReceived(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                uint8_t  USB_CDC_ReceiveByte(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                void USB_CDC_SendSerialLineStateChanged(USB_ClassInfo_CDC_t* CDCInterfaceInfo, uint16_t LineStateMask);\r
                uint16_t USB_CDC_BytesReceived(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                uint8_t  USB_CDC_ReceiveByte(USB_ClassInfo_CDC_t* CDCInterfaceInfo);\r
                void USB_CDC_SendSerialLineStateChanged(USB_ClassInfo_CDC_t* CDCInterfaceInfo, uint16_t LineStateMask);\r
+\r
+       /* Disable C linkage for C++ Compilers: */\r
+               #if defined(__cplusplus)\r
+                       }\r
+               #endif\r
                \r
 #endif\r
                \r
 #endif\r