Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cOSPipe Class Reference

#include <cOSPipe.h>

Inheritance diagram for GrayLib::cOSPipe:
Gray::cOSHandle Gray::cNonCopyable GrayLib::cOSPipeClient GrayLib::cOSPipeServer

Public Member Functions

 UNITTEST2_PREDEF (cOSPipe)
 
- Public Member Functions inherited from Gray::cOSHandle
 cOSHandle (HANDLE h=INVALID_HANDLE_VALUE) noexcept
 
 cOSHandle (const cOSHandle &Handle) noexcept
 
cOSHandleoperator= (const cOSHandle &Handle)
 
 ~cOSHandle ()
 
 operator HANDLE () const noexcept
 
HANDLE get_Handle () const noexcept
 
HANDLE & ref_Handle () noexcept
 
bool isValidHandle () const noexcept
 
void CloseHandle () noexcept
 
void AttachHandle (HANDLE h) noexcept
 
HANDLE DetachHandle () noexcept
 
HRESULT WriteX (const void *pData, size_t nDataSize) const
 
HRESULT ReadX (void *pData, size_t nDataSize) const
 
HRESULT FlushX () const
 
STREAM_SEEKRET_t Seek (STREAM_OFFSET_t lOffset, SEEK_ORIGIN_TYPE eSeekOrigin) const
 
HRESULT WaitForSingleObject (TIMESYSD_t dwMilliseconds) const
 

Static Public Member Functions

static StrLen_t GRAYCALL MakePipePath (OUT FILECHAR_t *pszPipePath, StrLen_t nLenMax, const FILECHAR_t *pszPipeName)
 
- Static Public Member Functions inherited from Gray::cOSHandle
static bool IsValidHandle (HANDLE h) noexcept
 
static bool CloseHandle (HANDLE h) noexcept
 

Protected Member Functions

 cOSPipe (void)
 
virtual ~cOSPipe (void)
 
- Protected Member Functions inherited from Gray::cOSHandle
void CloseHandleLast () noexcept
 
- Protected Member Functions inherited from Gray::cNonCopyable
 cNonCopyable () noexcept
 Force the use of Factory creation via protected constructor. More...
 
 ~cNonCopyable () noexcept
 

Additional Inherited Members

- Public Attributes inherited from Gray::cOSHandle
HANDLE m_h
 

Detailed Description

A named or anonymous system pipe. http://en.wikipedia.org/wiki/Named_pipe Base class for cOSPipeServer or cOSPipeClient acts like a file for streaming from one process to another. Used for interprocess communications. Similar to _WIN32 cMailslot but faster for local processes. Lacks cMailslot message buffering.

Constructor & Destructor Documentation

◆ cOSPipe()

GrayLib::cOSPipe::cOSPipe ( void  )
protected

◆ ~cOSPipe()

GrayLib::cOSPipe::~cOSPipe ( void  )
protectedvirtual

Member Function Documentation

◆ MakePipePath()

StrLen_t GrayLib::cOSPipe::MakePipePath ( OUT FILECHAR_t pszPipePath,
StrLen_t  nLenMax,
const FILECHAR_t pszPipeName 
)
static

Get the full system name/path for the pipe.

◆ UNITTEST2_PREDEF()

GrayLib::cOSPipe::UNITTEST2_PREDEF ( cOSPipe  )

The documentation for this class was generated from the following files: