williamr@2: /* williamr@2: * Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@2: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: williamr@2: /** williamr@2: @file williamr@2: @publishedAll williamr@2: @released williamr@2: */ williamr@2: williamr@2: #ifndef _SYS_DIRENT_H_ williamr@2: #define _SYS_DIRENT_H_ williamr@2: williamr@2: #ifdef __cplusplus williamr@2: extern "C" { williamr@2: #endif williamr@2: williamr@2: #include williamr@2: williamr@2: typedef struct __EPOC32_DIR DIR; williamr@2: typedef struct __EPOC32_WDIR WDIR; williamr@2: williamr@2: IMPORT_C DIR *opendir (const char *); williamr@2: IMPORT_C WDIR *wopendir (const wchar_t *); williamr@2: IMPORT_C struct dirent *readdir (DIR *); williamr@2: IMPORT_C struct wdirent *wreaddir (WDIR *); williamr@2: IMPORT_C void rewinddir (DIR *); williamr@2: IMPORT_C int closedir (DIR *); williamr@2: IMPORT_C void wrewinddir (WDIR *); williamr@2: IMPORT_C int wclosedir (WDIR *); williamr@2: williamr@2: /** williamr@2: telldir and seekdir aren't required by POSIX williamr@2: */ williamr@2: IMPORT_C off_t telldir(const DIR *); williamr@2: IMPORT_C void seekdir(DIR *,off_t); williamr@2: IMPORT_C off_t wtelldir(const WDIR *); williamr@2: IMPORT_C void wseekdir(WDIR *,off_t); williamr@2: williamr@2: #define __MAXNAMLEN 255 williamr@2: williamr@2: #define d_ino d_fileno /* compatibility */ williamr@2: williamr@2: struct dirent { williamr@2: unsigned long d_fileno; williamr@2: unsigned short d_namlen; williamr@2: char* d_name; williamr@2: }; williamr@2: williamr@2: struct wdirent { williamr@2: unsigned long d_fileno; williamr@2: unsigned short d_namlen; williamr@2: wchar_t* d_name; williamr@2: }; williamr@2: williamr@2: #include williamr@2: IMPORT_C DIR *_opendir_r (struct _reent*, const char *); williamr@2: IMPORT_C WDIR *_wopendir_r (struct _reent*, const wchar_t *); williamr@2: IMPORT_C struct dirent *_readdir_r(struct _reent*, DIR *); williamr@2: #ifdef __cplusplus williamr@2: } williamr@2: #endif williamr@2: #endif /* !_SYS_DIRENT_H_ */