winapi_common
pipe.hpp
1 // Copyright (c) 2020 Egor Tensin <Egor.Tensin@gmail.com>
2 // This file is part of the "winapi-common" project.
3 // For details, see https://github.com/egor-tensin/winapi-common.
4 // Distributed under the MIT License.
5 
6 #pragma once
7 
8 #include "handle.hpp"
9 
10 #include <utility>
11 
12 namespace winapi {
13 
15 class Pipe {
16 public:
18  Pipe();
19 
21  Handle& read_end() { return m_read_end; }
23  const Handle& read_end() const { return m_read_end; }
25  Handle& write_end() { return m_write_end; }
27  const Handle& write_end() const { return m_write_end; }
28 
29 private:
30  Handle m_read_end;
31  Handle m_write_end;
32 };
33 
34 } // namespace winapi
HANDLE wrapper.
Definition: handle.hpp:25
Anonymous pipe wrapper.
Definition: pipe.hpp:15
Handle & read_end()
Definition: pipe.hpp:21
Handle & write_end()
Definition: pipe.hpp:25
const Handle & write_end() const
Definition: pipe.hpp:27
const Handle & read_end() const
Definition: pipe.hpp:23