os/ossrv/genericopenlibs/cstdlib/LINC/STDIO_R.H
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 /* STDIO_R.H
     2  * 
     3  * Portions Copyright (c) 1990-1999 Nokia Corporation and/or its subsidiary(-ies).
     4  * All rights reserved.
     5  */
     6 
     7 /*
     8  * Copyright (c) 1990 The Regents of the University of California.
     9  * All rights reserved.
    10  *
    11  * Redistribution and use in source and binary forms are permitted
    12  * provided that the above copyright notice and this paragraph are
    13  * duplicated in all such forms and that any documentation,
    14  * advertising materials, and other materials related to such
    15  * distribution and use acknowledge that the software was developed
    16  * by the University of California, Berkeley.  The name of the
    17  * University may not be used to endorse or promote products derived
    18  * from this software without specific prior written permission.
    19  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
    20  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
    21  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    22  *
    23  *	Based on @(#)stdio.h	5.3 (Berkeley) 3/15/86
    24  */
    25 
    26 /** @file
    27 @publishedAll
    28 @released
    29 */
    30 
    31 #ifndef _STDIO_R_H_
    32 #define	_STDIO_R_H_
    33 
    34 #ifdef __cplusplus
    35 extern "C" {
    36 #endif
    37 
    38 #include <stdio.h>
    39 #include <sys/reent.h>
    40 
    41 #define _stdin_r(x)	(&((x)->_sf[0]))
    42 #define _stdout_r(x)	(&((x)->_sf[1]))
    43 #define _stderr_r(x)	(&((x)->_sf[2]))
    44 
    45 /**
    46 Reentrant versions of the <stdio.h> functions
    47 */
    48 IMPORT_C void	_cleanup_r	(struct _reent *);
    49 IMPORT_C FILE *	_fdopen_r	(struct _reent *, int, const char *);
    50 IMPORT_C FILE *	_wfdopen_r	(struct _reent *, int, const wchar_t *);
    51 IMPORT_C FILE *	_fopen_r	(struct _reent *, const char *, const char *);
    52 IMPORT_C FILE *	_wfopen_r	(struct _reent *, const wchar_t *, const wchar_t *);
    53 IMPORT_C int	_getchar_r	(struct _reent *);
    54 IMPORT_C char *	_gets_r		(struct _reent *, char *);
    55 IMPORT_C int	_iprintf_r	(struct _reent *, const char *, ...);
    56 IMPORT_C int	_mkstemp_r	(struct _reent *, char *);
    57 IMPORT_C char *	_mktemp_r	(struct _reent *, char *);
    58 IMPORT_C void	_perror_r	(struct _reent *, const char *);
    59 IMPORT_C int	_printf_r	(struct _reent *, const char *, ...);
    60 IMPORT_C int	_putchar_r	(struct _reent *, int);
    61 IMPORT_C int	_puts_r		(struct _reent *, const char *);
    62 IMPORT_C int	_scanf_r	(struct _reent *, const char *, ...);
    63 IMPORT_C int	_sprintf_r	(struct _reent *, char *, const char *, ...);
    64 IMPORT_C char *	_tempnam_r	(struct _reent *, char *, char *);
    65 IMPORT_C FILE *	_tmpfile_r	(struct _reent *);
    66 IMPORT_C char *	_tmpnam_r	(struct _reent *, char *);
    67 IMPORT_C wchar_t *	_wtmpnam_r	(struct _reent *, wchar_t *);
    68 IMPORT_C int	_vfprintf_r	(struct _reent *, FILE *, const char *, __e32_va_list);
    69 IMPORT_C int	_popen3_r	(struct _reent *, const char *cmd, const char *mode, char** envp, int fids[3]);
    70 IMPORT_C int	_wpopen3_r	(struct _reent *, const wchar_t *cmd, const wchar_t *mode, wchar_t** envp, int fids[3]);
    71 
    72 #ifdef __cplusplus
    73 }
    74 #endif
    75 #endif /* _STDIO_H_ */