#pragma once #include #include #include namespace es { class SignatureBlock : public fnd::ISerialisable { public: SignatureBlock(); SignatureBlock(const SignatureBlock& other); void operator=(const SignatureBlock& other); bool operator==(const SignatureBlock& other) const; bool operator!=(const SignatureBlock& other) const; // export/import binary void toBytes(); void fromBytes(const byte_t* src, size_t size); const fnd::Vec& getBytes() const; // variables void clear(); es::sign::SignType getSignType() const; void setSignType(es::sign::SignType type); bool isLittleEndian() const; void setLittleEndian(bool isLE); const fnd::Vec& getSignature() const; void setSignature(const fnd::Vec& signature); private: const std::string kModuleName = "SIGNATURE_BLOCK"; // raw binary fnd::Vec mRawBinary; // variables es::sign::SignType mSignType; bool mIsLittleEndian; fnd::Vec mSignature; }; }