OdbDesignLib
OdbDesign ODB++ Parsing Library
 
Loading...
Searching...
No Matches
PropertyRecord.h
1#pragma once
2
3#include <string>
4#include <vector>
5#include <map>
6#include <memory>
7
8#include "../../odbdesign_export.h"
9#include "../../IProtoBuffable.h"
10#include "common.pb.h"
11
12namespace Odb::Lib::FileModel::Design
13{
14 struct ODBDESIGN_EXPORT PropertyRecord : public IProtoBuffable<Odb::Lib::Protobuf::PropertyRecord>
15 {
16 // data members
17 std::string name;
18 std::string value;
19 std::vector<double> floatValues;
20
21 // constants
22 constexpr inline static const char* RECORD_TOKEN = "PRP";
23
24 // typedefs
25 typedef std::map<std::string, std::shared_ptr<PropertyRecord>> StringMap;
26 typedef std::vector<std::shared_ptr<PropertyRecord>> Vector;
27
28 // Inherited via IProtoBuffable
29 std::unique_ptr<Odb::Lib::Protobuf::PropertyRecord> to_protobuf() const override;
30 void from_protobuf(const Odb::Lib::Protobuf::PropertyRecord& message) override;
31 };
32}
33