3 #include "../OdbFile.h"
4 #include "../../odbdesign_export.h"
5 #include "../../enums.h"
7 #include "../../IProtoBuffable.h"
8 #include "../../ProtoBuf/standardfontsfile.pb.h"
10 namespace Odb::Lib::FileModel::Design
18 bool Parse(std::filesystem::path path)
override;
21 std::unique_ptr<Odb::Lib::Protobuf::StandardFontsFile> to_protobuf()
const override;
22 void from_protobuf(
const Odb::Lib::Protobuf::StandardFontsFile& message)
override;
38 std::unique_ptr<Odb::Lib::Protobuf::StandardFontsFile::CharacterBlock::LineRecord> to_protobuf()
const override;
39 void from_protobuf(
const Odb::Lib::Protobuf::StandardFontsFile::CharacterBlock::LineRecord& message)
override;
41 typedef std::vector<std::shared_ptr<LineRecord>> Vector;
43 inline static constexpr
const char* RECORD_TOKEN =
"LINE";
46 inline static constexpr
const char* BEGIN_TOKEN =
"CHAR";
47 inline static constexpr
const char* END_TOKEN =
"ECHAR";
50 LineRecord::Vector m_lineRecords;
52 std::unique_ptr<Odb::Lib::Protobuf::StandardFontsFile::CharacterBlock> to_protobuf()
const override;
53 void from_protobuf(
const Odb::Lib::Protobuf::StandardFontsFile::CharacterBlock& message)
override;
55 typedef std::vector<std::shared_ptr<CharacterBlock>> Vector;
64 CharacterBlock::Vector m_characterBlocks;