xdiff / xtypes.hon commit Merge branch 'jh/trace2-pretty-output' (93fc876)
   1/*
   2 *  LibXDiff by Davide Libenzi ( File Differential Library )
   3 *  Copyright (C) 2003  Davide Libenzi
   4 *
   5 *  This library is free software; you can redistribute it and/or
   6 *  modify it under the terms of the GNU Lesser General Public
   7 *  License as published by the Free Software Foundation; either
   8 *  version 2.1 of the License, or (at your option) any later version.
   9 *
  10 *  This library is distributed in the hope that it will be useful,
  11 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  12 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  13 *  Lesser General Public License for more details.
  14 *
  15 *  You should have received a copy of the GNU Lesser General Public
  16 *  License along with this library; if not, see
  17 *  <http://www.gnu.org/licenses/>.
  18 *
  19 *  Davide Libenzi <davidel@xmailserver.org>
  20 *
  21 */
  22
  23#if !defined(XTYPES_H)
  24#define XTYPES_H
  25
  26
  27
  28typedef struct s_chanode {
  29        struct s_chanode *next;
  30        long icurr;
  31} chanode_t;
  32
  33typedef struct s_chastore {
  34        chanode_t *head, *tail;
  35        long isize, nsize;
  36        chanode_t *ancur;
  37        chanode_t *sncur;
  38        long scurr;
  39} chastore_t;
  40
  41typedef struct s_xrecord {
  42        struct s_xrecord *next;
  43        char const *ptr;
  44        long size;
  45        unsigned long ha;
  46} xrecord_t;
  47
  48typedef struct s_xdfile {
  49        chastore_t rcha;
  50        long nrec;
  51        unsigned int hbits;
  52        xrecord_t **rhash;
  53        long dstart, dend;
  54        xrecord_t **recs;
  55        char *rchg;
  56        long *rindex;
  57        long nreff;
  58        unsigned long *ha;
  59} xdfile_t;
  60
  61typedef struct s_xdfenv {
  62        xdfile_t xdf1, xdf2;
  63} xdfenv_t;
  64
  65
  66
  67#endif /* #if !defined(XTYPES_H) */