Main Page | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

nvpair.h

Go to the documentation of this file.
00001 /*
00002 Copyright (C) 2003-2004 Douglas Thain and the University of Wisconsin
00003 Copyright (C) 2005- The University of Notre Dame
00004 This software is distributed under a BSD-style license.
00005 See the file COPYING for details.
00006 */
00007 
00008 #ifndef NVPAIR_H
00009 #define NVPAIR_H
00010 
00011 #include <stdio.h>
00012 #include "int_sizes.h"
00013 
00027 struct nvpair * nvpair_create();
00028 
00032 void            nvpair_delete( struct nvpair *n );
00033 
00038 void            nvpair_parse( struct nvpair *n, const char *text );
00039 
00044 int             nvpair_parse_stream( struct nvpair *n, FILE *stream );
00045 
00052 int             nvpair_print( struct nvpair *n, char *text, int length );
00053 
00059 int             nvpair_print_alloc( struct nvpair *n, char **text );
00060 
00066 void            nvpair_insert_string( struct nvpair *n, const char *name, const char *value );
00067 void            nvpair_insert_integer( struct nvpair *n, const char *name, INT64_T value );
00073 
00079 const char *    nvpair_lookup_string( struct nvpair *n, const char *name );
00080 
00086 INT64_T         nvpair_lookup_integer( struct nvpair *n, const char *name );
00087 
00088 typedef enum {
00089         NVPAIR_MODE_STRING,
00090         NVPAIR_MODE_INTEGER,
00091         NVPAIR_MODE_URL,
00092         NVPAIR_MODE_METRIC
00093 } nvpair_mode_t;
00094 
00095 typedef enum {
00096         NVPAIR_ALIGN_LEFT,
00097         NVPAIR_ALIGN_RIGHT
00098 } nvpair_align_t;
00099 
00100 struct nvpair_header {
00101         const char *name;
00102         nvpair_mode_t mode;
00103         nvpair_align_t align;
00104         int width;
00105 };
00106 
00111 void nvpair_print_text( struct nvpair *n, FILE *stream );
00112 
00117 void nvpair_print_xml( struct nvpair *n, FILE *stream );
00118 
00123 void nvpair_print_new_classads( struct nvpair *n, FILE *stream );
00124 
00129 void nvpair_print_old_classads( struct nvpair *n, FILE *stream );
00130 
00135 void nvpair_print_html_solo( struct nvpair *n, FILE *stream );
00136 
00137 void nvpair_print_html_header( FILE *stream, struct nvpair_header *h );
00138 void nvpair_print_html( struct nvpair *n, FILE *stream, struct nvpair_header *h );
00139 void nvpair_print_html_with_link( struct nvpair *n, FILE *stream, struct nvpair_header *h, const char *linkname, const char *linktext );
00140 
00141 void nvpair_print_html_footer( FILE *stream, struct nvpair_header *h );
00142 
00143 void nvpair_print_table_header( FILE *stream, struct nvpair_header *h );
00144 void nvpair_print_table( struct nvpair *n, FILE *stream, struct nvpair_header *h );
00145 void nvpair_print_table_footer( FILE *stream, struct nvpair_header *h );
00146 
00147 #endif

Generated on Fri Jun 5 11:10:54 2009 for cctools by  doxygen 1.3.9.1