Files
whisper-com/include/WHISPER/localClients.hpp
2023-08-11 10:59:48 +02:00

43 lines
892 B
C++

#pragma once
#include <memory>
#include <mutex>
#include <zmq.hpp>
#include <cstdint>
#include <string>
namespace WHISPER {
class localClient
{
public:
localClient(std::uint32_t port,std::string addr,std::string id, std::shared_ptr<zmq::socket_t> clientSocket);
~localClient();
std::uint32_t getPort();
std::string getAddr();
std::string getID();
void addClientSocket(std::shared_ptr<zmq::socket_t> socket);
std::shared_ptr<zmq::socket_t> getClientSocket();
std::time_t getLastResponse();
void setLastResponse(std::time_t time);
private:
mutable std::mutex mx;
const std::uint32_t port_;
const std::string addr_;
const std::string id_;
std::shared_ptr<zmq::socket_t> clientSocket_;
std::time_t lastResponse_;
};
}