Commit 89f0ad175e1fff383158ab2303e40e364d14a954
1 parent
be7d2a6253
Exists in
master
and in
2 other branches
전기식일 땐 모드버스 테이블을 작게 인식하도록 수정 (전기식 메인 보드에 최신 프로토콜이 구현되지 않았음)
Showing
1 changed file
with
32 additions
and
3 deletions
Show diff stats
app/gui/oven_control/udphandler.cpp
@@ -2,6 +2,8 @@ | @@ -2,6 +2,8 @@ | ||
2 | 2 | ||
3 | #include <QtDebug> | 3 | #include <QtDebug> |
4 | 4 | ||
5 | +#include "config.h" | ||
6 | + | ||
5 | #define IPC_UDP_SYS_HOST "127.0.0.1" | 7 | #define IPC_UDP_SYS_HOST "127.0.0.1" |
6 | #define IPC_UDP_SYS_PORT 4001 | 8 | #define IPC_UDP_SYS_PORT 4001 |
7 | #define IPC_UDP_GUI_PORT 4000 | 9 | #define IPC_UDP_GUI_PORT 4000 |
@@ -91,10 +93,37 @@ void UdpHandler::processControl(oven_control_t *control) | @@ -91,10 +93,37 @@ void UdpHandler::processControl(oven_control_t *control) | ||
91 | 93 | ||
92 | void UdpHandler::processState(oven_state_t *state) | 94 | void UdpHandler::processState(oven_state_t *state) |
93 | { | 95 | { |
94 | - if (memcmp(&this->state, state, sizeof(this->state))) | 96 | + Define::config_item item = Config::getInstance()->getConfigValue(Define::config_model); |
97 | + | ||
98 | + bool isElectric = false; | ||
99 | + switch (item.d32) | ||
95 | { | 100 | { |
96 | - memcpy(&this->state, state, sizeof(this->state)); | ||
97 | - emit changed(); | 101 | + case Define::model_electric_10: |
102 | + case Define::model_electric_20: | ||
103 | + case Define::model_electric_24: | ||
104 | + case Define::model_electric_40: | ||
105 | + isElectric = true; | ||
106 | + break; | ||
107 | + } | ||
108 | + | ||
109 | + qDebug() << sizeof(this->state); | ||
110 | + | ||
111 | + if (isElectric) | ||
112 | + { | ||
113 | + if (memcmp(&this->state, state, 100)) | ||
114 | + { | ||
115 | + memcpy(&this->state, state, 100); | ||
116 | + bzero(((char *) &this->state) + 100, sizeof(this->state) - 100); | ||
117 | + emit changed(); | ||
118 | + } | ||
119 | + } | ||
120 | + else | ||
121 | + { | ||
122 | + if (memcmp(&this->state, state, sizeof(this->state))) | ||
123 | + { | ||
124 | + memcpy(&this->state, state, sizeof(this->state)); | ||
125 | + emit changed(); | ||
126 | + } | ||
98 | } | 127 | } |
99 | } | 128 | } |
100 | 129 |