/* file cortabstr2.h */

/*************************************************************************/
/* structure for tallying correspondences                                */
/* for each entry,                                                       */
/*   lval[] is an integer string of left-hand phone codes                */
/*   rval[] is an integer string of right-rand phone codes               */
/*   fom is a rating of some figure of merit                             */
/*   freq is the frequency of occurrence                                 */
/* for the table as a whole,                                             */
/* *pcd_l and *pcd_r are pcodes for lval[] and rval[], respectively.     */
/* nsaved is the number of entries saved.                                */
/* nover is the number of entries not saved (list too short).            */
/* corres[k] is a list of correspondence entries w/frequency.            */
/*************************************************************************/

#if !defined(MAX_CORRESPONDENCES)
#define MAX_CORRESPONDENCES 2000
#endif

#if !defined(MAX_CORRES_SYMBS)
#define MAX_CORRES_SYMBS 12
#endif

#if !defined(CORTABSTR2_HEADER)
#define CORTABSTR2_HEADER

/* A correspondence is represented as lval:rval */
/* where lval and rval are integer strings      */
  typedef struct
    {WCHAR_T lval[MAX_CORRES_SYMBS], rval[MAX_CORRES_SYMBS];
     double fom;
     long unsigned int freq;
    } CORRESPONDENCE;

  typedef struct
    {pcodeset  *pcd_l, *pcd_r;
     long int nsaved;
     long int nover;
     CORRESPONDENCE corres[MAX_CORRESPONDENCES];
    } CORRES_TALLY2_STR;

#endif
