23 #ifndef INCLUDED_OSL_PIPE_HXX 24 #define INCLUDED_OSL_PIPE_HXX 46 : m_handle(
osl_createPipe( strName.pData, Options , rSecurity.getHandle() ) )
51 : m_handle( pipe.m_handle )
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 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
SAL_DLLPUBLIC sal_Int32 osl_receivePipe(oslPipe Pipe, void *pBuffer, sal_Int32 BufferSize)
sal_Int32 recv(void *pBuffer, sal_Int32 BytesToRead) const
Tries to receives BytesToRead data from the connected pipe,.
Definition: pipe.hxx:210
struct oslPipeImpl * oslPipe
Definition: pipe.h:60
SAL_DLLPUBLIC void osl_closePipe(oslPipe Pipe)
Close the pipe.
Represents a pipe.
Definition: pipe_decl.hxx:36
Definition: condition.hxx:31
oslPipeError accept(StreamPipe &Connection)
Accept connection on an existing pipe.
Definition: pipe.hxx:153
oslPipeError getError() const
Delivers a constant describing the last error for the pipe system.
Definition: pipe.hxx:163
void close()
Closes the pipe.
Definition: pipe.hxx:137
sal_Int32 send(const void *pBuffer, sal_Int32 BytesToSend) const
Tries to sends BytesToSend data from the connected pipe.
Definition: pipe.hxx:216
StreamPipe()
Creates an unattached pipe.
Definition: pipe.hxx:175
bool is() const
Definition: pipe.hxx:125
oslPipeError
Definition: pipe.h:37
SAL_DLLPUBLIC sal_Int32 osl_sendPipe(oslPipe Pipe, const void *pBuffer, sal_Int32 BufferSize)
SAL_DLLPUBLIC sal_Int32 osl_writePipe(oslPipe Pipe, const void *pBuffer, sal_Int32 BufferSize)
Writes blocking onto the pipe.
oslPipe getHandle() const
Definition: pipe.hxx:169
__sal_NoAcquire
Definition: types.h:352
SAL_DLLPUBLIC oslPipe osl_acceptPipe(oslPipe Pipe)
Encapsulate security information for one user.
Definition: security_decl.hxx:38
SAL_DLLPUBLIC void osl_releasePipe(oslPipe Pipe)
Decreases the refcount of the pipe.
A pipe to send or receive a stream of data.
Definition: pipe_decl.hxx:149
sal_Int32 read(void *pBuffer, sal_Int32 n) const
Retrieves n bytes from the stream and copies them into pBuffer.
Definition: pipe.hxx:198
Pipe & operator=(const Pipe &pipe)
Assignment operator.
Definition: pipe.hxx:97
definition of a no acquire enum for ctors
Definition: types.h:356
SAL_DLLPUBLIC sal_Int32 osl_readPipe(oslPipe Pipe, void *pBuffer, sal_Int32 BufferSize)
Reads blocking from the pipe.
Pipe()
Does not create a pipe.
Definition: pipe.hxx:35
~Pipe()
Destructor.
Definition: pipe.hxx:76
SAL_DLLPUBLIC oslPipe osl_createPipe(rtl_uString *strPipeName, oslPipeOptions Options, oslSecurity Security)
Create or open a pipe.
oslPipe m_handle
Definition: pipe_decl.hxx:39
sal_uInt32 oslPipeOptions
Pipe creation options.
Definition: pipe.h:56
SAL_DLLPUBLIC oslPipeError osl_getLastPipeError(oslPipe Pipe)
void clear()
releases the underlying handle
Definition: pipe.hxx:143
SAL_DLLPUBLIC void osl_acquirePipe(oslPipe Pipe)
Increases the refcount of the pipe.
bool operator==(const Pipe &rPipe) const
Definition: pipe.hxx:131
sal_Int32 write(const void *pBuffer, sal_Int32 n) const
Writes n bytes from pBuffer to the stream.
Definition: pipe.hxx:204