00001
00007 #ifndef zes_pset_H
00008 #define zes_pset_H
00009
00010 #include <yaz/odr.h>
00011 #include <yaz/z-core.h>
00012 #ifdef __cplusplus
00013 extern "C" {
00014 #endif
00015
00016 typedef struct Z_PRPersistentResultSetEsRequest Z_PRPersistentResultSetEsRequest;
00017 YAZ_EXPORT int z_PRPersistentResultSetEsRequest (ODR o, Z_PRPersistentResultSetEsRequest **p, int opt, const char *name);
00018
00019 typedef struct Z_PRPersistentResultSetTaskPackage Z_PRPersistentResultSetTaskPackage;
00020 YAZ_EXPORT int z_PRPersistentResultSetTaskPackage (ODR o, Z_PRPersistentResultSetTaskPackage **p, int opt, const char *name);
00021
00022 typedef struct Z_PRPersistentResultSet Z_PRPersistentResultSet;
00023 YAZ_EXPORT int z_PRPersistentResultSet (ODR o, Z_PRPersistentResultSet **p, int opt, const char *name);
00024
00025 typedef struct Z_PROriginPartNotToKeep Z_PROriginPartNotToKeep;
00026 YAZ_EXPORT int z_PROriginPartNotToKeep (ODR o, Z_PROriginPartNotToKeep **p, int opt, const char *name);
00027
00028 typedef struct Z_PRTargetPart Z_PRTargetPart;
00029 YAZ_EXPORT int z_PRTargetPart (ODR o, Z_PRTargetPart **p, int opt, const char *name);
00030 #ifdef __cplusplus
00031 }
00032 #endif
00033 #ifdef __cplusplus
00034 extern "C" {
00035 #endif
00036 struct Z_PRPersistentResultSetEsRequest {
00037 Odr_null *toKeep;
00038 Z_PROriginPartNotToKeep *notToKeep;
00039 };
00040
00041 struct Z_PRPersistentResultSetTaskPackage {
00042 Odr_null *originPart;
00043 Z_PRTargetPart *targetPart;
00044 };
00045
00046 struct Z_PRPersistentResultSet {
00047 int which;
00048 union {
00049 Z_PRPersistentResultSetEsRequest *esRequest;
00050 Z_PRPersistentResultSetTaskPackage *taskPackage;
00051 #define Z_PRPersistentResultSet_esRequest 1
00052 #define Z_PRPersistentResultSet_taskPackage 2
00053 } u;
00054 };
00055
00056 struct Z_PROriginPartNotToKeep {
00057 Z_InternationalString *originSuppliedResultSet;
00058 #define Z_PROriginPartNotToKeep_replace 1
00059 #define Z_PROriginPartNotToKeep_append 2
00060 int *replaceOrAppend;
00061 };
00062
00063 struct Z_PRTargetPart {
00064 Z_InternationalString *targetSuppliedResultSet;
00065 int *numberOfRecords;
00066 };
00067
00068 #ifdef __cplusplus
00069 }
00070 #endif
00071 #endif