]> git.sesse.net Git - pgn-extract/blobdiff - typedef.h
Push through a computer/human flag to the binary output.
[pgn-extract] / typedef.h
index df0d81dfd18ad60314e54995b403dcff0f8b17e2..93978bdb5bd11dab4e3b1698dab334ab41dac9de 100644 (file)
--- a/typedef.h
+++ b/typedef.h
@@ -146,6 +146,12 @@ typedef struct {
      * 0 => no error found.
      */
     int error_ply;
+    /* File number this game comes from. */
+    int file_number;
+    /* File position of the first byte of the game, or -1
+     * if unknown.
+     */
+    long start_position;
 } Game;
 
 /* Define a type to distinguish between CHECK files, NORMAL files,
@@ -267,12 +273,26 @@ typedef struct {
     Boolean output_total_plycount;
     /* Whether to add a HashCode tag. */
     Boolean add_hashcode_tag;
+    /* Whether to dump ECO data to stdout after loading.*/
+    Boolean dump_eco;
     /* The comment to use for position matches, if required. */
     const char *position_match_comment;
     /* Current input file name. */
     const char *current_input_file;
     /* Whether this is a CHECKFILE or a NORMALFILE. */
     SourceFileType current_file_type;
+    /* Current file number. Used to disambiguate PGN file positions. */
+    int current_file_number;
+    int start_file_number;
+    /* Byte positions to scan to and from in the PGN file.
+     * Starting in the middle of a game will yield unexpected
+     * results.
+     */
+    long start_position;
+    long end_position;
+    /* Whether the games are assumed played by computers.
+     * Passed through verbatim to the binary format. */
+    int computer_flag;
     /* File of ECO lines. */
     const char *eco_file;
     /* Where to write the extracted games. */