1 uint8_t TEMPLATE_FUNC_NAME (void* Buffer
,
4 uint8_t* DataStream
= ((uint8_t*)Buffer
+ TEMPLATE_BUFFER_OFFSET(Length
));
11 uint8_t USB_DeviceState_LCL
= USB_DeviceState
;
13 if (USB_DeviceState_LCL
== DEVICE_STATE_Unattached
)
14 return ENDPOINT_RWCSTREAM_DeviceDisconnected
;
15 else if (USB_DeviceState_LCL
== DEVICE_STATE_Suspended
)
16 return ENDPOINT_RWCSTREAM_BusSuspended
;
17 else if (Endpoint_IsSETUPReceived())
18 return ENDPOINT_RWCSTREAM_HostAborted
;
20 if (Endpoint_IsOUTReceived())
22 while (Length
&& Endpoint_BytesInEndpoint())
24 TEMPLATE_TRANSFER_BYTE(DataStream
);
32 while (!(Endpoint_IsINReady()))
34 uint8_t USB_DeviceState_LCL
= USB_DeviceState
;
36 if (USB_DeviceState_LCL
== DEVICE_STATE_Unattached
)
37 return ENDPOINT_RWCSTREAM_DeviceDisconnected
;
38 else if (USB_DeviceState_LCL
== DEVICE_STATE_Suspended
)
39 return ENDPOINT_RWCSTREAM_BusSuspended
;
42 return ENDPOINT_RWCSTREAM_NoError
;
46 #undef TEMPLATE_BUFFER_OFFSET
47 #undef TEMPLATE_FUNC_NAME
48 #undef TEMPLATE_TRANSFER_BYTE