Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

pdl.h

Go to the documentation of this file.
00001 /*
00002  *   Copyright (c) 2003 EU DataGrid        http://www.eu-datagrid.org/
00003  *
00004  *   $Id: pdl.h,v 1.9 2003/07/08 14:22:54 venekamp Exp $
00005  *
00006  *   Copyright (c) 2003 by
00007  *      G.M. Venekamp <venekamp@nikhef.nl>
00008  *      NIKHEF Amsterdam, the Netherlands
00009  *
00010  *   This software is distributed under a BSD-style open source
00011  *   licence. For a complete description of the licence take a look
00012  *   at: http://eu-datagrid.web.cern.ch/eu-datagrid/license.html
00013  *
00014  */
00015 
00030 #ifndef _PDL_H
00031 #define _PDL_H
00032 
00033 #include <stdio.h>
00034 
00041 #undef TRUE
00042 #undef FALSE
00043 #undef BOOL
00044 #define TRUE 1
00045 #define FALSE (!TRUE)
00046 typedef char BOOL;
00047 
00048 
00052 typedef enum {
00053   PDL_UNKNOWN,  
00054   PDL_INFO,     
00055   PDL_WARNING,  
00056   PDL_ERROR,    
00057   PDL_SAME      
00058   //  Keep PDL_SAME last as it is used as a sentinal!
00059 } pdl_error_t;
00060 
00061 
00065 typedef enum {
00066   EVALUATION_START,    
00067   EVALUATION_SUCCESS,  
00068   EVALUATION_FAILURE   
00069 } plugin_status_t;
00070 
00071 
00083 typedef struct record_s {
00084   char* string;   
00085   int   lineno;   
00086 } record_t;
00087 
00088 
00094 typedef struct plugin_s {
00095   char* name;             
00096   char* args;             
00097   unsigned int lineno;    
00098   struct plugin_s* next;  
00099 } plugin_t;
00100 
00101 
00102 extern FILE* yyin;
00103 extern unsigned int lineno;
00104 
00105 extern int pdl_init(const char* name);
00106 extern const char *pdl_path(void);
00107 
00108 extern int yyparse(void);
00109 extern int yylex(void);
00110 extern int yyerror(const char*);
00111 extern const char* token_name(void);
00112 extern void set_yylval(record_t* r);
00113 
00114 extern const char* pdl_next_plugin(plugin_status_t status);
00115 extern void set_path(record_t* _path);
00116 extern record_t* concat_strings(record_t* s1, record_t* s2);
00117 extern const plugin_t* get_plugins(void);
00118 extern void warning(pdl_error_t error, const char* s, ...);
00119 
00120 #endif

Generated at Fri Jul 11 18:37:44 2003 for edg-lcmaps by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001