| 1408 | } |
| 1409 | |
| 1410 | HighsInt Highs_crossover(void* highs, const HighsInt num_col, |
| 1411 | const HighsInt num_row, const double* col_value, |
| 1412 | const double* col_dual, const double* row_dual) { |
| 1413 | HighsSolution solution; |
| 1414 | if (col_value) { |
| 1415 | solution.value_valid = true; |
| 1416 | solution.col_value.resize(num_col); |
| 1417 | for (int col = 0; col < num_col; col++) |
| 1418 | solution.col_value[col] = col_value[col]; |
| 1419 | } |
| 1420 | |
| 1421 | if (col_dual && row_dual) { |
| 1422 | solution.dual_valid = true; |
| 1423 | solution.col_dual.resize(num_col); |
| 1424 | solution.row_dual.resize(num_row); |
| 1425 | for (int col = 0; col < num_col; col++) |
| 1426 | solution.col_dual[col] = col_dual[col]; |
| 1427 | for (int row = 0; row < num_row; row++) |
| 1428 | solution.row_dual[row] = row_dual[row]; |
| 1429 | } |
| 1430 | |
| 1431 | return (HighsInt)((Highs*)highs)->crossover(solution); |
| 1432 | } |
| 1433 | |
| 1434 | HighsInt Highs_getRanging( |
| 1435 | void* highs, |