23#ifndef INCLUDED_OSL_PIPE_HXX
24#define INCLUDED_OSL_PIPE_HXX
57#if defined LIBO_INTERNAL_ONLY
59 other.m_handle =
nullptr;
86 *
this =
Pipe( strName, Options, rSec );
93 *
this =
Pipe( strName, Options );
103#if defined LIBO_INTERNAL_ONLY
105 if (m_handle !=
nullptr) {
108 m_handle = other.m_handle;
109 other.m_handle =
nullptr;
156 if( Connection.
is() )
185 :
Pipe( strName, Options , rSec )
190 :
Pipe( strName, Options )
194 :
Pipe( pipe , noacquire )
216 inline sal_Int32 SAL_CALL
StreamPipe::send(
const void* pBuffer, sal_Int32 BytesToSend)
const
__sal_NoAcquire
Definition types.h:371
@ SAL_NO_ACQUIRE
definition of a no acquire enum for ctors
Definition types.h:374
oslPipeError
Definition pipe.h:37
@ osl_Pipe_E_None
Definition pipe.h:38
SAL_DLLPUBLIC sal_Int32 osl_writePipe(oslPipe Pipe, const void *pBuffer, sal_Int32 BufferSize)
Writes blocking onto the pipe.
SAL_DLLPUBLIC sal_Int32 osl_readPipe(oslPipe Pipe, void *pBuffer, sal_Int32 BufferSize)
Reads blocking from the pipe.
sal_uInt32 oslPipeOptions
Pipe creation options.
Definition pipe.h:56
SAL_DLLPUBLIC sal_Int32 osl_sendPipe(oslPipe Pipe, const void *pBuffer, sal_Int32 BufferSize)
struct oslPipeImpl * oslPipe
Definition pipe.h:60
SAL_DLLPUBLIC oslPipe osl_acceptPipe(oslPipe Pipe)
SAL_DLLPUBLIC void osl_closePipe(oslPipe Pipe)
Close the pipe.
SAL_DLLPUBLIC void osl_acquirePipe(oslPipe Pipe)
Increases the refcount of the pipe.
SAL_DLLPUBLIC sal_Int32 osl_receivePipe(oslPipe Pipe, void *pBuffer, sal_Int32 BufferSize)
SAL_DLLPUBLIC oslPipe osl_createPipe(rtl_uString *strPipeName, oslPipeOptions Options, oslSecurity Security)
Create or open a pipe.
SAL_DLLPUBLIC oslPipeError osl_getLastPipeError(oslPipe Pipe)
SAL_DLLPUBLIC void osl_releasePipe(oslPipe Pipe)
Decreases the refcount of the pipe.
Definition condition.hxx:31
Represents a pipe.
Definition pipe_decl.hxx:37
bool is() const
Definition pipe.hxx:125
Pipe()
Does not create a pipe.
Definition pipe.hxx:35
~Pipe()
Destructor.
Definition pipe.hxx:76
oslPipeError getError() const
Delivers a constant describing the last error for the pipe system.
Definition pipe.hxx:163
Pipe & operator=(const Pipe &pipe)
Assignment operator.
Definition pipe.hxx:97
oslPipe m_handle
Definition pipe_decl.hxx:39
oslPipe getHandle() const
Definition pipe.hxx:169
void close()
Closes the pipe.
Definition pipe.hxx:137
oslPipeError accept(StreamPipe &Connection)
Accept connection on an existing pipe.
Definition pipe.hxx:153
bool operator==(const Pipe &rPipe) const
Definition pipe.hxx:131
bool create(const ::rtl::OUString &strName, oslPipeOptions Options, const Security &rSec)
Creates an insecure pipe that is accessible for all users with the given attributes.
Definition pipe.hxx:83
void clear()
releases the underlying handle
Definition pipe.hxx:143
A pipe to send or receive a stream of data.
Definition pipe_decl.hxx:150
StreamPipe()
Creates an unattached pipe.
Definition pipe.hxx:175
sal_Int32 write(const void *pBuffer, sal_Int32 n) const
Writes n bytes from pBuffer to the stream.
Definition pipe.hxx:204
sal_Int32 recv(void *pBuffer, sal_Int32 BytesToRead) const
Tries to receives BytesToRead data from the connected pipe,.
Definition pipe.hxx:210
sal_Int32 read(void *pBuffer, sal_Int32 n) const
Retrieves n bytes from the stream and copies them into pBuffer.
Definition pipe.hxx:198
sal_Int32 send(const void *pBuffer, sal_Int32 BytesToSend) const
Tries to sends BytesToSend data from the connected pipe.
Definition pipe.hxx:216
Encapsulate security information for one user.
Definition security_decl.hxx:39