From: Bert Wesarg <[email protected]>
Provide a helper funtion to print a dashed line of variable length and use this
in the pretty_print* functions.
Regards,
Bert Wesarg
---
orte/tools/orte-ps/orte-ps.c | 37 ++++++++++++++++++-------------------
1 file changed, 18 insertions(+), 19 deletions(-)
diff --quilt old/orte/tools/orte-ps/orte-ps.c new/orte/tools/orte-ps/orte-ps.c
--- old/orte/tools/orte-ps/orte-ps.c
+++ new/orte/tools/orte-ps/orte-ps.c
@@ -145,6 +145,7 @@ static int pretty_print(orte_ps_mpirun_i
static int pretty_print_nodes(orte_node_t **nodes, orte_std_cntr_t num_nodes);
static int pretty_print_jobs(orte_job_t **jobs, orte_std_cntr_t num_jobs);
static int pretty_print_vpids(orte_job_t *job);
+static void pretty_print_dashed_line(int len);
static char *pretty_node_state(orte_node_state_t state);
static char *pretty_job_state(orte_job_state_t state);
@@ -390,17 +391,14 @@ static int pretty_print(orte_ps_mpirun_i
int len_hdr, i;
/*
- * Print header
+ * Print header and remember header length
*/
len_hdr = asprintf(&header, "Information from mpirun %s",
ORTE_JOBID_PRINT(hnpinfo->hnp->name.jobid));
-
printf("\n\n%s\n", header);
free(header);
- for (i=0; i < len_hdr; i++) {
- printf("%c", '-');
- }
- printf("\n");
-
+
+ pretty_print_dashed_line(len_hdr);
+
/*
* Print Node Information
*/
@@ -465,10 +463,7 @@ static int pretty_print_nodes(orte_node_
printf("%*s | ", len_slots_i, "Slots In Use");
printf("\n");
- for(i = 0; i < line_len; ++i) {
- printf("-");
- }
- printf("\n");
+ pretty_print_dashed_line(line_len);
/*
* Print Info
@@ -565,10 +560,7 @@ static int pretty_print_jobs(orte_job_t
#endif
printf("\n");
- for(j = 0; j < line_len; ++j) {
- printf("-");
- }
- printf("\n");
+ pretty_print_dashed_line(line_len);
/*
* Print Info
@@ -719,10 +711,7 @@ static int pretty_print_vpids(orte_job_t
printf("\n");
printf("\t");
- for(i = 0; i < line_len; ++i) {
- printf("-");
- }
- printf("\n");
+ pretty_print_dashed_line(line_len);
/*
* Print Info
@@ -771,6 +760,16 @@ static int pretty_print_vpids(orte_job_t
return ORTE_SUCCESS;
}
+static void pretty_print_dashed_line(int len) {
+ static const char dashes[8] = "--------";
+
+ while (len >= 8) {
+ printf("%8.8s", dashes);
+ len -= 8;
+ }
+ printf("%*.*s\n", len, len, dashes);
+}
+
static int gather_information(orte_ps_mpirun_info_t *hnpinfo) {
int ret;