Numworks Epsilon  1.4.1
Graphing Calculator Operating System
request_recipient.cpp
Go to the documentation of this file.
1 #include "request_recipient.h"
2 
3 namespace Ion {
4 namespace USB {
5 namespace Device {
6 
7 bool RequestRecipient::processSetupRequest(SetupPacket * request, uint8_t * transferBuffer, uint16_t * transferBufferLength, uint16_t transferBufferMaxLength) {
9  // There is no data stage in this transaction, or the data stage will be in IN direction.
10  if (!processSetupInRequest(request, transferBuffer, transferBufferLength, transferBufferMaxLength)) {
12  return false;
13  }
14  if (*transferBufferLength > 0) {
17  } else {
19  // On seeing a zero length packet, sendSomeData changed endpoint0 state to
20  // LastDataIn, but it should be StatusIn as there was no data stage.
22  }
23  } else {
24  // The following transaction will be an OUT transaction.
26  }
27  return true;
28 }
29 
30 }
31 }
32 }
bool processSetupRequest(SetupPacket *request, uint8_t *transferBuffer, uint16_t *transferBufferLength, uint16_t transferBufferMaxLength)
void clearForOutTransactions(uint16_t wLength)
Definition: endpoint0.cpp:254
unsigned short uint16_t
Definition: stdint.h:5
unsigned char uint8_t
Definition: stdint.h:4
Definition: app.cpp:5
TransactionType followingTransaction() const
virtual bool processSetupInRequest(SetupPacket *request, uint8_t *transferBuffer, uint16_t *transferBufferLength, uint16_t transferBufferMaxLength)=0
Definition: backlight.h:6
void setState(State state)
Definition: endpoint0.h:56