Program Listing for File CandidateProjectionService.h¶
↰ Return to documentation for file (src/partition/refine/pipeline/CandidateProjectionService.h)
#ifndef PARTITION_REFINE_PIPELINE_CANDIDATEPROJECTIONSERVICE_H_
#define PARTITION_REFINE_PIPELINE_CANDIDATEPROJECTIONSERVICE_H_
#include "refine/core/RefinementContext.h"
#include "refine/core/RefinementRunTypes.h"
class CandidateProjectionService {
public:
static void remapForTopology(RefinementConfig &config,
const graph &level_graph,
vector<vector<int>> &candidate_parts,
vector<vector<VectorXi>> &candidate_resources,
vector<vector<int>> &cut_weights);
static void trimInitialCandidates(const RefinementConfig &config,
bool has_timing, CandidateBuffers &buffers);
static LevelWorkset buildLevelWorkset(const RefinementConfig &config,
const RefinementSession &session,
const MultilevelCoarsener &mc,
int level, int best_solution_id,
const CandidateBuffers &buffers,
HSFullTiming::HSPartitionFlow &pFlow);
static void keepOnlyBestIfNeeded(
int COCP_flag, int best_solution_id, vector<vector<int>> &candidate_parts,
vector<vector<VectorXi>> &candidate_resources);
};
#endif