µOS++ IIIe Reference
7.0.0
The third edition of µOS++, a POSIX inspired open source framework, written in C++
Loading...
Searching...
No Matches
uio.h
Go to the documentation of this file.
1
/*
2
* This file is part of the µOS++ distribution.
3
* (https://github.com/micro-os-plus)
4
* Copyright (c) 2015 Liviu Ionescu.
5
*
6
* Permission is hereby granted, free of charge, to any person
7
* obtaining a copy of this software and associated documentation
8
* files (the "Software"), to deal in the Software without
9
* restriction, including without limitation the rights to use,
10
* copy, modify, merge, publish, distribute, sublicense, and/or
11
* sell copies of the Software, and to permit persons to whom
12
* the Software is furnished to do so, subject to the following
13
* conditions:
14
*
15
* The above copyright notice and this permission notice shall be
16
* included in all copies or substantial portions of the Software.
17
*
18
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
20
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
22
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
23
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
24
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
25
* OTHER DEALINGS IN THE SOFTWARE.
26
*/
27
28
#ifndef POSIX_IO_SYS_UIO_H_
29
#define POSIX_IO_SYS_UIO_H_
30
31
// ----------------------------------------------------------------------------
32
33
#include <unistd.h>
34
35
#if defined(_POSIX_VERSION)
36
37
#pragma GCC diagnostic push
38
#if defined(__clang__)
39
#pragma clang diagnostic ignored "-Wgnu-include-next"
40
#endif
41
#include_next <sys/uio.h>
42
#pragma GCC diagnostic pop
43
44
#else
45
46
#include <sys/types.h>
47
48
#ifdef __cplusplus
49
extern
"C"
50
{
51
#endif
52
53
// ----------------------------------------------------------------------------
54
55
struct
iovec
56
{
57
void
*
iov_base
;
// Base address of a memory region for input or output.
58
size_t
iov_len
;
// The size of the memory pointed to by iov_base.
59
};
60
61
ssize_t
62
writev
(
int
fildes,
const
struct
iovec
* iov,
int
iovcnt);
63
64
// ----------------------------------------------------------------------------
65
66
#ifdef __cplusplus
67
}
68
#endif
69
70
#endif
/* defined(_POSIX_VERSION) */
71
72
#endif
/* POSIX_IO_SYS_UIO_H_ */
iovec
Definition
uio.h:56
iovec::iov_base
void * iov_base
Definition
uio.h:57
iovec::iov_len
size_t iov_len
Definition
uio.h:58
writev
ssize_t writev(int fildes, const struct iovec *iov, int iovcnt)
include
cmsis-plus
posix
sys
uio.h
Generated by
1.9.7