1 /* @(#)volume.h	1.1 00/03/05 joerg */
2 /*
3  * hfsutils - tools for reading and writing Macintosh HFS volumes
4  * Copyright (C) 1996, 1997 Robert Leslie
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19  */
20 
21 int v_catsearch		__PR((hfsvol *, long, char *, CatDataRec *, char *, node *));
22 int v_extsearch		__PR((hfsfile *, unsigned int, ExtDataRec *, node *));
23 
24 int v_getthread		__PR((hfsvol *, long, CatDataRec *, node *, int));
25 
26 # define v_getdthread(vol, id, thread, np)  \
27     v_getthread(vol, id, thread, np, cdrThdRec)
28 # define v_getfthread(vol, id, thread, np)  \
29     v_getthread(vol, id, thread, np, cdrFThdRec)
30 
31 int v_putcatrec		__PR((CatDataRec *, node *));
32 int v_putextrec		__PR((ExtDataRec *, node *));
33 
34 int v_allocblocks	__PR((hfsvol *, ExtDescriptor *));
35 void v_freeblocks	__PR((hfsvol *, ExtDescriptor *));
36 
37 int v_resolve		__PR((hfsvol **, char *, CatDataRec *, long *, char *, node *));
38 
39 void v_destruct		__PR((hfsvol *));
40 int v_getvol		__PR((hfsvol **));
41 int v_flush		__PR((hfsvol *, int));
42 
43 int v_adjvalence	__PR((hfsvol *, long, int, int));
44 int v_newfolder		__PR((hfsvol *, long, char *));
45 
46 int v_scavenge		__PR((hfsvol *));
47