EHS/include/io/socket/CommsSystem.h

42 lines
651 B
C
Raw Normal View History

2023-12-17 03:29:08 -08:00
#pragma once
2023-12-17 15:00:08 -08:00
#include "EHS.h"
#include "Str.h"
#include "Array.h"
#include "Serializer.h"
2023-12-17 03:29:08 -08:00
2023-12-17 15:56:13 -08:00
namespace ehs
2023-12-17 03:29:08 -08:00
{
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);
};
}