source: tools/tracertstats/output_txt.c @ 8f80e87

4.0.1-hotfixescachetimestampsdevelopdpdk-ndagetsilivegetfragoffhelplibtrace4ndag_formatpfringrc-4.0.1rc-4.0.2rc-4.0.3rc-4.0.4ringdecrementfixringperformanceringtimestampfixes
Last change on this file since 8f80e87 was e3b0188, checked in by Daniel Lawson <dlawson@…>, 16 years ago

a lot of changes for cross-compilation support

  • header ordering
  • os-specific headers
  • an lt_inttypes.h which defines PRIu64 etc for platforms that don't have them
  • removed daglegacy.h, merged with dagformat.h
  • Property mode set to 100644
File size: 1.2 KB
Line 
1#include "output.h"
2#include <stdio.h>
3#include <stdlib.h>
4#include <inttypes.h>
5#include <lt_inttypes.h>
6
7#define COLWIDTH 11
8
9static void output_txt_init(struct output_data_t *out)
10{
11        int i;
12        for(i=0;i<out->columns;++i) {
13                if (strlen(out->labels[i])>8)
14                        printf("[%i]: %s\n",i,out->labels[i]);
15        }
16        printf("\n");
17        for(i=0;i<out->columns;++i) {
18                if (strlen(out->labels[i])>8)
19                        printf("[%*i] ",COLWIDTH-3,i);
20                else
21                        printf("%*s ",COLWIDTH-1,out->labels[i]);
22        }
23        printf("\n");
24}
25
26static void output_txt_flush(struct output_data_t *out)
27{
28        int i;
29        for(i=0;i<out->columns;++i) {
30                switch (out->data[i].type) {
31                        case TYPE_int:
32                                printf("%*" PRIu64 " ",COLWIDTH-1,out->data[i].d.d_int);
33                                break;
34                        case TYPE_str:
35                                printf("%*s ",COLWIDTH-1,out->data[i].d.d_str);
36                                free(out->data[i].d.d_str);
37                                break;
38                        case TYPE_float:
39                                printf("%*f ",COLWIDTH-1,out->data[i].d.d_float);
40                                break;
41                        case TYPE_time:
42                                printf("%*.0f ",COLWIDTH-1,out->data[i].d.d_time);
43                                break;
44                }
45        }
46        printf("\n");
47}
48
49static void output_txt_destroy(struct output_data_t *out)
50{
51        /* Do nothing */
52}
53
54struct output_type_t output_txt = {
55name: "txt",
56init: output_txt_init,
57flush: output_txt_flush,
58destroy: output_txt_destroy,
59};
Note: See TracBrowser for help on using the repository browser.