static pmix_status_t register_type(const char *name, pmix_data_type_t type, pmix_bfrop_pack_fn_t pack, pmix_bfrop_unpack_fn_t unpack, pmix_bfrop_copy_fn_t copy, pmix_bfrop_print_fn_t print) { PMIX_REGISTER_TYPE(name, type, pack, unpack, copy, print, &mca_bfrops_pmix2_component.types); return PMIX_SUCCESS; }
PMIX_EXPORT pmix_status_t pmix_bfrop_open(void) { pmix_status_t rc; if (pmix_bfrop_initialized) { return PMIX_SUCCESS; } /** set the default buffer type. If we are in debug mode, then we default * to fully described buffers. Otherwise, we default to non-described for brevity * and performance */ #if PMIX_ENABLE_DEBUG pmix_default_buf_type = PMIX_BFROP_BUFFER_FULLY_DESC; #else pmix_default_buf_type = PMIX_BFROP_BUFFER_NON_DESC; #endif /* Setup the types array */ PMIX_CONSTRUCT(&pmix_bfrop_types, pmix_pointer_array_t); if (PMIX_SUCCESS != (rc = pmix_pointer_array_init(&pmix_bfrop_types, 64, 255, 64))) { return rc; } pmix_bfrop_num_reg_types = PMIX_UNDEF; pmix_bfrop_threshold_size = PMIX_BFROP_DEFAULT_THRESHOLD_SIZE; pmix_bfrop_initial_size = 1; /* Register all the supported types */ PMIX_REGISTER_TYPE("PMIX_BOOL", PMIX_BOOL, pmix_bfrop_pack_bool, pmix_bfrop_unpack_bool, pmix_bfrop_std_copy, pmix_bfrop_print_bool); PMIX_REGISTER_TYPE("PMIX_BYTE", PMIX_BYTE, pmix_bfrop_pack_byte, pmix_bfrop_unpack_byte, pmix_bfrop_std_copy, pmix_bfrop_print_byte); PMIX_REGISTER_TYPE("PMIX_STRING", PMIX_STRING, pmix_bfrop_pack_string, pmix_bfrop_unpack_string, pmix_bfrop_copy_string, pmix_bfrop_print_string); PMIX_REGISTER_TYPE("PMIX_SIZE", PMIX_SIZE, pmix_bfrop_pack_sizet, pmix_bfrop_unpack_sizet, pmix_bfrop_std_copy, pmix_bfrop_print_size); PMIX_REGISTER_TYPE("PMIX_PID", PMIX_PID, pmix_bfrop_pack_pid, pmix_bfrop_unpack_pid, pmix_bfrop_std_copy, pmix_bfrop_print_pid); PMIX_REGISTER_TYPE("PMIX_INT", PMIX_INT, pmix_bfrop_pack_int, pmix_bfrop_unpack_int, pmix_bfrop_std_copy, pmix_bfrop_print_int); PMIX_REGISTER_TYPE("PMIX_INT8", PMIX_INT8, pmix_bfrop_pack_byte, pmix_bfrop_unpack_byte, pmix_bfrop_std_copy, pmix_bfrop_print_int8); PMIX_REGISTER_TYPE("PMIX_INT16", PMIX_INT16, pmix_bfrop_pack_int16, pmix_bfrop_unpack_int16, pmix_bfrop_std_copy, pmix_bfrop_print_int16); PMIX_REGISTER_TYPE("PMIX_INT32", PMIX_INT32, pmix_bfrop_pack_int32, pmix_bfrop_unpack_int32, pmix_bfrop_std_copy, pmix_bfrop_print_int32); PMIX_REGISTER_TYPE("PMIX_INT64", PMIX_INT64, pmix_bfrop_pack_int64, pmix_bfrop_unpack_int64, pmix_bfrop_std_copy, pmix_bfrop_print_int64); PMIX_REGISTER_TYPE("PMIX_UINT", PMIX_UINT, pmix_bfrop_pack_int, pmix_bfrop_unpack_int, pmix_bfrop_std_copy, pmix_bfrop_print_uint); PMIX_REGISTER_TYPE("PMIX_UINT8", PMIX_UINT8, pmix_bfrop_pack_byte, pmix_bfrop_unpack_byte, pmix_bfrop_std_copy, pmix_bfrop_print_uint8); PMIX_REGISTER_TYPE("PMIX_UINT16", PMIX_UINT16, pmix_bfrop_pack_int16, pmix_bfrop_unpack_int16, pmix_bfrop_std_copy, pmix_bfrop_print_uint16); PMIX_REGISTER_TYPE("PMIX_UINT32", PMIX_UINT32, pmix_bfrop_pack_int32, pmix_bfrop_unpack_int32, pmix_bfrop_std_copy, pmix_bfrop_print_uint32); PMIX_REGISTER_TYPE("PMIX_UINT64", PMIX_UINT64, pmix_bfrop_pack_int64, pmix_bfrop_unpack_int64, pmix_bfrop_std_copy, pmix_bfrop_print_uint64); PMIX_REGISTER_TYPE("PMIX_FLOAT", PMIX_FLOAT, pmix_bfrop_pack_float, pmix_bfrop_unpack_float, pmix_bfrop_std_copy, pmix_bfrop_print_float); PMIX_REGISTER_TYPE("PMIX_DOUBLE", PMIX_DOUBLE, pmix_bfrop_pack_double, pmix_bfrop_unpack_double, pmix_bfrop_std_copy, pmix_bfrop_print_double); PMIX_REGISTER_TYPE("PMIX_TIMEVAL", PMIX_TIMEVAL, pmix_bfrop_pack_timeval, pmix_bfrop_unpack_timeval, pmix_bfrop_std_copy, pmix_bfrop_print_timeval); PMIX_REGISTER_TYPE("PMIX_TIME", PMIX_TIME, pmix_bfrop_pack_time, pmix_bfrop_unpack_time, pmix_bfrop_std_copy, pmix_bfrop_print_time); PMIX_REGISTER_TYPE("PMIX_STATUS", PMIX_STATUS, pmix_bfrop_pack_status, pmix_bfrop_unpack_status, pmix_bfrop_std_copy, pmix_bfrop_print_status); #if PMIX_HAVE_HWLOC PMIX_REGISTER_TYPE("PMIX_HWLOC_TOPO", PMIX_HWLOC_TOPO, pmix_bfrop_pack_topo, pmix_bfrop_unpack_topo, pmix_bfrop_copy_topo, pmix_bfrop_print_topo); #endif PMIX_REGISTER_TYPE("PMIX_VALUE", PMIX_VALUE, pmix_bfrop_pack_value, pmix_bfrop_unpack_value, pmix_bfrop_copy_value, pmix_bfrop_print_value); PMIX_REGISTER_TYPE("PMIX_PROC", PMIX_PROC, pmix_bfrop_pack_proc, pmix_bfrop_unpack_proc, pmix_bfrop_copy_proc, pmix_bfrop_print_proc); PMIX_REGISTER_TYPE("PMIX_APP", PMIX_APP, pmix_bfrop_pack_app, pmix_bfrop_unpack_app, pmix_bfrop_copy_app, pmix_bfrop_print_app); PMIX_REGISTER_TYPE("PMIX_INFO", PMIX_INFO, pmix_bfrop_pack_info, pmix_bfrop_unpack_info, pmix_bfrop_copy_info, pmix_bfrop_print_info); PMIX_REGISTER_TYPE("PMIX_PDATA", PMIX_PDATA, pmix_bfrop_pack_pdata, pmix_bfrop_unpack_pdata, pmix_bfrop_copy_pdata, pmix_bfrop_print_pdata); PMIX_REGISTER_TYPE("PMIX_BUFFER", PMIX_BUFFER, pmix_bfrop_pack_buf, pmix_bfrop_unpack_buf, pmix_bfrop_copy_buf, pmix_bfrop_print_buf); PMIX_REGISTER_TYPE("PMIX_BYTE_OBJECT", PMIX_BYTE_OBJECT, pmix_bfrop_pack_bo, pmix_bfrop_unpack_bo, pmix_bfrop_copy_bo, pmix_bfrop_print_bo); PMIX_REGISTER_TYPE("PMIX_KVAL", PMIX_KVAL, pmix_bfrop_pack_kval, pmix_bfrop_unpack_kval, pmix_bfrop_copy_kval, pmix_bfrop_print_kval); PMIX_REGISTER_TYPE("PMIX_MODEX", PMIX_MODEX, pmix_bfrop_pack_modex, pmix_bfrop_unpack_modex, pmix_bfrop_copy_modex, pmix_bfrop_print_modex); PMIX_REGISTER_TYPE("PMIX_PERSIST", PMIX_PERSIST, pmix_bfrop_pack_persist, pmix_bfrop_unpack_persist, pmix_bfrop_std_copy, pmix_bfrop_print_persist); PMIX_REGISTER_TYPE("PMIX_POINTER", PMIX_POINTER, pmix_bfrop_pack_ptr, pmix_bfrop_unpack_ptr, pmix_bfrop_std_copy, pmix_bfrop_print_ptr); PMIX_REGISTER_TYPE("PMIX_SCOPE", PMIX_SCOPE, pmix_bfrop_pack_scope, pmix_bfrop_unpack_scope, pmix_bfrop_std_copy, pmix_bfrop_print_scope); PMIX_REGISTER_TYPE("PMIX_DATA_RANGE", PMIX_DATA_RANGE, pmix_bfrop_pack_range, pmix_bfrop_unpack_range, pmix_bfrop_std_copy, pmix_bfrop_print_range); PMIX_REGISTER_TYPE("PMIX_COMMAND", PMIX_COMMAND, pmix_bfrop_pack_cmd, pmix_bfrop_unpack_cmd, pmix_bfrop_std_copy, pmix_bfrop_print_cmd); PMIX_REGISTER_TYPE("PMIX_INFO_DIRECTIVES", PMIX_INFO_DIRECTIVES, pmix_bfrop_pack_infodirs, pmix_bfrop_unpack_infodirs, pmix_bfrop_std_copy, pmix_bfrop_print_infodirs); PMIX_REGISTER_TYPE("PMIX_PROC_STATE", PMIX_PROC_STATE, pmix_bfrop_pack_pstate, pmix_bfrop_unpack_pstate, pmix_bfrop_std_copy, pmix_bfrop_print_pstate); PMIX_REGISTER_TYPE("PMIX_PROC_INFO", PMIX_PROC_INFO, pmix_bfrop_pack_pinfo, pmix_bfrop_unpack_pinfo, pmix_bfrop_copy_pinfo, pmix_bfrop_print_pinfo); PMIX_REGISTER_TYPE("PMIX_DATA_ARRAY", PMIX_DATA_ARRAY, pmix_bfrop_pack_darray, pmix_bfrop_unpack_darray, pmix_bfrop_copy_darray, pmix_bfrop_print_darray); PMIX_REGISTER_TYPE("PMIX_PROC_RANK", PMIX_PROC_RANK, pmix_bfrop_pack_rank, pmix_bfrop_unpack_rank, pmix_bfrop_std_copy, pmix_bfrop_print_rank); PMIX_REGISTER_TYPE("PMIX_QUERY", PMIX_QUERY, pmix_bfrop_pack_query, pmix_bfrop_unpack_query, pmix_bfrop_copy_query, pmix_bfrop_print_query); /**** DEPRECATED ****/ PMIX_REGISTER_TYPE("PMIX_INFO_ARRAY", PMIX_INFO_ARRAY, pmix_bfrop_pack_array, pmix_bfrop_unpack_array, pmix_bfrop_copy_array, pmix_bfrop_print_array); /********************/ /* All done */ pmix_bfrop_initialized = true; return PMIX_SUCCESS; }
static pmix_status_t init(void) { /* some standard types don't require anything special */ PMIX_REGISTER_TYPE("PMIX_BOOL", PMIX_BOOL, pmix_bfrops_base_pack_bool, pmix_bfrops_base_unpack_bool, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_bool, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_BYTE", PMIX_BYTE, pmix_bfrops_base_pack_byte, pmix_bfrops_base_unpack_byte, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_byte, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_STRING", PMIX_STRING, pmix_bfrops_base_pack_string, pmix_bfrops_base_unpack_string, pmix_bfrops_base_copy_string, pmix_bfrops_base_print_string, &mca_bfrops_pmix2_component.types); /* Register the rest of the standard generic types to point to internal functions */ PMIX_REGISTER_TYPE("PMIX_SIZE", PMIX_SIZE, pmix_bfrops_base_pack_sizet, pmix_bfrops_base_unpack_sizet, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_size, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_PID", PMIX_PID, pmix_bfrops_base_pack_pid, pmix_bfrops_base_unpack_pid, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_pid, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_INT", PMIX_INT, pmix_bfrops_base_pack_int, pmix_bfrops_base_unpack_int, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_int, &mca_bfrops_pmix2_component.types); /* Register all the standard fixed types to point to base functions */ PMIX_REGISTER_TYPE("PMIX_INT8", PMIX_INT8, pmix_bfrops_base_pack_byte, pmix_bfrops_base_unpack_byte, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_int8, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_INT16", PMIX_INT16, pmix_bfrops_base_pack_int16, pmix_bfrops_base_unpack_int16, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_int16, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_INT32", PMIX_INT32, pmix_bfrops_base_pack_int32, pmix_bfrops_base_unpack_int32, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_int32, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_INT64", PMIX_INT64, pmix_bfrops_base_pack_int64, pmix_bfrops_base_unpack_int64, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_int64, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_UINT", PMIX_UINT, pmix_bfrops_base_pack_int, pmix_bfrops_base_unpack_int, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_uint, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_UINT8", PMIX_UINT8, pmix_bfrops_base_pack_byte, pmix_bfrops_base_unpack_byte, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_uint8, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_UINT16", PMIX_UINT16, pmix_bfrops_base_pack_int16, pmix_bfrops_base_unpack_int16, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_uint16, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_UINT32", PMIX_UINT32, pmix_bfrops_base_pack_int32, pmix_bfrops_base_unpack_int32, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_uint32, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_UINT64", PMIX_UINT64, pmix_bfrops_base_pack_int64, pmix_bfrops_base_unpack_int64, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_uint64, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_FLOAT", PMIX_FLOAT, pmix_bfrops_base_pack_float, pmix_bfrops_base_unpack_float, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_float, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_DOUBLE", PMIX_DOUBLE, pmix_bfrops_base_pack_double, pmix_bfrops_base_unpack_double, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_double, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_TIMEVAL", PMIX_TIMEVAL, pmix_bfrops_base_pack_timeval, pmix_bfrops_base_unpack_timeval, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_timeval, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_TIME", PMIX_TIME, pmix_bfrops_base_pack_time, pmix_bfrops_base_unpack_time, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_time, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_STATUS", PMIX_STATUS, pmix_bfrops_base_pack_status, pmix_bfrops_base_unpack_status, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_status, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_VALUE", PMIX_VALUE, pmix_bfrops_base_pack_value, pmix_bfrops_base_unpack_value, pmix_bfrops_base_copy_value, pmix_bfrops_base_print_value, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_PROC", PMIX_PROC, pmix_bfrops_base_pack_proc, pmix_bfrops_base_unpack_proc, pmix_bfrops_base_copy_proc, pmix_bfrops_base_print_proc, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_APP", PMIX_APP, pmix_bfrops_base_pack_app, pmix_bfrops_base_unpack_app, pmix_bfrops_base_copy_app, pmix_bfrops_base_print_app, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_INFO", PMIX_INFO, pmix_bfrops_base_pack_info, pmix_bfrops_base_unpack_info, pmix_bfrops_base_copy_info, pmix_bfrops_base_print_info, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_PDATA", PMIX_PDATA, pmix_bfrops_base_pack_pdata, pmix_bfrops_base_unpack_pdata, pmix_bfrops_base_copy_pdata, pmix_bfrops_base_print_pdata, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_BUFFER", PMIX_BUFFER, pmix_bfrops_base_pack_buf, pmix_bfrops_base_unpack_buf, pmix_bfrops_base_copy_buf, pmix_bfrops_base_print_buf, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_BYTE_OBJECT", PMIX_BYTE_OBJECT, pmix_bfrops_base_pack_bo, pmix_bfrops_base_unpack_bo, pmix_bfrops_base_copy_bo, pmix_bfrops_base_print_bo, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_KVAL", PMIX_KVAL, pmix_bfrops_base_pack_kval, pmix_bfrops_base_unpack_kval, pmix_bfrops_base_copy_kval, pmix_bfrops_base_print_kval, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_MODEX", PMIX_MODEX, pmix_bfrops_base_pack_modex, pmix_bfrops_base_unpack_modex, pmix_bfrops_base_copy_modex, pmix_bfrops_base_print_modex, &mca_bfrops_pmix2_component.types); /* these are fixed-sized values and can be done by base */ PMIX_REGISTER_TYPE("PMIX_PERSIST", PMIX_PERSIST, pmix_bfrops_base_pack_persist, pmix_bfrops_base_unpack_persist, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_persist, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_POINTER", PMIX_POINTER, pmix_bfrops_base_pack_ptr, pmix_bfrops_base_unpack_ptr, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_ptr, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_SCOPE", PMIX_SCOPE, pmix_bfrops_base_pack_scope, pmix_bfrops_base_unpack_scope, pmix_bfrops_base_std_copy, pmix_bfrops_base_std_copy, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_DATA_RANGE", PMIX_DATA_RANGE, pmix_bfrops_base_pack_range, pmix_bfrops_base_unpack_range, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_ptr, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_COMMAND", PMIX_COMMAND, pmix_bfrops_base_pack_cmd, pmix_bfrops_base_unpack_cmd, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_cmd, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_INFO_DIRECTIVES", PMIX_INFO_DIRECTIVES, pmix_bfrops_base_pack_info_directives, pmix_bfrops_base_unpack_info_directives, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_info_directives, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_DATA_TYPE", PMIX_DATA_TYPE, pmix_bfrops_base_pack_datatype, pmix_bfrops_base_unpack_datatype, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_datatype, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_PROC_STATE", PMIX_PROC_STATE, pmix_bfrops_base_pack_pstate, pmix_bfrops_base_unpack_pstate, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_pstate, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_PROC_INFO", PMIX_PROC_INFO, pmix_bfrops_base_pack_pinfo, pmix_bfrops_base_unpack_pinfo, pmix_bfrops_base_copy_pinfo, pmix_bfrops_base_print_pinfo, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_DATA_ARRAY", PMIX_DATA_ARRAY, pmix_bfrops_base_pack_darray, pmix_bfrops_base_unpack_darray, pmix_bfrops_base_copy_darray, pmix_bfrops_base_print_darray, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_PROC_RANK", PMIX_PROC_RANK, pmix_bfrops_base_pack_rank, pmix_bfrops_base_unpack_rank, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_rank, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_QUERY", PMIX_QUERY, pmix_bfrops_base_pack_query, pmix_bfrops_base_unpack_query, pmix_bfrops_base_copy_query, pmix_bfrops_base_print_query, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_COMPRESSED_STRING", PMIX_COMPRESSED_STRING, pmix_bfrops_base_pack_bo, pmix_bfrops_base_unpack_bo, pmix_bfrops_base_copy_bo, pmix_bfrops_base_print_bo, &mca_bfrops_pmix2_component.types); PMIX_REGISTER_TYPE("PMIX_ALLOC_DIRECTIVE", PMIX_ALLOC_DIRECTIVE, pmix_bfrops_base_pack_alloc_directive, pmix_bfrops_base_unpack_alloc_directive, pmix_bfrops_base_std_copy, pmix_bfrops_base_print_alloc_directive, &mca_bfrops_pmix2_component.types); /**** DEPRECATED ****/ PMIX_REGISTER_TYPE("PMIX_INFO_ARRAY", PMIX_INFO_ARRAY, pmix_bfrops_base_pack_array, pmix_bfrops_base_unpack_array, pmix_bfrops_base_copy_array, pmix_bfrops_base_print_array, &mca_bfrops_pmix2_component.types); /********************/ return PMIX_SUCCESS; }