Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Static Public Member Functions | Private Member Functions
mrpt::synch::CPipe Class Reference

Detailed Description

A pipe, portable across different OS.

Pipes can be used as intraprocess (inter-threads) or interprocess communication mechanism. Read more on pipes here: http://www.gnu.org/software/libc/manual/html_node/Pipes-and-FIFOs.html

std::unique_ptr<CPipeReadEndPoint> read_pipe;
std::unique_ptr<CPipeWriteEndPoint> write_pipe;
CPipe::createPipe(read_pipe,write_pipe);

See also the example: MRPT/samples/threadsPipe/

Definition at line 41 of file CPipe.h.

#include <mrpt/synch/CPipe.h>

Static Public Member Functions

template<typename ReadPtr , typename WritePtr >
static void createPipe (ReadPtr &outReadPipe, WritePtr &outWritePipe)
 Creates a new pipe and returns the read & write end-points as newly allocated objects. More...
 
static void initializePipe (CPipeReadEndPoint &outReadPipe, CPipeWriteEndPoint &outWritePipe)
 Creates a new pipe and returns the read & write end-points as newly allocated objects. More...
 

Private Member Functions

 CPipe ()
 No need to create any object of this class. More...
 
 ~CPipe ()
 

Constructor & Destructor Documentation

◆ CPipe()

mrpt::synch::CPipe::CPipe ( )
private

No need to create any object of this class.

◆ ~CPipe()

mrpt::synch::CPipe::~CPipe ( )
private

Member Function Documentation

◆ createPipe()

template<typename ReadPtr , typename WritePtr >
void mrpt::synch::CPipe::createPipe ( ReadPtr &  outReadPipe,
WritePtr &  outWritePipe 
)
static

Creates a new pipe and returns the read & write end-points as newly allocated objects.

Exceptions
std::exceptionOn any error during the pipe creation Creates a new pipe and returns the read & write end-points as newly allocated objects.

Definition at line 161 of file CPipe.h.

References initializePipe().

Referenced by mrpt::hwdrivers::CNationalInstrumentsDAQ::initialize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initializePipe()

void CPipe::initializePipe ( CPipeReadEndPoint outReadPipe,
CPipeWriteEndPoint outWritePipe 
)
static

Creates a new pipe and returns the read & write end-points as newly allocated objects.

Definition at line 30 of file CPipe.cpp.

References mrpt::synch::CPipeBaseEndPoint::m_pipe_file, and THROW_EXCEPTION.

Referenced by createPipe().

Here is the caller graph for this function:



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ae4571287 Thu Nov 23 00:06:53 2017 +0100 at dom oct 27 23:51:55 CET 2019