Ignore:
Timestamp:
Jun 1, 2000, 1:28:48 PM (25 years ago)
Author:
sandervl
Message:

Rewrote file io apis

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/oslibdos.h

    r3593 r3642  
    1 /* $Id: oslibdos.h,v 1.15 2000-05-23 18:45:13 sandervl Exp $ */
     1/* $Id: oslibdos.h,v 1.16 2000-06-01 11:28:48 sandervl Exp $ */
    22
    33/*
     
    1313#define __OSLIBDOS_H__
    1414
     15
     16void  OSLibInitWSeBFileIO();
    1517
    1618DWORD OSLibDosAliasMem(LPVOID pb, ULONG cb, LPVOID *ppbAlias, ULONG fl);
     
    6870DWORD OSLibDosOpen(char *lpszFileName, DWORD flags);
    6971DWORD OSLibDosClose(DWORD hFile);
    70 DWORD OSLibDosGetFileSize(DWORD hFile);
    71 DWORD OSLibDosRead(DWORD hFile, LPVOID lpBuffer, DWORD size, DWORD *nrBytesRead);
    72 DWORD OSLibDosWrite(DWORD hFile, LPVOID lpBuffer, DWORD size, DWORD *nrBytesWritten);
    73 DWORD OSLibDosDelete(char *lpszFileName);
     72BOOL OSLibDosDelete(char *lpszFileName);
    7473
    7574#define OSLIB_SETPTR_FILE_CURRENT       1
     
    8685DWORD OSLibDosSearchPath(DWORD cmd, char *path, char *name, char *full_name, DWORD length_fullname);
    8786
    88 
    89 DWORD OSLibDosCreate(CHAR *lpFileName,
    90                      DWORD dwAccess,
    91                      DWORD dwShare,
    92                      LPSECURITY_ATTRIBUTES lpSecurityAttributes,
    93                      DWORD dwCreation,
    94                      DWORD dwFlags,
    95                      HANDLE hTemplate,
    96                      DWORD *dwFile);
    97 
    98 DWORD OSLibDosResetBuffer(DWORD hFile);
     87DWORD OSLibDosCreateFile(CHAR *lpFileName, DWORD dwAccess,
     88                         DWORD dwShare, LPSECURITY_ATTRIBUTES lpSecurityAttributes,
     89                         DWORD dwCreation, DWORD dwFlags, HANDLE hTemplate);
     90
     91DWORD OSLibDosOpenFile(CHAR *lpszFile, UINT fuMode);
     92
     93BOOL  OSLibDosLockFile(DWORD hFile, DWORD dwFlags,
     94                       DWORD OffsetLow, DWORD OffsetHigh,
     95                       DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh,
     96                       LPOVERLAPPED lpOverlapped);
     97
     98BOOL  OSLibDosUnlockFile(DWORD hFile, DWORD OffsetLow, DWORD OffsetHigh,
     99                         DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh,
     100                         LPOVERLAPPED lpOverlapped);
     101
     102BOOL  OSLibDosFlushFileBuffers(DWORD hFile);
     103BOOL  OSLibDosSetEndOfFile(DWORD hFile);
     104
     105DWORD OSLibDosGetFileSize(DWORD hFile, LPDWORD lpdwFileSizeHigh);
     106BOOL  OSLibDosRead(DWORD hFile, LPVOID lpBuffer, DWORD size, DWORD *nrBytesRead);
     107BOOL  OSLibDosWrite(DWORD hFile, LPVOID lpBuffer, DWORD size, DWORD *nrBytesWritten);
     108
     109BOOL  OSLibDosGetFileInformationByHandle(DWORD hFile, BY_HANDLE_FILE_INFORMATION* pHFI);
     110
     111BOOL  OSLibDosSetFileTime(DWORD hFile, WORD creationdate, WORD creationtime,
     112                          WORD lastaccessdate, WORD lastaccesstime,
     113                          WORD lastwritedate, WORD lastwritetime);
     114
     115BOOL  OSLibDosGetFileTime(DWORD hFile, WORD *creationdate, WORD *creationtime,
     116                          WORD *lastaccessdate, WORD *lastaccesstime,
     117                          WORD *lastwritedate, WORD *lastwritetime);
     118
     119DWORD OSLibDosSetFilePointer(DWORD hFile, DWORD OffsetLow, DWORD *OffsetHigh, DWORD method);
     120
    99121DWORD OSLibDosDupHandle(DWORD hFile, DWORD *hNew);
    100122DWORD OSLibDosSetFilePtr2(DWORD hFile, DWORD offset, DWORD method);
     
    156178
    157179
    158 #endif
     180#ifdef OS2DEF_INCLUDED
     181#ifndef FIL_STANDARDL
     182    typedef struct _LONGLONG {  /* LONGLONG */
     183        ULONG ulLo;
     184        LONG ulHi;
     185    } LONGLONG;
     186    typedef LONGLONG *PLONGLONG;
     187
     188    typedef struct _ULONGLONG {  /* ULONGLONG */
     189        ULONG ulLo;
     190        ULONG ulHi;
     191    } ULONGLONG;
     192    typedef ULONGLONG *PULONGLONG;
     193
     194   #define FIL_STANDARDL         11     /* LFS - Info level 11, standard file info for large files*/
     195   #define FIL_QUERYEASIZEL      12     /* LFS - Level 12, return Full EA size for large files */
     196   #define FIL_QUERYEASFROMLISTL 13     /* LFS - Level 13, return requested EA's */
     197
     198   typedef struct _FILESTATUS3L     /* fsts3L */
     199   {
     200      FDATE    fdateCreation;
     201      FTIME    ftimeCreation;
     202      FDATE    fdateLastAccess;
     203      FTIME    ftimeLastAccess;
     204      FDATE    fdateLastWrite;
     205      FTIME    ftimeLastWrite;
     206      LONGLONG cbFile;
     207      LONGLONG cbFileAlloc;
     208      ULONG    attrFile;
     209   } FILESTATUS3L;
     210   typedef FILESTATUS3L *PFILESTATUS3L;
     211
     212   /* Large File Support >2GB */
     213   typedef struct _FILESTATUS4L      /* fsts4L */
     214   {
     215      FDATE    fdateCreation;
     216      FTIME    ftimeCreation;
     217      FDATE    fdateLastAccess;
     218      FTIME    ftimeLastAccess;
     219      FDATE    fdateLastWrite;
     220      FTIME    ftimeLastWrite;
     221      LONGLONG cbFile;
     222      LONGLONG cbFileAlloc;
     223      ULONG    attrFile;
     224      ULONG    cbList;
     225   } FILESTATUS4L;
     226   typedef FILESTATUS4L  *PFILESTATUS4L;
     227
     228   typedef struct _FILELOCKL     /* flock */
     229   {
     230      LONGLONG lOffset;
     231      LONGLONG lRange;
     232   } FILELOCKL;
     233   typedef FILELOCKL  *PFILELOCKL;
     234#endif
     235
     236
     237   typedef APIRET (* APIENTRY PROC_DosSetFileSizeL)(HFILE hFile, LONGLONG cbSize);
     238   APIRET OdinDosSetFileSize(HFILE hFile,
     239                             LONGLONG cbSize);
     240
     241   typedef APIRET (* APIENTRY PROC_DosSetFilePtrL)(HFILE hFile, LONGLONG ib, ULONG method, PLONGLONG ibActual);
     242   APIRET OdinDosSetFilePtr(HFILE hFile,
     243                            LONGLONG ib,
     244                            ULONG method,
     245                            PLONGLONG ibActual);
     246
     247   typedef APIRET (* APIENTRY PROC_DosSetFileLocksL)(HFILE hFile, PFILELOCKL pflUnlock, PFILELOCKL pflLock, ULONG timeout, ULONG flags);
     248   APIRET OdinDosSetFileLocks(HFILE hFile,
     249                              PFILELOCKL pflUnlock,
     250                              PFILELOCKL pflLock,
     251                              ULONG timeout,
     252                              ULONG flags);
     253#endif
     254
     255#endif
Note: See TracChangeset for help on using the changeset viewer.