C_runtime/blob.hpp
author Edouard Tisserant <edouard@beremiz.fr>
Thu, 09 Jan 2025 09:45:21 +0100 (3 months ago)
changeset 4079 4ce63b8647d7
parent 3940 934bd46a7500
permissions -rw-r--r--
SVGHMI: add static file serving feature.

Added two buttons to add and remove files.
Files are stored in project inside a directory named "static",
itself located in svghmi CTN instance files. Exemple :
exemples/svghmi_csv_json_img_table/svghmi_0@svghmi/static/
Files are transfered as "extra_files", but with a prefix
added to their name to avoid conflics.
#ifndef BLOB_HPP
#define BLOB_HPP

#include <string>
#include <filesystem>

#include "md5.hpp"

class Blob
{
public:
    Blob(uint8_t *seedData, size_t seedLength);
    ~Blob();
    MD5::digest_t digest();
    uint32_t appendChunk(uint8_t *data, size_t length);
    uint32_t asFile(std::filesystem::path &filename);

private:
    MD5 md5;
    std::FILE * m_file;
    std::filesystem::path m_filename;
};

#endif // BLOB_HPP