1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef _INC_WCONIO_S
8#define _INC_WCONIO_S
9
10#include <corecrt_wconio.h>
11
12#if defined(__LIBMSVCRT__)
13/* When building mingw-w64, this should be blank. */
14#define _SECIMP
15#else
16#ifndef _SECIMP
17#define _SECIMP __declspec(dllimport)
18#endif /* _SECIMP */
19#endif /* defined(__LIBMSVCRT__) */
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25/**
26 * Functions to read/write strings from/to console.
27 */
28
29_SECIMP errno_t __cdecl _cgetws_s (wchar_t *_Buffer,size_t _SizeInWords,size_t *_SizeRead);
30__DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _cgetws_s, wchar_t, _Buffer, size_t*, _SizeRead)
31
32/**
33 * Formatted console I/O functions.
34 */
35
36_SECIMP int __cdecl _cwprintf_s (const wchar_t *_Format,...);
37_SECIMP int __cdecl _cwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,...);
38_SECIMP int __cdecl _vcwprintf_s (const wchar_t *_Format,va_list _ArgList);
39_SECIMP int __cdecl _vcwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
40_CRTIMP int __cdecl _cwscanf_s(const wchar_t *_Format,...);
41_CRTIMP int __cdecl _cwscanf_s_l(const wchar_t *_Format,_locale_t _Locale,...);
42
43#ifdef __cplusplus
44}
45#endif
46
47#endif /* _INC_WCONIO_S */