#pragma once

#include <softbus_core/models/DOMMessage.h>

#include <cstdint>
#include <map>
#include <string>

namespace canopen {

class CanopenObjectDictionary {
public:
    bool loadEds(const std::string& path);
    bool loadDcf(const std::string& path);
    bool hasEntry(uint16_t index, uint8_t subIndex) const;

private:
    struct Entry {
        std::string name;
        std::string dataType;
    };
    std::map<uint32_t, Entry> entries_;
};

} // namespace canopen
