X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=ir-tclp.h;h=0898d3a3383a019aff4a564e03a133a3a8bfaada;hb=74c24ba9308a0648b21838b1bfda20d8540d8d4d;hp=8ad98d22b161b082cc8db32c24111b52c723428a;hpb=d156d1648f315bff34ee465d4de4dea5daa0ca4d;p=ir-tcl-moved-to-github.git diff --git a/ir-tclp.h b/ir-tclp.h index 8ad98d2..0898d3a 100644 --- a/ir-tclp.h +++ b/ir-tclp.h @@ -5,7 +5,19 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: ir-tclp.h,v $ - * Revision 1.8 1995-06-14 13:37:18 adam + * Revision 1.11 1995-06-20 08:07:35 adam + * New setting: failInfo. + * Working on better cancel mechanism. + * + * Revision 1.10 1995/06/16 12:28:20 adam + * Implemented preferredRecordSyntax. + * Minor changes in diagnostic handling. + * Record list deleted when connection closes. + * + * Revision 1.9 1995/06/14 15:08:01 adam + * Bug fix in cascade-target-list. Uses yaz-version.h. + * + * Revision 1.8 1995/06/14 13:37:18 adam * Setting recordType implemented. * Setting implementationVersion implemented. * Settings implementationId / implementationName edited. @@ -55,6 +67,7 @@ #include #endif +#include #include #include #include @@ -65,8 +78,8 @@ typedef struct { char **databaseNames; int num_databaseNames; - char *queryType; + enum oid_value *preferredRecordSyntax; int replaceIndicator; char *referenceId; @@ -79,8 +92,9 @@ typedef struct { int ref_count; char *cs_type; - char *protocol_type; + int protocol_type; int connectFlag; + int failInfo; COMSTACK cs_link; int preferredMessageSize; @@ -128,6 +142,11 @@ typedef struct { IrTcl_SetCObj set_inher; } IrTcl_Obj; +typedef struct { + int condition; + char *addinfo; +} IrTcl_Diagnostic; + typedef struct IrTcl_RecordList_ { int no; int which; @@ -138,9 +157,9 @@ typedef struct IrTcl_RecordList_ { enum oid_value type; } dbrec; struct { - int condition; - char *addinfo; - } diag; + int num; + IrTcl_Diagnostic *list; + } surrogateDiagnostics; } u; struct IrTcl_RecordList_ *next; } IrTcl_RecordList; @@ -157,8 +176,8 @@ typedef struct IrTcl_SetObj_ { char *setName; int recordFlag; int which; - int condition; - char *addinfo; + int nonSurrogateDiagnosticNum; + IrTcl_Diagnostic *nonSurrogateDiagnosticList; IrTcl_RecordList *record_list; IrTcl_SetCObj set_inher; } IrTcl_SetObj; @@ -171,16 +190,12 @@ typedef struct IrTcl_ScanEntry_ { int globalOccurrences; } term; struct { - int condition; - char *addinfo; + IrTcl_Diagnostic *list; + int num; } diag; } u; } IrTcl_ScanEntry; -typedef struct IrTcl_ScanDiag_ { - int dummy; -} IrTcl_ScanDiag; - typedef struct IrTcl_ScanObj_ { IrTcl_Obj *parent; int stepSize; @@ -198,7 +213,8 @@ typedef struct IrTcl_ScanObj_ { int num_diagRecs; IrTcl_ScanEntry *entries; - IrTcl_ScanDiag *nonSurrogateDiagnostics; + IrTcl_Diagnostic *nonSurrogateDiagnosticList; + int nonSurrogateDiagnosticNum; } IrTcl_ScanObj; struct ir_named_entry { @@ -209,4 +225,10 @@ struct ir_named_entry { int ir_tcl_get_marc (Tcl_Interp *interp, const char *buf, int argc, char **argv); char *ir_tcl_fread_marc (FILE *inf, size_t *size); + +#define IR_TCL_FAIL_CONNECT 1 +#define IR_TCL_FAIL_READ 2 +#define IR_TCL_FAIL_WRITE 3 +#define IR_TCL_FAIL_IN_APDU 4 +#define IR_TCL_FAIL_UNKNOWN_APDU 5 #endif