M2-PT-DRP/source/Peer.hpp

30 lines
574 B
C++

#pragma once
#include <chrono>
#include <cstdint>
#include <random>
#include "behavior/tasks/types.hpp"
/**
* Contains common information about a certain peer.
*/
class Peer {
public:
explicit Peer();
std::uint32_t id;
bool serverEnabled;
drp::task::TaskType status;
std::uint8_t channel;
std::chrono::high_resolution_clock::duration latencyAverage {};
private:
// random
static std::random_device randomDevice;
static std::mt19937 randomGenerator;
static std::uniform_int_distribution<std::uint32_t> randomDistribution;
};