31 #include <boost/random.hpp>
70 const std::vector<std::pair<int, int>> &cluster2XY);
73 const std::vector<std::pair<int, int>> &cluster2XY);
104 std::vector<std::vector<std::vector<int>>> &new_Grid2clusters,
105 const std::vector<std::pair<int, int>> &cluster2XY,
106 std::vector<std::pair<int, int>> &new_cluster2XY,
float temperature,
107 boost::mt19937 &rng);
110 std::vector<std::vector<std::vector<int>>> &new_Grid2clusters,
111 const std::vector<std::pair<int, int>> &cluster2XY,
112 std::vector<std::pair<int, int>> &new_cluster2XY,
float temperature,
113 boost::mt19937 &rng);
116 std::vector<std::vector<std::vector<int>>> &new_grid2clusters,
117 const std::vector<std::pair<int, int>> &cluster2XY,
118 std::vector<std::pair<int, int>> &new_cluster2XY, boost::mt19937 &rng);
122 static void worker(
SAPlacer *saPlacer, std::vector<std::vector<std::vector<int>>> &init_grid2clusters,
123 std::vector<std::pair<int, int>> &init_cluster2XY,
124 std::vector<std::vector<std::vector<int>>> &opt_grid2clusters,
125 std::vector<std::pair<int, int>> &opt_cluster2XY,
int &totalIterNum,
int &workers_randomSeed,
129 std::vector<std::vector<std::vector<int>>> &init_grid2clusters,
int initOffset);
132 const std::vector<std::vector<std::vector<int>>> &init_grid2clusters,
133 std::vector<std::pair<int, int>> &new_cluster2XY,
134 std::vector<std::vector<std::vector<int>>> &new_grid2clusters,
int clusterIdToPlace);
137 std::vector<std::vector<std::vector<int>>> &tmp_grid2clusters);