home *** CD-ROM | disk | FTP | other *** search
- /* Header file for DiscIndex
- * (c) Neil A Carson 1994 A.D.
- */
-
- #ifndef __discindex_h
- #define __discindex_h
-
- #ifndef __wimp_h
- #include "wimp.h"
- #endif
-
- /* Types for various things
- */
-
- typedef struct
- {
- int size;
- int type;
- char name[32];
- char desc[32];
- } file_type;
-
- typedef struct disc_struct
- {
- struct disc_struct *next;
- file_type *files;
- int used;
- int no;
- char disc_name[32];
- char disc_desc[32];
- } disc_type;
-
- typedef struct
- {
- int no;
- disc_type discs;
- } var_type;
-
- extern var_type records;
-
- typedef struct
- {
- enum
- {
- disc_name = 1,
- disc_desc = 2,
- file_name = 4,
- file_desc = 8
- } fields;
- BOOL case_sensitive;
- char string[32];
- } search_win_type;
-
- typedef enum
- {
- show_fname = 1,
- match_dname = 2,
- match_ddesc = 4,
- match_fname = 8,
- match_fdesc = 16
- } match_type;
-
- typedef struct
- {
- int no;
- int disc_nos[16];
- int file_nos[16];
- match_type matches[16];
- } match_win_type;
-
- typedef struct
- {
- char drive[32];
- enum
- {
- directories = 1,
- applications = 2,
- files_apps = 4,
- files = 8,
- root_only = 16
- } type;
- BOOL dismount;
- } scan_win_type;
-
- typedef struct
- {
- char name[255];
- } xfer_send_type;
-
- typedef struct
- {
- int load;
- int exec;
- int len;
- int attributes;
- int type;
- char name[32];
- } os_gbpb_block;
-
- typedef void (*recurse_proc) (char *, os_gbpb_block *);
-
- /* Globally callable functions
- */
- void mem_man_init(void);
- disc_type *disc_create(void);
- int disc_destroy(int no);
- disc_type *disc_locate(int no);
- extern void recurse(char *source_dir, recurse_proc);
- extern void set_current_disc(int no);
- extern void mem_free(void);
- extern BOOL disc_insert(int off);
-
- #endif
-
-