ZLayout EDA Library v1.0.0
Advanced Electronic Design Automation Layout Library with Bilingual Documentation
Loading...
Searching...
No Matches
zlayout::optimization::OptimizerFactory Class Reference

Layout optimization factory. More...

#include <layout_optimizer.hpp>

Public Types

enum class  AlgorithmType {
  SIMULATED_ANNEALING , FORCE_DIRECTED , HIERARCHICAL , ANALYTICAL ,
  TIMING_DRIVEN
}

Static Public Member Functions

static std::unique_ptr< SimulatedAnnealingOptimizercreate_sa_optimizer (const geometry::Rectangle &area, const OptimizationConfig &config=OptimizationConfig{})
static std::unique_ptr< HierarchicalOptimizercreate_hierarchical_optimizer (const geometry::Rectangle &area, const OptimizationConfig &config=OptimizationConfig{})
static std::unique_ptr< ForceDirectedPlacercreate_force_directed_placer (const geometry::Rectangle &area)
static AlgorithmType recommend_algorithm (size_t component_count, size_t net_count, bool timing_critical=false)
 Choose optimal algorithm based on problem characteristics.

Detailed Description

Layout optimization factory.

Definition at line 345 of file layout_optimizer.hpp.

Member Enumeration Documentation

◆ AlgorithmType

Enumerator
SIMULATED_ANNEALING 
FORCE_DIRECTED 
HIERARCHICAL 
ANALYTICAL 
TIMING_DRIVEN 

Definition at line 347 of file layout_optimizer.hpp.

Member Function Documentation

◆ create_force_directed_placer()

std::unique_ptr< ForceDirectedPlacer > zlayout::optimization::OptimizerFactory::create_force_directed_placer ( const geometry::Rectangle & area)
static

Definition at line 528 of file layout_optimizer.cpp.

Here is the caller graph for this function:

◆ create_hierarchical_optimizer()

std::unique_ptr< HierarchicalOptimizer > zlayout::optimization::OptimizerFactory::create_hierarchical_optimizer ( const geometry::Rectangle & area,
const OptimizationConfig & config = OptimizationConfig{} )
static

Definition at line 522 of file layout_optimizer.cpp.

Here is the caller graph for this function:

◆ create_sa_optimizer()

std::unique_ptr< SimulatedAnnealingOptimizer > zlayout::optimization::OptimizerFactory::create_sa_optimizer ( const geometry::Rectangle & area,
const OptimizationConfig & config = OptimizationConfig{} )
static

Definition at line 516 of file layout_optimizer.cpp.

Here is the caller graph for this function:

◆ recommend_algorithm()

OptimizerFactory::AlgorithmType zlayout::optimization::OptimizerFactory::recommend_algorithm ( size_t component_count,
size_t net_count,
bool timing_critical = false )
static

Choose optimal algorithm based on problem characteristics.

Definition at line 533 of file layout_optimizer.cpp.

Here is the caller graph for this function:

The documentation for this class was generated from the following files: