home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c160 / 1.ddi / H / M4.H < prev    next >
Encoding:
C/C++ Source or Header  |  1990-06-22  |  1.4 KB  |  51 lines

  1.  
  2. /* m4.h   (c)Copyright Sequiter Software Inc., 1987-1990. All rights reserved. */
  3.  
  4. extern  char * m4name(int) ;
  5. extern  int    m4open(int) ;
  6.  
  7. typedef struct memo_block_st
  8. {
  9.    short minus_one ;
  10.    short start_pos ;
  11.    long  num_chars ;
  12. }  MEMO_BLOCK ;
  13.  
  14. typedef  struct memo_header_st
  15. {
  16.    long  next_block ;
  17.    long  zero ;
  18.    char  file_name[8] ;
  19.    short zero2 ;
  20.    short x102 ;
  21.    short block_size ;
  22.    short zero3 ;
  23. }  MEMO_HEADER ;
  24.  
  25.  
  26. /* For 'm4write' */
  27.  
  28. #define  CHAIN_SIZE    ((unsigned int)(sizeof(long)*2))
  29.  
  30. typedef  struct free_area_st
  31. {
  32.    long  next ;       /* The next free block area */
  33.    long  num ;        /* The number of free blocks in the free block area */
  34.    long  to_disk ;    /* TRUE if this information needs to be written to disk */
  35.    long  block_no ;   /* The current block number */
  36. }  FREE_AREA ;
  37.  
  38. typedef  struct m_st
  39. {
  40.    FREE_AREA  prev ;        /* The previous free area */
  41.    FREE_AREA  cur ;         /* The current free area */
  42.  
  43.    int        block_size ;  /* The memo block size */
  44.    int        hand ;        /* The file handle */
  45.    int        base_ref ;    /* The database reference number of the memo file */
  46.  
  47.    int        write_done ;  /* Has the information been written */
  48.    int        free_done ;   /* Has the old information been freed */
  49. }  M ;  /* Memo Write Status Information */
  50.  
  51.