X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Frecord.h;h=0f1f2496cdb29b4b9d95bfc884e7d4f09e7f78ef;hb=85b1f355522cc620452552d76fd517f089c98ab2;hp=fb6f8e121e07d6894d9f14972f85120048221abf;hpb=446f32183265d59ee79e2859376c598fa24408e0;p=pazpar2-moved-to-github.git diff --git a/src/record.h b/src/record.h index fb6f8e1..0f1f249 100644 --- a/src/record.h +++ b/src/record.h @@ -1,5 +1,5 @@ /* This file is part of Pazpar2. - Copyright (C) 2006-2012 Index Data + Copyright (C) Index Data Pazpar2 is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free @@ -27,12 +27,15 @@ struct conf_service; union data_types { struct { const char *disp; + const char *norm; const char *sort; + const char *snippet; } text; struct { int min; int max; } number; + double fnumber; }; @@ -64,6 +67,8 @@ struct record { struct record *next; // client result set position; int position; + // score for ranking, either native or our TF/IDF, or other + double score; // checksum unsigned checksum; }; @@ -81,7 +86,9 @@ struct record_cluster // Array mirrors list of metadata fields in config struct record_metadata **metadata; union data_types **sortkeys; - char *merge_key; + // char *merge_key; + struct record_metadata_attr *merge_keys; + int relevance_score; int *term_frequency_vec; float *term_frequency_vecf; @@ -90,6 +97,8 @@ struct record_cluster WRBUF relevance_explain1; WRBUF relevance_explain2; struct record *records; + struct record_cluster *sorted_next; + struct reclist_sortparms *sort_parms; }; #endif // RECORD_H