nim_duilib/examples/proto_debuger/uart_process.h

64 lines
1.2 KiB
C
Raw Normal View History

2021-09-20 22:37:32 +08:00
#pragma once
2021-09-22 00:01:02 +08:00
#include <string>
2021-09-20 22:37:32 +08:00
// C runtime header
#include <stdlib.h>
#include <malloc.h>
#include <memory.h>
#include <tchar.h>
2022-01-23 23:47:00 +08:00
#include <fstream>
2021-09-20 22:37:32 +08:00
// base header
#include "base/base.h"
2021-09-22 00:01:02 +08:00
#include "serial_port.h"
2021-09-20 22:37:32 +08:00
// duilib
#include "duilib/UIlib.h"
#include "lua_wraper.h"
2022-01-25 23:45:07 +08:00
#include "global.h"
2021-09-20 22:37:32 +08:00
2022-01-25 23:45:07 +08:00
class UartForm :
public ui::ChildBox,
LuaBindInterface
2021-09-20 22:37:32 +08:00
{
public:
2022-01-27 00:42:33 +08:00
UartForm(ui::Window* window,std::wstring name,
uint32_t baurate, UINT portnum,
2021-09-22 00:01:02 +08:00
uint8_t data_bits,
uint8_t stop_bits,
uint8_t verify,
uint8_t flow_control);
2022-01-27 00:42:33 +08:00
~UartForm();
2022-02-03 00:22:01 +08:00
2022-01-25 23:45:07 +08:00
void ShowDataInEdit(const char*) override;
2021-09-24 00:38:05 +08:00
void OnUpdateUart();
2022-01-25 23:45:07 +08:00
LuaDelegate* LuaVM();
2021-09-20 22:37:32 +08:00
/// <20><>д<EFBFBD><D0B4><EFBFBD><EFBFBD><E0B7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9A9><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void Init() override;
2021-09-23 00:54:09 +08:00
void UpdateRecvEdit();
2022-01-27 00:42:33 +08:00
UINT m_portnum;
2021-09-22 00:01:02 +08:00
std::wstring m_name;
uint32_t m_baurate;
uint8_t m_data_bits;
uint8_t m_stop_bits;
uint8_t m_verify;
uint8_t m_flow_contro;
2021-09-23 00:54:09 +08:00
bool m_runing;
std::thread * m_thread_recv;
wstring m_show_recv;
ui::RichEdit* mEditSend;
ui::RichEdit* mEditRecv;
ui::RichEdit* mEditLua;
2021-09-23 00:54:09 +08:00
HWND m_hwnd;
LuaDelegate* mLua;
std::string mLuaScript;
2022-01-23 23:47:00 +08:00
std::ifstream mLuaFile;
2022-02-03 00:22:01 +08:00
std::ofstream mLuaFileEdit;
2022-01-23 23:47:00 +08:00
2021-09-23 00:54:09 +08:00
private:
virtual void HandleMessage(ui::EventArgs& msg);
2021-09-20 22:37:32 +08:00
};