#pragma once #include "ehs/Str.h" #include "ehs/Serializer.h" namespace ehs { class EHC; class NetSys; class NetEnd; class NetOp { private: friend class NetSys; UInt_64 hashId; Str_8 id; public: virtual ~NetOp() = default; NetOp(); NetOp(Str_8 id); NetOp(NetOp &&op) noexcept; NetOp(const NetOp &op); NetOp &operator=(NetOp &&op) noexcept; NetOp &operator=(const NetOp &op); Str_8 GetId() const; UInt_64 GetHashId() const; private: virtual void Process(EHC *ehc, NetEnd *endpoint, NetSys *sys, Serializer &payload); }; }