Program Listing for File StrategyFactory.h¶
↰ Return to documentation for file (src/partition/refine/strategy/StrategyFactory.h)
#ifndef PARTITION_REFINE_STRATEGY_STRATEGYFACTORY_H_
#define PARTITION_REFINE_STRATEGY_STRATEGYFACTORY_H_
#include "LegacyRefine.h"
class StrategyFactory {
public:
static vector<unique_ptr<IRefineStrategy>> createMainStrategies(
const StrategyPlan &plan, int max_hop, int large_net_threshold,
double penalty, vector<vector<int>> &cut_weights, const fpga &fpgas,
const TimingRefineConfig &timing_cfg, int max_move, int max_neg_move);
static unique_ptr<IRefineStrategy> createLegacyOldStrategy(
int max_hop, int large_net_threshold, double penalty,
vector<vector<int>> &cut_weights, const fpga &fpgas,
const TimingRefineConfig &timing_cfg, bool has_fix, bool has_timing,
bool enable_parallel_refine, int thread_order, int current_level,
int multilevel_id);
static unique_ptr<IRefineStrategy> createLegacyGreedyStrategy(
int max_hop, int large_net_threshold, double penalty,
vector<vector<int>> &cut_weights, const fpga &fpgas,
const TimingRefineConfig &timing_cfg, bool has_fix);
};
#endif