2 * This file has been modified for the cdrkit suite.
4 * The behaviour and appearence of the program code below can differ to a major
5 * extent from the version distributed by the original author(s).
7 * For details, see Changelog file distributed with the cdrkit package. If you
8 * received this file from another source then ask the distributing person for
9 * a log of modifications.
13 /* @(#)volume.h 1.1 00/03/05 joerg */
15 * hfsutils - tools for reading and writing Macintosh HFS volumes
16 * Copyright (C) 1996, 1997 Robert Leslie
18 * This program is free software; you can redistribute it and/or modify
19 * it under the terms of the GNU General Public License as published by
20 * the Free Software Foundation; either version 2 of the License, or
21 * (at your option) any later version.
23 * This program is distributed in the hope that it will be useful,
24 * but WITHOUT ANY WARRANTY; without even the implied warranty of
25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26 * GNU General Public License for more details.
28 * You should have received a copy of the GNU General Public License
29 * along with this program; if not, write to the Free Software
30 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
33 int v_catsearch(hfsvol *, long, char *, CatDataRec *, char *, node *);
34 int v_extsearch(hfsfile *, unsigned int, ExtDataRec *, node *);
36 int v_getthread(hfsvol *, long, CatDataRec *, node *, int);
38 # define v_getdthread(vol, id, thread, np) \
39 v_getthread(vol, id, thread, np, cdrThdRec)
40 # define v_getfthread(vol, id, thread, np) \
41 v_getthread(vol, id, thread, np, cdrFThdRec)
43 int v_putcatrec(CatDataRec *, node *);
44 int v_putextrec(ExtDataRec *, node *);
46 int v_allocblocks(hfsvol *, ExtDescriptor *);
47 void v_freeblocks(hfsvol *, ExtDescriptor *);
49 int v_resolve(hfsvol **, char *, CatDataRec *, long *, char *, node *);
51 void v_destruct(hfsvol *);
52 int v_getvol(hfsvol **);
53 int v_flush(hfsvol *, int);
55 int v_adjvalence(hfsvol *, long, int, int);
56 int v_newfolder(hfsvol *, long, char *);
58 int v_scavenge(hfsvol *);