diff options
| author | Dean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28> | 2009-11-10 06:22:03 +0000 |
|---|---|---|
| committer | Dean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28> | 2009-11-10 06:22:03 +0000 |
| commit | 42cb45404b9deeebab4abb3bf1f00232de0fdaa1 (patch) | |
| tree | 339e55e1aea49b719bfe8f31f4a9892791375a0d /LUFA/Drivers/USB/Class/Device/CDC.h | |
| parent | 5c71ef995af2bef43cfe5d24c9d03bd6e55deb0a (diff) | |
Added new stream creation function to the CDC Class drivers, to easily make standard streams from CDC Class driver instances.
git-svn-id: http://lufa-lib.googlecode.com/svn/trunk@890 d5102386-fcda-11dd-9fdb-3debd5008f28
Diffstat (limited to 'LUFA/Drivers/USB/Class/Device/CDC.h')
| -rw-r--r-- | LUFA/Drivers/USB/Class/Device/CDC.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/LUFA/Drivers/USB/Class/Device/CDC.h b/LUFA/Drivers/USB/Class/Device/CDC.h index 1691857c..857d0733 100644 --- a/LUFA/Drivers/USB/Class/Device/CDC.h +++ b/LUFA/Drivers/USB/Class/Device/CDC.h @@ -48,6 +48,7 @@ #include "../../USB.h"
#include "../Common/CDC.h"
+ #include <stdio.h>
#include <string.h>
/* Enable C linkage for C++ Compilers: */
@@ -209,10 +210,24 @@ */
void CDC_Device_SendControlLineStateChange(USB_ClassInfo_CDC_Device_t* const CDCInterfaceInfo) ATTR_NON_NULL_PTR_ARG(1);
+ /** Creates a standard characer stream for the given CDC Device instance so that it can be used with all the regular
+ * functions in the avr-libc <stdio.h> library that accept a FILE stream as a destination (e.g. fprintf).
+ *
+ * \note The created stream can be given as stdout if desired to direct the standard output from all <stdio.h> functions
+ * to the given CDC interface.
+ *
+ * \param[in,out] CDCInterfaceInfo Pointer to a structure containing a CDC Class configuration and state
+ * \param[in,out] Stream Pointer to a FILE structure where the created stream should be placed
+ */
+ void CDC_Device_CreateStream(USB_ClassInfo_CDC_Device_t* CDCInterfaceInfo, FILE* Stream);
+
/* Private Interface - For use in library only: */
#if !defined(__DOXYGEN__)
/* Function Prototypes: */
#if defined(INCLUDE_FROM_CDC_CLASS_DEVICE_C)
+ static int CDC_Device_putchar(char c, FILE* Stream);
+ static int CDC_Device_getchar(FILE* Stream);
+
void CDC_Device_Event_Stub(void);
void EVENT_CDC_Device_LineEncodingChanged(USB_ClassInfo_CDC_Device_t* const CDCInterfaceInfo)
ATTR_WEAK ATTR_NON_NULL_PTR_ARG(1) ATTR_ALIAS(CDC_Device_Event_Stub);
|
