mirror of https://github.com/KLayout/klayout.git
Providing meta info (boundary per mask) from MALY reader
This commit is contained in:
parent
30ac61ea20
commit
149b051dce
|
|
@ -33,8 +33,6 @@
|
|||
namespace db
|
||||
{
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
// GDS2ReaderBase
|
||||
|
||||
|
|
|
|||
|
|
@ -133,7 +133,7 @@ public:
|
|||
virtual std::string format_name () const { return "MALY"; }
|
||||
virtual std::string format_desc () const { return "MALY jobdeck"; }
|
||||
virtual std::string format_title () const { return "MALY (MALY jobdeck format)"; }
|
||||
virtual std::string file_format () const { return "MALY jobdeck files (*.maly *.MALY)"; }
|
||||
virtual std::string file_format () const { return "MALY jobdeck files (*.maly *.MALY *.mly *.MLY)"; }
|
||||
|
||||
virtual bool detect (tl::InputStream &s) const
|
||||
{
|
||||
|
|
|
|||
|
|
@ -99,11 +99,26 @@ MALYReader::read (db::Layout &layout, const db::LoadLayoutOptions &options)
|
|||
|
||||
MALYData data = read_maly_file ();
|
||||
import_data (layout, data);
|
||||
create_metadata (layout, data);
|
||||
|
||||
finish_layers (layout);
|
||||
return layer_map_out ();
|
||||
}
|
||||
|
||||
void
|
||||
MALYReader::create_metadata (db::Layout &layout, const MALYData &data)
|
||||
{
|
||||
tl::Variant boundary_per_mask = tl::Variant::empty_array ();
|
||||
|
||||
for (auto m = data.masks.begin (); m != data.masks.end (); ++m) {
|
||||
double ms = m->size_um;
|
||||
db::DBox box (-0.5 * ms, -0.5 * ms, 0.5 * ms, 0.5 * ms);
|
||||
boundary_per_mask.insert (m->name, box);
|
||||
}
|
||||
|
||||
layout.add_meta_info ("boundary_per_mask", MetaInfo (tl::to_string (tr ("Physical mask boundary per mask name")), boundary_per_mask));
|
||||
}
|
||||
|
||||
void
|
||||
MALYReader::import_data (db::Layout &layout, const MALYData &data)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -230,6 +230,7 @@ private:
|
|||
std::list<std::string> m_sections;
|
||||
|
||||
void import_data (db::Layout &layout, const MALYData &data);
|
||||
void create_metadata (db::Layout &layout, const MALYData &data);
|
||||
tl::Extractor read_record ();
|
||||
void unget_record ();
|
||||
std::string read_record_internal ();
|
||||
|
|
|
|||
Loading…
Reference in New Issue