Main Page | Modules | Data Structures | File List | Data Fields | Globals | Examples

njb_error.h

00001 #ifndef __NJB__ERROR__H
00002 #define __NJB__ERROR__H
00003 
00004 #include <stdio.h>
00005 #include "libnjb.h"
00006 #include "njbusb.h"
00007 
00012 #define EO_USBCTL       1       
00013 #define EO_USBBLK       2       
00014 #define EO_RDSHORT      3       
00015 #define EO_NOMEM        4       
00016 #define EO_BADDATA      5       
00017 #define EO_EOM          6       
00018 #define EO_BADSTATUS    7       
00019 #define EO_BADNJBID     8       
00020 #define EO_BADCOUNT     9       
00021 #define EO_WRSHORT      10      
00022 #define EO_NULLTMP      11      
00023 #define EO_TOOBIG       12      
00024 #define EO_CANTMOVE     13      
00025 #define EO_TIMEOUT      14      
00026 #define EO_ABORTED      15      
00027 #define EO_EOF          16      
00028 #define EO_DEVICE       17      
00029 #define EO_INIT         18      
00030 #define EO_TMPFILE      19      
00031 #define EO_XFERDENIED   20      
00032 #define EO_WRFILE       21      
00033 #define EO_XFERERROR    22      
00034 #define EO_SRCFILE      23      
00035 #define EO_INVALID      24      
00036 #define EO_AGAIN        25      
00037 #define EO_BAD_NJB1_REPLACE 26  
00040 #define MAX_ERRLEN      128
00041 #define MAX_ERRORS      16
00042 
00043 typedef struct njb_error_stack_struct njb_error_stack_t; 
00047 struct njb_error_stack_struct {
00048   int idx; 
00049   int count; 
00050   char **msg; 
00051 };
00052 
00053 void initialize_errorstack(njb_t *njb);
00054 void destroy_errorstack(njb_t *njb);
00055 void njb_error_add (njb_t *njb, const char *sub, int err);
00056 void njb_error_add2 (njb_t *njb, const char *sub, const char *prefix, int err);
00057 void njb_error_add3 (njb_t *njb, const char *sub, const char *prefix, const 
00058         char *suffix, int err);
00059 void njb_error_add_string (njb_t *njb, const char *sub, const char* error);
00060 void njb_error_clear (njb_t *njb);
00061 
00062 #define NJB_ERROR(a,b) njb_error_add(a,subroutinename,b)
00063 #define NJB_ERROR2(a,b,c) njb_error_add2(a,subroutinename,b,c)
00064 #define NJB_ERROR3(a,b,c,d) njb_error_add3(a,subroutinename,b,c,d)
00065 
00066 #endif
00067 

Generated on Fri Oct 14 08:59:56 2005 for libnjb by  doxygen 1.3.9.1