|
60 | 60 |
|
61 | 61 | #include <mpi.h> |
62 | 62 | #include <functional> |
| 63 | +#include <vector> |
| 64 | +#include <optional> |
63 | 65 | #include "fenix.h" |
64 | 66 | #include "fenix_exception.hpp" |
65 | 67 | #include "fenix_data_subset.hpp" |
@@ -116,12 +118,21 @@ Fenix_Rank_role role(); |
116 | 118 | //!@brief Overload of #Fenix_get_error |
117 | 119 | int error(); |
118 | 120 |
|
| 121 | +//!@brief Overload of #Fenix_get_nspare |
| 122 | +int nspare(); |
| 123 | + |
119 | 124 | //!@brief Overload of #Fenix_Callback_register |
120 | 125 | int callback_register(std::function<void(MPI_Comm, int)> callback); |
121 | 126 |
|
122 | 127 | //@!brief Overload of #Fenix_Callback_pop |
123 | 128 | int callback_pop(); |
124 | 129 |
|
| 130 | +/** |
| 131 | + * @brief Get the failed ranks from the most recent recovery |
| 132 | + * @return vector of failed ranks |
| 133 | + */ |
| 134 | +std::vector<int> fail_list(); |
| 135 | + |
125 | 136 | //!@brief Overload of #Fenix_Process_detect_failures |
126 | 137 | int detect_failures(bool recover = true); |
127 | 138 |
|
@@ -183,6 +194,18 @@ int commit(int group_id, int* time_stamp = nullptr); |
183 | 194 | //@!brief overload of #Fenix_Data_commit |
184 | 195 | int commit_barrier(int group_id, int* time_stamp = nullptr); |
185 | 196 |
|
| 197 | +/** |
| 198 | + * @brief get the members of a group |
| 199 | + * @return vector of member IDs of each member in group_id if group exists |
| 200 | + */ |
| 201 | +std::optional<std::vector<int>> group_members(int group_id); |
| 202 | + |
| 203 | +/** |
| 204 | + * @brief get the snapshots of a group |
| 205 | + * @return vector of timestamps of each snapshot in group_id if group exists |
| 206 | + */ |
| 207 | +std::optional<std::vector<int>> group_snapshots(int group_id); |
| 208 | + |
186 | 209 | //@!brief Overload of #Fenix_Data_snapshot_delete |
187 | 210 | int snapshot_delete(int group_id, int timestamp); |
188 | 211 |
|
|
0 commit comments