EHS/include/ehs/io/socket/ehc/NetEnc.h

43 lines
581 B
C++

#pragma once
#include "ehs/Str.h"
namespace ehs
{
class EHC;
class NetEnc
{
private:
friend class EHC;
EHC *owner;
UInt_64 hashId;
Str_8 id;
public:
virtual ~NetEnc() = default;
NetEnc();
NetEnc(Str_8 id);
NetEnc(NetEnc &&enc) noexcept;
NetEnc(const NetEnc &enc);
NetEnc &operator=(NetEnc &&enc) noexcept;
NetEnc &operator=(const NetEnc &enc);
EHC *GetOwner() const;
UInt_64 GetHashId() const;
Str_8 GetId() const;
virtual void Encrypt(Byte *data, UInt_64 size) const;
virtual void Decrypt(Byte *data, UInt_64 size) const;
};
}