#pragma once

#include <vector>

#include "structure.h"

#include "nlohmann/json.hpp"


using stMcStateLight = struct _stMcStateLight {

    std::vector<LIGHT_CONFIG> McStateLight;
    NLOHMANN_DEFINE_TYPE_INTRUSIVE(_stMcStateLight, McStateLight)
};

class CMachineStateLight
{
public:
    CMachineStateLight();
    ~CMachineStateLight();

    bool Serialize(const std::string& strFile);
    bool Deserialize(const std::string& strFile);

    std::vector<LIGHT_CONFIG>& GetMcStateLight() { return McStateLight; }


private:
    std::vector<LIGHT_CONFIG> McStateLight;
    NLOHMANN_DEFINE_TYPE_INTRUSIVE(CMachineStateLight, McStateLight)
};
