L4Re Operating System Framework
Interface and Usage Documentation
•All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
vcon_stream.h
1/*
2 * (c) 2010 Alexander Warg <warg@os.inf.tu-dresden.de>
3 * economic rights: Technische Universität Dresden (Germany)
4 *
5 * License: see LICENSE.spdx (in this directory or the directories above)
6 */
7#pragma once
8
9#include <l4/sys/capability>
10#include <l4/sys/vcon>
11#include <l4/sys/semaphore>
12
13#include <l4/l4re_vfs/backend>
14
15namespace L4Re { namespace Core {
16
17class Vcon_stream : public L4Re::Vfs::Be_file_stream
18{
19private:
22 unsigned _irq_bound;
23
24public:
25 explicit Vcon_stream(L4::Cap<L4::Vcon> s) noexcept;
26
27 ssize_t readv(const struct iovec*, int iovcnt) noexcept override;
28 ssize_t writev(const struct iovec*, int iovcnt) noexcept override;
29 int fstat64(struct stat64 *buf) const noexcept override;
30 int get_status_flags() const noexcept override { return O_RDWR; }
31 int set_status_flags(long) noexcept override { return 0; }
32 int ioctl(unsigned long request, va_list args) noexcept override;
33
34 ~Vcon_stream() noexcept {}
35 void operator delete (void *) {}
36};
37
38}}
L4::Cap related definitions.
C++ interface for capabilities.
Definition capability.h:219
L4Re C++ Interfaces.
Definition cmd_control:14
Semaphore class definition.
C++ Virtual console interface.