Added UDF filesystem recognizer (still incomplete).
[reactos.git] / reactos / drivers / fs / fs_rec / fs_rec.h
1 /*
2 * ReactOS kernel
3 * Copyright (C) 2002,2003 ReactOS Team
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 */
19 /* $Id: fs_rec.h,v 1.3 2003/01/16 11:58:15 ekohl Exp $
20 *
21 * COPYRIGHT: See COPYING in the top level directory
22 * PROJECT: ReactOS kernel
23 * FILE: drivers/fs/fs_rec/fs_rec.h
24 * PURPOSE: Filesystem recognizer driver
25 * PROGRAMMER: Eric Kohl
26 */
27
28
29 /* Filesystem types (add new filesystems here)*/
30
31 #define FS_TYPE_UNUSED 0
32 #define FS_TYPE_VFAT 1
33 #define FS_TYPE_NTFS 2
34 #define FS_TYPE_CDFS 3
35 #define FS_TYPE_UDFS 4
36
37
38 typedef struct _DEVICE_EXTENSION
39 {
40 ULONG FsType;
41 } DEVICE_EXTENSION, *PDEVICE_EXTENSION;
42
43
44 /* blockdev.c */
45
46 NTSTATUS
47 FsRecReadSectors(IN PDEVICE_OBJECT DeviceObject,
48 IN ULONG DiskSector,
49 IN ULONG SectorCount,
50 IN ULONG SectorSize,
51 IN OUT PUCHAR Buffer);
52
53 NTSTATUS
54 FsRecDeviceIoControl(IN PDEVICE_OBJECT DeviceObject,
55 IN ULONG ControlCode,
56 IN PVOID InputBuffer,
57 IN ULONG InputBufferSize,
58 IN OUT PVOID OutputBuffer,
59 IN OUT PULONG OutputBufferSize);
60
61
62 /* cdfs.c */
63
64 NTSTATUS
65 FsRecCdfsFsControl(IN PDEVICE_OBJECT DeviceObject,
66 IN PIRP Irp);
67
68
69 /* fat.c */
70
71 NTSTATUS
72 FsRecVfatFsControl(IN PDEVICE_OBJECT DeviceObject,
73 IN PIRP Irp);
74
75
76 /* ntfs.c */
77
78 NTSTATUS
79 FsRecNtfsFsControl(IN PDEVICE_OBJECT DeviceObject,
80 IN PIRP Irp);
81
82
83 /* udfs.c */
84
85 NTSTATUS
86 FsRecUdfsFsControl(IN PDEVICE_OBJECT DeviceObject,
87 IN PIRP Irp);
88
89 /* EOF */