mrDarker
2025-10-22 e8a27bb203fe2aff70390a5eca002d7438da9b0f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#pragma once
#ifndef COMM_BASE_H
#define COMM_BASE_H
 
#include <string>
#include <vector>
#include <functional>
 
class CommBase {
public:
    virtual void sendSampleData(double sample) = 0;
    virtual void sendWindowData(const std::vector<std::string>& dataFields) = 0;
    virtual void connectServer(const std::string& ip, uint16_t port) = 0;
    virtual void createServer(uint16_t port) = 0;
    virtual void disconnect() = 0;
 
    // Á¬½Ó״̬»Øµ÷
    virtual void onConnectionEstablished() = 0;
    virtual void onConnectionLost() = 0;
    virtual void setConnectionStatusCallback(std::function<void(int, std::string)> callback) = 0;
 
    // ÐÂÔö£ºÔ­Ê¼Êý¾ÝÉÏÅ×£¨ÊÕµ½µÄ¡°×Ö½ÚÁ÷¡±Ö±½Ó»Øµ÷¸øÓ¦Óò㣩
    virtual void setRawDataCallback(std::function<void(const std::vector<uint8_t>&)> callback) = 0;
 
    // ÐÂÔö£º¿ª¹Ø£¨Ä¬ÈÏ true£©
    virtual void setRawDumpEnabled(bool enabled) = 0;
};
 
#endif // COMM_BASE_H