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

inffile.h
Go to the documentation of this file.
00001 /*
00002  *  ReactOS kernel
00003  *  Copyright (C) 2002, 2003 ReactOS Team
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 /* $Id: inffile.h 45685 2010-02-26 11:43:19Z gedmurphy $
00020  * COPYRIGHT:       See COPYING in the top level directory
00021  * PROJECT:         ReactOS text-mode setup
00022  * FILE:            subsys/system/usetup/infcache.h
00023  * PURPOSE:         INF file parser that caches contents of INF file in memory
00024  * PROGRAMMER:      Royce Mitchell III
00025  *                  Eric Kohl
00026  */
00027 
00028 #pragma once
00029 
00030 #define STATUS_BAD_SECTION_NAME_LINE   (0xC0700001)
00031 #define STATUS_SECTION_NAME_TOO_LONG   (0xC0700002)
00032 #define STATUS_WRONG_INF_STYLE         (0xC0700003)
00033 #define STATUS_NOT_ENOUGH_MEMORY       (0xC0700004)
00034 
00035 #define MAX_INF_STRING_LENGTH  512
00036 
00037 typedef PULONG HINF, *PHINF;
00038 
00039 typedef struct _INFCONTEXT
00040 {
00041   PVOID Inf;
00042 //  PVOID CurrentInf;
00043   PVOID Section;
00044   PVOID Line;
00045 } INFCONTEXT, *PINFCONTEXT;
00046 
00047 
00048 /* FUNCTIONS ****************************************************************/
00049 
00050 BOOLEAN
00051 InfOpenFile (PHINF InfHandle,
00052          PCSTR FileName,
00053          PULONG ErrorLine);
00054 
00055 VOID
00056 InfCloseFile (HINF InfHandle);
00057 
00058 
00059 BOOLEAN
00060 InfFindFirstLine (HINF InfHandle,
00061           PCSTR Section,
00062           PCSTR Key,
00063           PINFCONTEXT Context);
00064 
00065 BOOLEAN
00066 InfFindNextLine (PINFCONTEXT ContextIn,
00067          PINFCONTEXT ContextOut);
00068 
00069 BOOLEAN
00070 InfFindFirstMatchLine (PINFCONTEXT ContextIn,
00071                PCHAR Key,
00072                PINFCONTEXT ContextOut);
00073 
00074 BOOLEAN
00075 InfFindNextMatchLine (PINFCONTEXT ContextIn,
00076               PCHAR Key,
00077               PINFCONTEXT ContextOut);
00078 
00079 
00080 LONG
00081 InfGetLineCount (HINF InfHandle,
00082          PCHAR Section);
00083 
00084 LONG
00085 InfGetFieldCount (PINFCONTEXT Context);
00086 
00087 
00088 BOOLEAN
00089 InfGetBinaryField (PINFCONTEXT Context,
00090            ULONG FieldIndex,
00091            PUCHAR ReturnBuffer,
00092            ULONG ReturnBufferSize,
00093            PULONG RequiredSize);
00094 
00095 BOOLEAN
00096 InfGetIntField (PINFCONTEXT Context,
00097         ULONG FieldIndex,
00098         LONG *IntegerValue);
00099 
00100 BOOLEAN
00101 InfGetMultiSzField (PINFCONTEXT Context,
00102             ULONG FieldIndex,
00103             PCHAR ReturnBuffer,
00104             ULONG ReturnBufferSize,
00105             PULONG RequiredSize);
00106 
00107 BOOLEAN
00108 InfGetStringField (PINFCONTEXT Context,
00109            ULONG FieldIndex,
00110            PCHAR ReturnBuffer,
00111            ULONG ReturnBufferSize,
00112            PULONG RequiredSize);
00113 
00114 
00115 
00116 BOOLEAN
00117 InfGetData (PINFCONTEXT Context,
00118         PCHAR *Key,
00119         PCHAR *Data);
00120 
00121 BOOLEAN
00122 InfGetDataField (PINFCONTEXT Context,
00123          ULONG FieldIndex,
00124          PCSTR *Data);
00125 
00126 /* EOF */

Generated on Sat May 26 2012 04:16:54 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.