18b851043SAndrew Rist /**************************************************************
2cdf0e10cSrcweir *
38b851043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
48b851043SAndrew Rist * or more contributor license agreements. See the NOTICE file
58b851043SAndrew Rist * distributed with this work for additional information
68b851043SAndrew Rist * regarding copyright ownership. The ASF licenses this file
78b851043SAndrew Rist * to you under the Apache License, Version 2.0 (the
88b851043SAndrew Rist * "License"); you may not use this file except in compliance
98b851043SAndrew Rist * with the License. You may obtain a copy of the License at
108b851043SAndrew Rist *
118b851043SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0
128b851043SAndrew Rist *
138b851043SAndrew Rist * Unless required by applicable law or agreed to in writing,
148b851043SAndrew Rist * software distributed under the License is distributed on an
158b851043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
168b851043SAndrew Rist * KIND, either express or implied. See the License for the
178b851043SAndrew Rist * specific language governing permissions and limitations
188b851043SAndrew Rist * under the License.
198b851043SAndrew Rist *
208b851043SAndrew Rist *************************************************************/
218b851043SAndrew Rist
228b851043SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir #ifndef _os2_hxx
25cdf0e10cSrcweir #define _os2_hxx
26cdf0e10cSrcweir
27cdf0e10cSrcweir
28cdf0e10cSrcweir #define INCL_DOSEXCEPTIONS
29cdf0e10cSrcweir #define INCL_DOSFILEMGR
30cdf0e10cSrcweir #define INCL_DOSPROCESS
31cdf0e10cSrcweir #define INCL_DOSDEVICES
32cdf0e10cSrcweir #define INCL_DOSERRORS
33cdf0e10cSrcweir #define INCL_DOSMISC
34cdf0e10cSrcweir #define INCL_DOSNLS /* National Language Support values */
35cdf0e10cSrcweir #include <svpm.h>
36cdf0e10cSrcweir
37cdf0e10cSrcweir #include <dirent.h>
38cdf0e10cSrcweir #include <string.h>
39cdf0e10cSrcweir
40cdf0e10cSrcweir #include <sys\types.h>
41cdf0e10cSrcweir #include <sys\stat.h>
42cdf0e10cSrcweir #include <stdio.h>
43cdf0e10cSrcweir #include <ctype.h>
44cdf0e10cSrcweir #include <emx/syscalls.h>
45cdf0e10cSrcweir
46cdf0e10cSrcweir #define FSYS_UNIX FALSE
47cdf0e10cSrcweir
48cdf0e10cSrcweir #define DOS_DIRECT _A_SUBDIR
49cdf0e10cSrcweir #define DOS_VOLUMEID _A_VOLID
50cdf0e10cSrcweir
51cdf0e10cSrcweir #define _mkdir(p) mkdir(p, 0777)
52cdf0e10cSrcweir
53cdf0e10cSrcweir const char* TempDirImpl( char *pBuf );
54cdf0e10cSrcweir String ToLowerImpl( const String& );
55cdf0e10cSrcweir
56cdf0e10cSrcweir #define DEFSTYLE FSYS_STYLE_OS2
57cdf0e10cSrcweir #define MKDIR( p ) mkdir( (unsigned char*) p )
58cdf0e10cSrcweir #define CMP_LOWER(s) ( s.ToLowerAscii() )
59cdf0e10cSrcweir
60cdf0e10cSrcweir #define START_DRV 'a'
61cdf0e10cSrcweir
DRIVE_EXISTS(char c)62*27ead02aSPedro Giffuni inline PM_BOOL DRIVE_EXISTS( char c )
63cdf0e10cSrcweir {
64cdf0e10cSrcweir ULONG nCur, nMap;
65cdf0e10cSrcweir APIRET nRet = DosQueryCurrentDisk( &nCur, &nMap );
66cdf0e10cSrcweir return ( nMap & 1 << (c - 'a') ) != 0;
67cdf0e10cSrcweir }
68cdf0e10cSrcweir
69cdf0e10cSrcweir #include <time.h>
70cdf0e10cSrcweir //#include <datetime.hxx>
71cdf0e10cSrcweir
MsDos2Time(FTIME * aTime)72cdf0e10cSrcweir inline Time MsDos2Time( FTIME* aTime )
73cdf0e10cSrcweir {
74cdf0e10cSrcweir return Time( aTime->hours, aTime->minutes, 2*aTime->twosecs );
75cdf0e10cSrcweir }
76cdf0e10cSrcweir
MsDos2Date(FDATE * aDate)77cdf0e10cSrcweir inline Date MsDos2Date( FDATE* aDate )
78cdf0e10cSrcweir {
79cdf0e10cSrcweir return Date( aDate->day, aDate->month, aDate->year );
80cdf0e10cSrcweir }
81cdf0e10cSrcweir
82cdf0e10cSrcweir Time MsDos2Time( const time_t *pTimeT );
83cdf0e10cSrcweir
84cdf0e10cSrcweir Date MsDos2Date( const time_t *pTimeT );
85cdf0e10cSrcweir
86cdf0e10cSrcweir #define FSysFailOnErrorImpl()
87cdf0e10cSrcweir
88cdf0e10cSrcweir #endif
89cdf0e10cSrcweir
90