X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=perl%2FIDZebra.i;h=8cd8382a9badba67319531ad5232c1f4c67a8a67;hb=138b954cffe470bf0e62d812cae6e859aa57cdb5;hp=3878c0404020490cb2ef8db1ab51302bfd13e063;hpb=b9eea3a2ebd3feae59bc8c01a70dbe8b9e0b807a;p=idzebra-moved-to-github.git diff --git a/perl/IDZebra.i b/perl/IDZebra.i index 3878c04..8cd8382 100644 --- a/perl/IDZebra.i +++ b/perl/IDZebra.i @@ -289,11 +289,12 @@ void zebra_repository_show (ZebraHandle zh); If not, and match_criteria is provided, then sysno is guessed If not, and a record is provided, then sysno is got from there */ +%apply int *REFERENCE { int *sysno }; %name(insert_record) int zebra_insert_record (ZebraHandle zh, recordGroup *rGroup, const char *recordType, - int sysno, + int *sysno, const char *match, const char *fname, const char *buf, @@ -304,7 +305,7 @@ int zebra_insert_record (ZebraHandle zh, int zebra_update_record (ZebraHandle zh, recordGroup *rGroup, const char *recordType, - int sysno, + int *sysno, const char *match, const char *fname, const char *buf, @@ -315,7 +316,7 @@ int zebra_update_record (ZebraHandle zh, int zebra_delete_record (ZebraHandle zh, recordGroup *rGroup, const char *recordType, - int sysno, + int *sysno, const char *match, const char *fname, const char *buf, @@ -323,14 +324,14 @@ int zebra_delete_record (ZebraHandle zh, int force_update); -/* == Search (zebra_api_ext.c) ============================================= */ - +/* == Search (zebraapi.c) ================================================== */ +%include "typemaps.i" +%apply int *REFERENCE { int *hits }; %name(search_PQF) int zebra_search_PQF (ZebraHandle zh, - ODR odr_input, ODR odr_output, const char *pqf_query, - const char *setname); - + const char *setname, + int *hits); /* == YAZ - query tools ==================================================== */ @@ -372,8 +373,15 @@ int zebra_deleleResultSet(ZebraHandle zh, int function, int *statuses); +/* Resultset terms */ +%name(resultSetTerms) +int zebra_resultSetTerms (ZebraHandle zh, const char *setname, + int no, int *REFERENCE, + int *REFERENCE, char *out, int *REFERENCE); + /* == Sort ================================================================= */ -int sort (ZebraHandle zh, +%name(sort) +int zebra_sort_by_specstr (ZebraHandle zh, ODR stream, const char *sort_spec, const char *output_setname, @@ -389,6 +397,10 @@ void zebra_scan_PQF (ZebraHandle zh, scanEntry *getScanEntry(ScanObj *so, int pos); +%typemap(in) int * (int dvalue); +%typemap(argout) int *; + + /* Admin functionality */ /* %name(admin_start) void zebra_admin_start (ZebraHandle zh);