degate  0.1.2
Namespaces | Functions
LogicModelHelper.h File Reference
#include <degate.h>
#include <ImageHelper.h>
#include <ConnectedLogicModelObject.h>
#include <Project.h>
#include <ObjectSet.h>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


namespace  degate

The namespace 'degate' is the namespace for everything that belongs to libdegate.


Layer_shptr degate::get_first_layer (LogicModel_shptr lmodel, Layer::LAYER_TYPE layer_type)
 Get the first layer of a layer type.
Layer_shptr degate::get_first_logic_layer (LogicModel_shptr lmodel)
 Get the first layer that is a logic layer.
Gate_shptr degate::get_gate_by_name (LogicModel_shptr lmodel, std::string const &gate_name)
 Lookup a gate by it's name.
void degate::apply_colors_to_gate_ports (LogicModel_shptr lmodel, PortColorManager_shptr pcm)
 Get the color definition for port names from the PortColorManager and apply it to gate ports.
std::list< Layer_shptrdegate::get_available_standard_layers (LogicModel_shptr lmodel)
 Get layer pointers for the first transistor layer and M1 and M2, if they are available.
template<typename ImageType >
std::shared_ptr< ImageType > degate::grab_image (LogicModel_shptr lmodel, Layer_shptr layer, BoundingBox const &bounding_box)
 Extract a partial image from the background image for a layer.
void degate::merge_gate_images (LogicModel_shptr lmodel, Layer_shptr layer, GateTemplate_shptr tmpl, std::list< Gate_shptr > const &gates)
 Merge images.
void degate::merge_gate_images (LogicModel_shptr lmodel, ObjectSet gates)
 Merge images.
void degate::grab_template_images (LogicModel_shptr lmodel, GateTemplate_shptr gate_template, BoundingBox const &bounding_box, Gate::ORIENTATION orientation=Gate::ORIENTATION_NORMAL)
 Extract a partial image from the background images for several layers and set the extracted images as master images for a gate template.
template<class InputIterator >
std::set< Net_shptr > degate::collect_nets (InputIterator first, InputIterator last)
 Collect nets that are used by the objects from first to last.
template<class InputIterator >
void degate::isolate_objects (LogicModel_shptr lmodel, InputIterator first, InputIterator last)
 Isolate objects.
void degate::remove_entire_net (LogicModel_shptr lmodel, Net_shptr net)
 Remove net from the logic model and remove it from all objects, which share a net.
void degate::connect_objects (LogicModel_shptr lmodel, ConnectedLogicModelObject_shptr o1, ConnectedLogicModelObject_shptr o2)
 Connect objects.
template<class InputIterator >
void degate::connect_objects (LogicModel_shptr lmodel, InputIterator first, InputIterator last)
 Connect objects.
void degate::autoconnect_objects (LogicModel_shptr lmodel, Layer_shptr layer, BoundingBox const &search_bbox)
 Autoconnect objects that tangent each other from a layer within the bounding box.
void degate::autoconnect_interlayer_objects (LogicModel_shptr lmodel, Layer_shptr layer, BoundingBox const &search_bbox)
 Autoconnect vias on adjacent enabled layers.
void degate::load_background_image (Layer_shptr layer, std::string const &project_dir, std::string const &image_file)
 Load an image in a common image format as background image for a layer.
void degate::clear_logic_model (LogicModel_shptr lmodel, Layer_shptr layer)
 Clear the logic model for a layer.
Layer_shptr degate::get_first_enabled_layer (LogicModel_shptr lmodel)
 Get first enabled layer

InvalidPointerExceptionIf you pass an invalid shared pointer for layer, then this exception is raised.

Layer_shptr degate::get_next_enabled_layer (LogicModel_shptr lmodel)
 Get next enabled layer.
Layer_shptr degate::get_next_enabled_layer (LogicModel_shptr lmodel, Layer_shptr layer)
 Get the next enabled layer, that is above layer.
Layer_shptr degate::get_prev_enabled_layer (LogicModel_shptr lmodel)
 Get previous enabled layer.
Layer_shptr degate::get_prev_enabled_layer (LogicModel_shptr lmodel, Layer_shptr layer)
 Get the previous enabled layer, that is below layer.
Layer_shptr degate::get_current_layer (Project_shptr project)
 Get the current layer.
bool degate::is_logic_class (Gate_shptr gate, std::string const &logic_class)
 Check if a gate is of a specific logic class.
GateTemplatePort::PORT_TYPE degate::get_port_type (GatePort_shptr gate_port)
 Get the port type of a gate port.
std::string degate::get_template_port_name (GatePort_shptr gate_port)
 Get the name of a corresponding template port.
void degate::apply_port_color_settings (LogicModel_shptr lmodel, PortColorManager_shptr pcm)
 Apply port color definitions to all gate template ports.
void degate::update_port_diameters (LogicModel_shptr lmodel, diameter_t new_size)
 Resize all gate ports from the logic model to the new size.