pub trait RoutingLayerStack: RuleBase {
// Required method
fn layer_stack(&self) -> Vec<RoutingLayer<Self::LayerId>>;
// Provided methods
fn layer_stack_ids(&self) -> Vec<Self::LayerId> { ... }
fn routing_layer_stack(&self) -> Vec<Self::LayerId> { ... }
fn via_layer_stack(&self) -> Vec<Self::LayerId> { ... }
fn get_upper_metal_layer(
&self,
layer: &Self::LayerId,
) -> Option<Self::LayerId> { ... }
fn get_lower_metal_layer(
&self,
layer: &Self::LayerId,
) -> Option<Self::LayerId> { ... }
}
Expand description
Define standardized access for routing and via layers.
Required Methods§
Sourcefn layer_stack(&self) -> Vec<RoutingLayer<Self::LayerId>>
fn layer_stack(&self) -> Vec<RoutingLayer<Self::LayerId>>
Get the stack of routing and via layers in process order.
Provided Methods§
Sourcefn layer_stack_ids(&self) -> Vec<Self::LayerId>
fn layer_stack_ids(&self) -> Vec<Self::LayerId>
Get the layer ids of the layer stack (routing layers and via layers).
Sourcefn routing_layer_stack(&self) -> Vec<Self::LayerId>
fn routing_layer_stack(&self) -> Vec<Self::LayerId>
Get the stack of routing metal layers in process order.
Sourcefn via_layer_stack(&self) -> Vec<Self::LayerId>
fn via_layer_stack(&self) -> Vec<Self::LayerId>
Get the stack of via layers in process order.
Sourcefn get_upper_metal_layer(&self, layer: &Self::LayerId) -> Option<Self::LayerId>
fn get_upper_metal_layer(&self, layer: &Self::LayerId) -> Option<Self::LayerId>
Find the closest metal layer above the given layer.
Sourcefn get_lower_metal_layer(&self, layer: &Self::LayerId) -> Option<Self::LayerId>
fn get_lower_metal_layer(&self, layer: &Self::LayerId) -> Option<Self::LayerId>
Find the closest metal layer under the given layer.