ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

fs.h
Go to the documentation of this file.
00001 /*
00002  *  FreeLoader
00003  *  Copyright (C) 1998-2003  Brian Palmer  <brianp@sginet.com>
00004  *
00005  *  This program is free software; you can redistribute it and/or modify
00006  *  it under the terms of the GNU General Public License as published by
00007  *  the Free Software Foundation; either version 2 of the License, or
00008  *  (at your option) any later version.
00009  *
00010  *  This program is distributed in the hope that it will be useful,
00011  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013  *  GNU General Public License for more details.
00014  *
00015  *  You should have received a copy of the GNU General Public License along
00016  *  with this program; if not, write to the Free Software Foundation, Inc.,
00017  *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
00018  */
00019 
00020 #pragma once
00021 
00022 typedef struct tagDEVVTBL
00023 {
00024   ARC_CLOSE Close;
00025   ARC_GET_FILE_INFORMATION GetFileInformation;
00026   ARC_OPEN Open;
00027   ARC_READ Read;
00028   ARC_SEEK Seek;
00029   LPCWSTR ServiceName;
00030 } DEVVTBL;
00031 
00032 #define FS_FAT          1
00033 #define FS_NTFS         2
00034 #define FS_EXT2         3
00035 #define FS_ISO9660      5
00036 
00037 #define PFILE           ULONG
00038 
00039 VOID FsRegisterDevice(CHAR* Prefix, const DEVVTBL* FuncTable);
00040 LPCWSTR FsGetServiceName(ULONG FileId);
00041 VOID FsSetDeviceSpecific(ULONG FileId, VOID* Specific);
00042 VOID* FsGetDeviceSpecific(ULONG FileId);
00043 ULONG FsGetDeviceId(ULONG FileId);
00044 VOID FsInit(VOID);
00045 
00046 LONG ArcClose(ULONG FileId);
00047 LONG ArcGetFileInformation(ULONG FileId, FILEINFORMATION* Information);
00048 LONG ArcOpen(CHAR* Path, OPENMODE OpenMode, ULONG* FileId);
00049 LONG ArcRead(ULONG FileId, VOID* Buffer, ULONG N, ULONG* Count);
00050 LONG ArcSeek(ULONG FileId, LARGE_INTEGER* Position, SEEKMODE SeekMode);
00051 
00052 VOID    FileSystemError(PCSTR ErrorString);
00053 PFILE   FsOpenFile(PCSTR FileName);
00054 VOID    FsCloseFile(PFILE FileHandle);
00055 BOOLEAN FsReadFile(PFILE FileHandle, ULONG BytesToRead, ULONG* BytesRead, PVOID Buffer);
00056 ULONG       FsGetFileSize(PFILE FileHandle);
00057 VOID    FsSetFilePointer(PFILE FileHandle, ULONG NewFilePointer);
00058 ULONG       FsGetNumPathParts(PCSTR Path);
00059 VOID    FsGetFirstNameFromPath(PCHAR Buffer, PCSTR Path);
00060 
00061 #define MAX_FDS 60

Generated on Sun May 27 2012 04:19:14 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.