Added USE_INTERNAL_SERIAL compile time option to automatically read out the internal...
[pub/lufa.git] / LUFA / Drivers / USB / Class / Host / CDC.h
index 859c41d..4054cf1 100644 (file)
                                uint16_t DataOUTPipeSize;  /**< Size in bytes of the CDC interface's OUT data pipe */\r
                                uint16_t NotificationPipeSize;  /**< Size in bytes of the CDC interface's IN notification endpoint, if used */\r
 \r
-                               uint8_t  ControlLineState; /**< Current control line states */\r
-\r
+                               struct\r
+                               {\r
+                                       uint8_t HostToDevice; /**< Control line states from the host to device, as a set of CDC_CONTROL_LINE_OUT_*\r
+                                                              *   masks.\r
+                                                              */\r
+                                       uint8_t DeviceToHost; /**< Control line states from the device to host, as a set of CDC_CONTROL_LINE_IN_*\r
+                                                              *   masks.\r
+                                                              */\r
+                               } ControlLineStates;\r
+                               \r
                                struct\r
                                {\r
                                        uint32_t BaudRateBPS; /**< Baud rate of the virtual serial port, in bits per second */\r
@@ -80,7 +88,7 @@
                                                                                  *   CDCDevice_LineCodingParity_t enum\r
                                                                                  */\r
                                        uint8_t  DataBits; /**< Bits of data per character of the virtual serial port */\r
-                               } LineEncoding;                 \r
+                               } LineEncoding;\r
                        } USB_ClassInfo_CDC_Host_State_t;\r
 \r
                        /** Class state structure. An instance of this structure should be made within the user application,\r
                                static uint8_t DComp_CDC_Host_NextCDCDataInterface(void* CurrentDescriptor);\r
                                static uint8_t DComp_CDC_Host_NextInterfaceCDCDataEndpoint(void* CurrentDescriptor);\r
                        #endif\r
+\r
+                       void EVENT_CDC_Host_ControLineStateChanged(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo);\r
+                       \r
+                       uint8_t CDC_Host_SetLineEncoding(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo);\r
+                       uint8_t CDC_Host_SendControlLineStateChange(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo);\r
+                       \r
+                       void CDC_Host_SendString(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo, char* Data, uint16_t Length);\r
+                       void CDC_Host_SendByte(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo, uint8_t Data);\r
+                       uint16_t CDC_Host_BytesReceived(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo);\r
+                       uint8_t CDC_Host_ReceiveByte(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo);\r
        \r
        #endif\r
                                \r