1
1
openmpi/orte/dss/dss_dump.c
Ralph Castain 4e39878944 Add a "dump" capability to the DSS so one can display a single data value to an output stream.
Add some comments to the map type def in prep for building its data type support.

This commit was SVN r11947.
2006-10-03 08:40:35 +00:00

67 строки
1.7 KiB
C
Исполняемый файл

/*
* Copyright (c) 2004-2005 The Trustees of Indiana University.
* All rights reserved.
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
* All rights reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include "orte_config.h"
#include "orte/orte_types.h"
#include "opal/util/output.h"
#include "orte/mca/errmgr/errmgr.h"
#include "orte/dss/dss.h"
#include "orte/dss/dss_internal.h"
int orte_dss_dump(int output_stream, void *src, orte_data_type_t type)
{
char *sptr;
int rc;
if (ORTE_SUCCESS != (rc = orte_dss.print(&sptr, NULL, src, type))) {
ORTE_ERROR_LOG(rc);
return rc;
}
opal_output(output_stream, "%s", sptr);
free(sptr);
return ORTE_SUCCESS;
}
void orte_dss_dump_data_types(int output)
{
orte_dss_type_info_t **ptr;
orte_data_type_t j;
orte_std_cntr_t i;
opal_output(output, "DUMP OF REGISTERED DATA TYPES");
ptr = (orte_dss_type_info_t**)(orte_dss_types->addr);
for (i=0, j=0; j < orte_dss_num_reg_types &&
i < orte_dss_types->size; i++) {
if (NULL != ptr[i]) {
j++;
/* print out the info */
opal_output(output, "\tIndex: %lu\tData type: %lu\tName: %s",
(unsigned long)j,
(unsigned long)ptr[i]->odti_type,
ptr[i]->odti_name);
}
}
}