home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / TRSICAT.LZX / CATS_CD2_TRSI / Inc&AD2.1 / includes / dos / exall.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-09-11  |  1.6 KB  |  69 lines

  1. #ifndef DOS_EXALL_H
  2. #define DOS_EXALL_H
  3. /*
  4. **
  5. **    $VER: exall.h 36.5 (12.07.90)
  6. **    Includes Release 38.56
  7. **
  8. **    include file for ExAll() data structures
  9. **
  10. **    (C) Copyright 1989-1992 Commodore-Amiga, Inc.
  11. **        All Rights Reserved
  12. **
  13. */
  14.  
  15. #ifndef EXEC_TYPES_H
  16. #include "exec/types.h"
  17. #endif
  18.  
  19. #ifndef UTILITY_HOOKS_H
  20. #include "utility/hooks.h"
  21. #endif
  22.  
  23. /* values that can be passed for what data you want from ExAll() */
  24. /* each higher value includes those below it (numerically)     */
  25. /* you MUST chose one of these values */
  26. #define    ED_NAME        1
  27. #define    ED_TYPE        2
  28. #define ED_SIZE        3
  29. #define ED_PROTECTION    4
  30. #define ED_DATE        5
  31. #define ED_COMMENT    6
  32.  
  33. /*
  34.  *   Structure in which exall results are returned in.    Note that only the
  35.  *   fields asked for will exist!
  36.  */
  37.  
  38. struct ExAllData {
  39.     struct ExAllData *ed_Next;
  40.     UBYTE  *ed_Name;
  41.     LONG    ed_Type;
  42.     ULONG    ed_Size;
  43.     ULONG    ed_Prot;
  44.     ULONG    ed_Days;
  45.     ULONG    ed_Mins;
  46.     ULONG    ed_Ticks;
  47.     UBYTE  *ed_Comment;    /* strings will be after last used field */
  48. };
  49.  
  50. /*
  51.  *   Control structure passed to ExAll.  Unused fields MUST be initialized to
  52.  *   0, expecially eac_LastKey.
  53.  *
  54.  *   eac_MatchFunc is a hook (see utility.library documentation for usage)
  55.  *   It should return true if the entry is to returned, false if it is to be
  56.  *   ignored.
  57.  *
  58.  *   This structure MUST be allocated by AllocDosObject()!
  59.  */
  60.  
  61. struct ExAllControl {
  62.     ULONG    eac_Entries;     /* number of entries returned in buffer      */
  63.     ULONG    eac_LastKey;     /* Don't touch inbetween linked ExAll calls! */
  64.     UBYTE  *eac_MatchString; /* wildcard string for pattern match or NULL */
  65.     struct Hook *eac_MatchFunc; /* optional private wildcard function     */
  66. };
  67.  
  68. #endif /* DOS_EXALL_H */
  69.