20 #ifndef OPAL_CRS_BASE_H
21 #define OPAL_CRS_BASE_H
23 #include "opal_config.h"
35 #define CRS_METADATA_BASE ("# ")
36 #define CRS_METADATA_COMP ("# OPAL CRS Component: ")
37 #define CRS_METADATA_PID ("# PID: ")
38 #define CRS_METADATA_CONTEXT ("# CONTEXT: ")
39 #define CRS_METADATA_MKDIR ("# MKDIR: ")
40 #define CRS_METADATA_TOUCH ("# TOUCH: ")
50 OPAL_DECLSPEC
int opal_crs_base_open(
void);
60 OPAL_DECLSPEC
int opal_crs_base_select(
void);
70 OPAL_DECLSPEC
int opal_crs_base_close(
void);
75 OPAL_DECLSPEC
extern int opal_crs_base_output;
76 OPAL_DECLSPEC
extern opal_list_t opal_crs_base_components_available;
88 OPAL_DECLSPEC
int opal_crs_base_extract_expected_component(FILE *metadata,
char ** component_name,
int *prev_pid);
93 OPAL_DECLSPEC
int opal_crs_base_metadata_read_token(FILE *metadata,
char * token,
char ***value);
99 OPAL_DECLSPEC
int opal_crs_base_cleanup_append(
char* filename,
bool is_dir);
104 OPAL_DECLSPEC
int opal_crs_base_cleanup_flush(
void);
119 typedef int (*opal_crs_base_self_checkpoint_fn_t)(
char **restart_cmd);
120 typedef int (*opal_crs_base_self_restart_fn_t)(void);
121 typedef int (*opal_crs_base_self_continue_fn_t)(void);
123 extern opal_crs_base_self_checkpoint_fn_t crs_base_self_checkpoint_fn;
124 extern opal_crs_base_self_restart_fn_t crs_base_self_restart_fn;
125 extern opal_crs_base_self_continue_fn_t crs_base_self_continue_fn;
127 OPAL_DECLSPEC
int opal_crs_base_self_register_checkpoint_callback
128 (opal_crs_base_self_checkpoint_fn_t
function);
129 OPAL_DECLSPEC
int opal_crs_base_self_register_restart_callback
130 (opal_crs_base_self_restart_fn_t
function);
131 OPAL_DECLSPEC
int opal_crs_base_self_register_continue_callback
132 (opal_crs_base_self_continue_fn_t
function);
Structure for CRS modules.
Definition: crs.h:267
Structure for CRS components.
Definition: crs.h:248
Generic helper routines for environment manipulation.
Definition: opal_list.h:147
Checkpoint and Restart Service (CRS) Interface.
Checkpoint functionality for Open MPI.
opal_crs_state_type_t
States of the module.
Definition: crs.h:60