EHS/include/IO/Socket/CommsSystem.h

42 lines
675 B
C
Raw Normal View History

2023-12-17 03:29:08 -08:00
#pragma once
#include "../../EHS.h"
#include "../../Str.h"
#include "../../Array.h"
#include "../../Serializer.h"
namespace lwe
{
class Endpoint;
class Operation;
class Comms;
class CommsSystem
{
private:
Str_8 id;
UInt_64 hashId;
Array<Operation*> ops;
public:
~CommsSystem();
CommsSystem();
CommsSystem(const Str_8& id);
CommsSystem(const CommsSystem& sys);
CommsSystem& operator=(const CommsSystem& sys);
Str_8 GetId() const;
UInt_64 GetHashId() const;
bool HasOperation(const UInt_64 hashId);
bool AddOperation(Operation* op);
void Execute(Comms* comms, Endpoint* endpoint, const UInt_64 hashId, Serializer<>& payload);
};
}