bind_fd.hpp
Go to the documentation of this file.
1
// Copyright (c) 2006, 2007 Julio M. Merino Vidal
2
// Copyright (c) 2008 Ilya Sokolov, Boris Schaeling
3
// Copyright (c) 2009 Boris Schaeling
4
// Copyright (c) 2010 Felipe Tanus, Boris Schaeling
5
// Copyright (c) 2011, 2012 Jeff Flinn, Boris Schaeling
6
//
7
// Distributed under the Boost Software License, Version 1.0. (See accompanying
8
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9
10
#pragma once
11
12
#include <
boost/process/posix/initializers/initializer_base.hpp
>
13
#include <unistd.h>
14
15
namespace
boost::process::posix::initializers
16
{
17
18
template
<
class
FileDescriptor>
19
class
bind_fd_
:
public
initializer_base
20
{
21
public
:
22
bind_fd_
(
int
id
,
const
FileDescriptor& fd) : id_(id), fd_(fd) {}
23
24
template
<
class
PosixExecutor>
25
void
on_exec_setup
(PosixExecutor&)
const
26
{
27
::dup2(fd_.handle(), id_);
28
}
29
30
private
:
31
int
id_;
32
FileDescriptor fd_;
33
};
34
35
template
<
class
FileDescriptor>
36
bind_fd_<FileDescriptor>
bind_fd
(
int
id
,
const
FileDescriptor& fd)
37
{
38
return
bind_fd_<FileDescriptor>
(
id
, fd);
39
}
40
41
}
initializer_base.hpp
boost::process::posix::initializers
Definition:
bind_fd.hpp:15
boost::process::posix::initializers::initializer_base
Definition:
initializer_base.hpp:15
boost::process::posix::initializers::bind_fd_::bind_fd_
bind_fd_(int id, const FileDescriptor &fd)
Definition:
bind_fd.hpp:22
boost::process::posix::initializers::bind_fd_::on_exec_setup
void on_exec_setup(PosixExecutor &) const
Definition:
bind_fd.hpp:25
boost::process::posix::initializers::bind_fd
bind_fd_< FileDescriptor > bind_fd(int id, const FileDescriptor &fd)
Definition:
bind_fd.hpp:36
boost::process::posix::initializers::bind_fd_
Definition:
bind_fd.hpp:19
boost
process
posix
initializers
bind_fd.hpp
Generated on Sat Oct 12 2024 09:14:02 for armarx_documentation by
1.8.17