mirror of https://github.com/KLayout/klayout.git
Fixed DRC update
This commit is contained in:
parent
c63e41e732
commit
29f82854fb
|
|
@ -2558,6 +2558,12 @@ template class DB_PUBLIC local_processor_cell_context<db::Polygon, db::Polygon,
|
|||
template class DB_PUBLIC local_processor_cell_context<db::Edge, db::Edge, db::Edge>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::Edge, db::Polygon, db::Edge>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::Edge, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::EdgePair, db::Polygon, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::EdgePair, db::PolygonRef, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::EdgePair, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::EdgePair, db::Polygon, db::Polygon>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::EdgePair, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_processor_cell_context<db::EdgePair, db::Edge, db::Edge>;
|
||||
|
||||
// explicit instantiations
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::Polygon, db::Polygon, db::Polygon>;
|
||||
|
|
@ -2581,6 +2587,12 @@ template class DB_PUBLIC local_processor_cell_contexts<db::Edge, db::PolygonRef,
|
|||
template class DB_PUBLIC local_processor_cell_contexts<db::Edge, db::Polygon, db::Edge>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::Edge, db::Edge, db::Edge>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::Edge, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::EdgePair, db::Polygon, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::EdgePair, db::PolygonRef, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::EdgePair, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::EdgePair, db::Polygon, db::Polygon>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::EdgePair, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_processor_cell_contexts<db::EdgePair, db::Edge, db::Edge>;
|
||||
|
||||
// explicit instantiations
|
||||
template class DB_PUBLIC shape_interactions<db::Polygon, db::Polygon>;
|
||||
|
|
@ -2598,6 +2610,9 @@ template class DB_PUBLIC shape_interactions<db::Edge, db::PolygonRef>;
|
|||
template class DB_PUBLIC shape_interactions<db::Edge, db::Polygon>;
|
||||
template class DB_PUBLIC shape_interactions<db::TextRef, db::TextRef>;
|
||||
template class DB_PUBLIC shape_interactions<db::TextRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC shape_interactions<db::EdgePair, db::Polygon>;
|
||||
template class DB_PUBLIC shape_interactions<db::EdgePair, db::PolygonRef>;
|
||||
template class DB_PUBLIC shape_interactions<db::EdgePair, db::Edge>;
|
||||
|
||||
// explicit instantiations
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::Polygon, db::Polygon, db::Polygon>;
|
||||
|
|
@ -2629,6 +2644,12 @@ template class DB_PUBLIC local_processor_context_computation_task<db::Edge, db::
|
|||
template class DB_PUBLIC local_processor_context_computation_task<db::Edge, db::Polygon, db::Edge>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::Edge, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::Edge, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::EdgePair, db::Polygon, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::EdgePair, db::PolygonRef, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::EdgePair, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::EdgePair, db::Polygon, db::Polygon>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::EdgePair, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_processor_context_computation_task<db::EdgePair, db::Edge, db::Edge>;
|
||||
|
||||
// explicit instantiations
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::Polygon, db::Polygon, db::Polygon>;
|
||||
|
|
@ -2652,6 +2673,12 @@ template class DB_PUBLIC local_processor_result_computation_task<db::Edge, db::E
|
|||
template class DB_PUBLIC local_processor_result_computation_task<db::Edge, db::PolygonRef, db::Edge>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::Edge, db::Polygon, db::Edge>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::Edge, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::EdgePair, db::Polygon, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::EdgePair, db::PolygonRef, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::EdgePair, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::EdgePair, db::Polygon, db::Polygon>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::EdgePair, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_processor_result_computation_task<db::EdgePair, db::Edge, db::Edge>;
|
||||
|
||||
// explicit instantiations
|
||||
template class DB_PUBLIC local_processor<db::Polygon, db::Polygon, db::Polygon>;
|
||||
|
|
@ -2683,6 +2710,12 @@ template class DB_PUBLIC local_processor<db::Edge, db::PolygonRef, db::PolygonRe
|
|||
template class DB_PUBLIC local_processor<db::Edge, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor<db::TextRef, db::PolygonRef, db::TextRef>;
|
||||
template class DB_PUBLIC local_processor<db::TextRef, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_processor<db::EdgePair, db::Polygon, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor<db::EdgePair, db::PolygonRef, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor<db::EdgePair, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_processor<db::EdgePair, db::Polygon, db::Polygon>;
|
||||
template class DB_PUBLIC local_processor<db::EdgePair, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_processor<db::EdgePair, db::Edge, db::Edge>;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -106,6 +106,12 @@ template class DB_PUBLIC local_operation<db::Edge, db::PolygonRef, db::PolygonRe
|
|||
template class DB_PUBLIC local_operation<db::Edge, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_operation<db::TextRef, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_operation<db::TextRef, db::PolygonRef, db::TextRef>;
|
||||
template class DB_PUBLIC local_operation<db::EdgePair, db::Polygon, db::EdgePair>;
|
||||
template class DB_PUBLIC local_operation<db::EdgePair, db::PolygonRef, db::EdgePair>;
|
||||
template class DB_PUBLIC local_operation<db::EdgePair, db::Edge, db::EdgePair>;
|
||||
template class DB_PUBLIC local_operation<db::EdgePair, db::Polygon, db::Polygon>;
|
||||
template class DB_PUBLIC local_operation<db::EdgePair, db::PolygonRef, db::PolygonRef>;
|
||||
template class DB_PUBLIC local_operation<db::EdgePair, db::Edge, db::Edge>;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2813,13 +2813,14 @@ CODE
|
|||
requires_region
|
||||
other.requires_region
|
||||
else
|
||||
requires_edges_texts_or_region
|
||||
if self.data.is_a?(RBA::Text)
|
||||
if self.data.is_a?(RBA::Texts)
|
||||
other.requires_region
|
||||
elsif self.data.is_a?(RBA::Region)
|
||||
other.requires_edges_texts_or_region
|
||||
else
|
||||
elsif self.data.is_a?(RBA::Edges) || self.data.is_a?(RBA::EdgePairs)
|
||||
other.requires_edges_or_region
|
||||
else
|
||||
raise("Invalid data type of primary layer")
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -2837,11 +2838,13 @@ CODE
|
|||
|
||||
@engine._context("#{f}") do
|
||||
|
||||
requires_edges_or_region
|
||||
check_is_layer(other)
|
||||
if self.data.is_a?(RBA::Edges)
|
||||
other.requires_edges_or_region
|
||||
else
|
||||
elsif self.data.is_a?(RBA::Region) || self.data.is_a?(RBA::EdgePairs)
|
||||
other.requires_region
|
||||
else
|
||||
raise("Invalid data type of primary layer")
|
||||
end
|
||||
|
||||
DRCLayer::new(@engine, @engine._tcmd(self.data, 0, self.data.class, :#{f}, other.data))
|
||||
|
|
@ -2913,12 +2916,14 @@ CODE
|
|||
@engine._context("#{f}") do
|
||||
|
||||
check_is_layer(other)
|
||||
if self.data.is_a?(RBA::Text)
|
||||
if self.data.is_a?(RBA::Texts)
|
||||
other.requires_region
|
||||
elsif self.data.is_a?(RBA::Region)
|
||||
other.requires_edges_texts_or_region
|
||||
else
|
||||
elsif self.data.is_a?(RBA::Edges) || self.data.is_a?(RBA::EdgePairs)
|
||||
other.requires_edges_or_region
|
||||
else
|
||||
raise("Invalid data type of primary layer")
|
||||
end
|
||||
|
||||
DRCLayer::new(@engine, @engine._tcmd(self.data, 0, self.data.class, :#{f}, other.data, *minmax_count(*args)))
|
||||
|
|
@ -2938,13 +2943,14 @@ CODE
|
|||
@engine._context("#{f}") do
|
||||
|
||||
check_is_layer(other)
|
||||
requires_edges_texts_or_region
|
||||
if self.data.is_a?(RBA::Text)
|
||||
if self.data.is_a?(RBA::Texts)
|
||||
other.requires_region
|
||||
elsif self.data.is_a?(RBA::Region)
|
||||
other.requires_edges_texts_or_region
|
||||
else
|
||||
elsif self.data.is_a?(RBA::Edges) || self.data.is_a?(RBA::EdgePairs)
|
||||
other.requires_edges_or_region
|
||||
else
|
||||
raise("Invalid data type of primary layer")
|
||||
end
|
||||
|
||||
if @engine.is_tiled?
|
||||
|
|
@ -2985,11 +2991,13 @@ CODE
|
|||
@engine._context("#{f}") do
|
||||
|
||||
check_is_layer(other)
|
||||
requires_edges_or_region
|
||||
if self.data.is_a?(RBA::Edges)
|
||||
other.requires_edges_or_region
|
||||
elsif self.data.is_a?(RBA::Region)
|
||||
if self.data.is_a?(RBA::Region)
|
||||
other.requires_edges_texts_or_region
|
||||
elsif self.data.is_a?(RBA::Edges) || self.data.is_a?(RBA::EdgePairs)
|
||||
other.requires_edges_or_region
|
||||
else
|
||||
# Note: there is no "split" for Texts yet.
|
||||
raise("Invalid data type of primary layer")
|
||||
end
|
||||
|
||||
res = @engine._tcmd_a2(self.data, 0, self.data.class, self.data.class, :#{f}, other.data, *minmax_count(*args))
|
||||
|
|
@ -3088,11 +3096,13 @@ CODE
|
|||
|
||||
@engine._context("#{f}") do
|
||||
|
||||
requires_edges_or_region
|
||||
check_is_layer(other)
|
||||
if self.data.is_a?(RBA::Edges)
|
||||
other.requires_edges_or_region
|
||||
else
|
||||
elsif self.data.is_a?(RBA::Region) || self.data.is_a?(RBA::EdgePairs)
|
||||
other.requires_region
|
||||
else
|
||||
raise("Invalid data type of primary layer")
|
||||
end
|
||||
|
||||
if @engine.is_tiled?
|
||||
|
|
@ -3115,11 +3125,12 @@ CODE
|
|||
@engine._context("#{f}") do
|
||||
|
||||
check_is_layer(other)
|
||||
requires_edges_or_region
|
||||
if self.data.is_a?(RBA::Edges)
|
||||
other.requires_edges_or_region
|
||||
elsif self.data.is_a?(RBA::Region)
|
||||
elsif self.data.is_a?(RBA::Region) || self.data.is_a?(RBA::EdgePairs)
|
||||
other.requires_region
|
||||
else
|
||||
raise("Invalid data type of primary layer")
|
||||
end
|
||||
|
||||
res = @engine._tcmd_a2(self.data, 0, self.data.class, self.data.class, :#{f}, other.data, *minmax_count(*args))
|
||||
|
|
|
|||
Loading…
Reference in New Issue