GrpcPrint/PrintC/DataManage/DataHandle.h
2024-04-02 17:45:03 +08:00

45 lines
1.0 KiB
C++

#pragma once
#include <string>
#include "StreamClient.h"
#include "../Machine/Machine.h"
#include "../UI/UIBean.h"
class DataHandle{
typedef void (*DataCallBack)(void* pthis, const ReadData& msg);
public:
static DataHandle* Instance() {
static DataHandle dh;
return &dh;
}
void Init();
static void DataCallBackProc(void* pthis, const ReadData& msg);
//void SetPushMsg(WriteData* msg) {
// if (m_streamClient) {
// m_streamClient->SetPushMsg(msg);
// }
//}
void SetPushMsg(WRITETYPE dataType,const string& nameKey,const string& strValue,DATATYPE valueType) {
if (m_streamClient) {
WriteData* msg = new WriteData();
msg->dataType = dataType;
msg->nameKey = nameKey;
msg->strValue = strValue;
msg->valueType = valueType;
m_streamClient->SetPushMsg(msg);
}
}
private:
DataHandle();
virtual ~DataHandle();
//DataHandle(const DataHandle& d) = delete;
//DataHandle& operator = (const DataHandle& d) = delete;
private:
DataCallBack m_dataCallBack;
StreamClient* m_streamClient;
};