Sorting methods

This commit is contained in:
Rodrigo Alfonso
2023-02-08 21:18:58 -03:00
parent af5a892e40
commit 83b2771be2
3 changed files with 53 additions and 53 deletions

View File

@@ -171,22 +171,6 @@ class LinkCable {
copyState();
}
void _onTimer() {
if (!isEnabled)
return;
if (didTimeout()) {
reset();
copyState();
return;
}
if (isMaster() && isReady() && !isSending())
sendPendingData();
copyState();
}
void _onSerial() {
if (!isEnabled)
return;
@@ -230,6 +214,22 @@ class LinkCable {
copyState();
}
void _onTimer() {
if (!isEnabled)
return;
if (didTimeout()) {
reset();
copyState();
return;
}
if (isMaster() && isReady() && !isSending())
sendPendingData();
copyState();
}
private:
struct Config {
BaudRate baudRate;
@@ -379,14 +379,14 @@ inline void LINK_CABLE_ISR_VBLANK() {
linkCable->_onVBlank();
}
inline void LINK_CABLE_ISR_TIMER() {
linkCable->_onTimer();
}
inline void LINK_CABLE_ISR_SERIAL() {
linkCable->_onSerial();
}
inline void LINK_CABLE_ISR_TIMER() {
linkCable->_onTimer();
}
inline u16 LINK_CABLE_QUEUE_POP(std::queue<u16>& q) {
if (q.empty())
return LINK_CABLE_NO_DATA;

View File

@@ -58,8 +58,8 @@
static volatile char LINK_UNIVERSAL_VERSION[] = "LinkUniversal/v4.3.0";
void LINK_UNIVERSAL_ISR_VBLANK();
void LINK_UNIVERSAL_ISR_TIMER();
void LINK_UNIVERSAL_ISR_SERIAL();
void LINK_UNIVERSAL_ISR_TIMER();
class LinkUniversal {
public:
@@ -211,8 +211,8 @@ class LinkUniversal {
u32 getSubWaitCount() { return subWaitCount; }
void _onVBlank() { linkCable->_onVBlank(); }
void _onTimer() { linkCable->_onTimer(); }
void _onSerial() { linkCable->_onSerial(); }
void _onTimer() { linkCable->_onTimer(); }
~LinkUniversal() {
delete linkCable;
@@ -416,12 +416,12 @@ inline void LINK_UNIVERSAL_ISR_VBLANK() {
linkUniversal->_onVBlank();
}
inline void LINK_UNIVERSAL_ISR_TIMER() {
linkUniversal->_onTimer();
}
inline void LINK_UNIVERSAL_ISR_SERIAL() {
linkUniversal->_onSerial();
}
inline void LINK_UNIVERSAL_ISR_TIMER() {
linkUniversal->_onTimer();
}
#endif // LINK_UNIVERSAL_H

View File

@@ -112,8 +112,8 @@
static volatile char LINK_WIRELESS_VERSION[] = "LinkWireless/v4.3.0";
void LINK_WIRELESS_ISR_VBLANK();
void LINK_WIRELESS_ISR_TIMER();
void LINK_WIRELESS_ISR_SERIAL();
void LINK_WIRELESS_ISR_TIMER();
const u16 LINK_WIRELESS_LOGIN_PARTS[] = {0x494e, 0x494e, 0x544e, 0x544e, 0x4e45,
0x4e45, 0x4f44, 0x4f44, 0x8001};
const u16 LINK_WIRELESS_USER_MAX_SERVER_TRANSFER_LENGTHS[] = {19, 14};
@@ -505,28 +505,6 @@ class LinkWireless {
copyState();
}
void _onTimer() {
if (!isEnabled)
return;
if (state != SERVING && state != CONNECTED) {
copyState();
return;
}
if (_sessionState.recvTimeout >= config.timeout) {
reset();
lastError = TIMEOUT;
copyState();
return;
}
if (!asyncCommand.isActive)
acceptConnectionsOrSendData();
copyState();
}
void _onSerial() {
if (!isEnabled)
return;
@@ -563,6 +541,28 @@ class LinkWireless {
copyState();
}
void _onTimer() {
if (!isEnabled)
return;
if (state != SERVING && state != CONNECTED) {
copyState();
return;
}
if (_sessionState.recvTimeout >= config.timeout) {
reset();
lastError = TIMEOUT;
copyState();
return;
}
if (!asyncCommand.isActive)
acceptConnectionsOrSendData();
copyState();
}
private:
struct Config {
bool forwarding;
@@ -1321,12 +1321,12 @@ inline void LINK_WIRELESS_ISR_VBLANK() {
linkWireless->_onVBlank();
}
inline void LINK_WIRELESS_ISR_TIMER() {
linkWireless->_onTimer();
}
inline void LINK_WIRELESS_ISR_SERIAL() {
linkWireless->_onSerial();
}
inline void LINK_WIRELESS_ISR_TIMER() {
linkWireless->_onTimer();
}
#endif // LINK_WIRELESS_H