#ifndef COMMUNICATE_H
#define COMMUNICATE_H

#include <Util.h>
#include <cstdint>

struct FrameBuffer {
    FrameBuffer();
    ~FrameBuffer();
    uint8_t unpack{};
    std::string fid;
    std::string tid;
    const char* dataConst;
    char* dataMut;
    int len{};
};

class Communicate
{
public:
    Communicate();

public:
    static FrameBuffer* ParseBuffer(MutBuffer& buffer);
    static bool PackBuffer(FrameBuffer* frame, char** buf, int& len);
};

#endif   // COMMUNICATE_H