2025-07-18 09:08:09 +08:00
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
|
|
#include <memory>
|
|
|
|
|
|
#include <string>
|
|
|
|
|
|
|
2025-08-22 19:06:50 +08:00
|
|
|
|
#include "common/Fields.h"
|
2025-07-18 09:08:09 +08:00
|
|
|
|
|
|
|
|
|
|
class CommEntity
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CommEntity() {}
|
|
|
|
|
|
CommEntity(std::string type) : type(type) {}
|
|
|
|
|
|
|
|
|
|
|
|
void setType(std::string type) { this->type = type; }
|
|
|
|
|
|
|
|
|
|
|
|
// 启动通讯连接
|
|
|
|
|
|
virtual int start() { return 0; };
|
|
|
|
|
|
// 关闭通讯连接
|
|
|
|
|
|
virtual void close() { isCloseRequest_ = true; };
|
|
|
|
|
|
|
|
|
|
|
|
std::string id() { return id_; }
|
|
|
|
|
|
|
|
|
|
|
|
bool isAlive() { return isAlive_; }
|
|
|
|
|
|
bool isConnected() { return isConnected_; }
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
std::string id_;
|
|
|
|
|
|
bool isAlive_ = false;
|
|
|
|
|
|
bool isConnected_ = false;
|
|
|
|
|
|
bool isCloseRequest_ = false;
|
|
|
|
|
|
std::string type;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Communicator
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
2025-08-22 19:06:50 +08:00
|
|
|
|
static std::shared_ptr<CommEntity> createEntity(Fields& data);
|
2025-07-18 09:08:09 +08:00
|
|
|
|
};
|