mirror of https://github.com/KLayout/klayout.git
Added a convenience method to RBA::Layout for creating a temp layer
This commit is contained in:
parent
49be72e1a2
commit
ede58ae728
|
|
@ -371,6 +371,11 @@ static unsigned int get_layer (db::Layout *l, const db::LayerProperties &lp)
|
|||
}
|
||||
}
|
||||
|
||||
static unsigned int get_layer0 (db::Layout *l)
|
||||
{
|
||||
return get_layer (l, db::LayerProperties ());
|
||||
}
|
||||
|
||||
static unsigned int get_layer1 (db::Layout *l, const std::string &name)
|
||||
{
|
||||
return get_layer (l, db::LayerProperties (name));
|
||||
|
|
@ -1268,6 +1273,15 @@ Class<db::Layout> decl_Layout ("Layout",
|
|||
"You can convert coordinates to micrometers by multiplying the integer value with the database unit.\n"
|
||||
"Typical values for the database unit are 0.001 micrometer (one nanometer).\n"
|
||||
) +
|
||||
gsi::method_ext ("layer", &get_layer0,
|
||||
"@brief Finds or creates a new internal layer\n"
|
||||
"\n"
|
||||
"This method will create a new internal layer and return the layer index for this layer.\n"
|
||||
"The layer does not have any properties attached to it. That means, it is not going to be saved "
|
||||
"to a layout file unless it is given database properties with \\set_info.\n"
|
||||
"\n"
|
||||
"This method has been introduced in version 0.25.\n"
|
||||
) +
|
||||
gsi::method_ext ("layer", &get_layer,
|
||||
"@brief Finds or creates a layer with the given properties\n"
|
||||
"@args info\n"
|
||||
|
|
|
|||
|
|
@ -162,12 +162,17 @@ class DBLayout_TestClass < TestBase
|
|||
b = ly.layer(RBA::LayerInfo.new(3, 0))
|
||||
assert_equal(a, b)
|
||||
assert_equal(ll(ly), "3/0")
|
||||
b = ly.layer(RBA::LayerInfo.new)
|
||||
bb = b
|
||||
b = ly.layer
|
||||
assert_equal(ll(ly), "3/0,")
|
||||
assert_equal(b != bb, true)
|
||||
bb = b
|
||||
b = ly.layer(RBA::LayerInfo.new)
|
||||
assert_equal(ll(ly), "3/0,,")
|
||||
assert_equal(b != bb, true)
|
||||
n = ly.layer(RBA::LayerInfo.new ("hallo"));
|
||||
assert_equal(ll(ly), "3/0,,,hallo")
|
||||
assert_equal(b != n, true)
|
||||
|
||||
ly = RBA::Layout.new
|
||||
li = ly.layer(2, 0)
|
||||
|
|
|
|||
Loading…
Reference in New Issue