Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
Structure used for scatter/gather data output when sending multiple
messages or packets in one go. You generally pass in an array of
GOutputVectors
and the operation will use all the buffers as if they
were one buffer.
If address
is Nothing
then the message is sent to the default receiver
(as previously set by socketConnect
).
- newtype OutputMessage = OutputMessage (ManagedPtr OutputMessage)
- newZeroOutputMessage :: MonadIO m => m OutputMessage
- noOutputMessage :: Maybe OutputMessage
- clearOutputMessageAddress :: MonadIO m => OutputMessage -> m ()
- getOutputMessageAddress :: MonadIO m => OutputMessage -> m (Maybe SocketAddress)
- setOutputMessageAddress :: MonadIO m => OutputMessage -> Ptr SocketAddress -> m ()
- getOutputMessageBytesSent :: MonadIO m => OutputMessage -> m Word32
- setOutputMessageBytesSent :: MonadIO m => OutputMessage -> Word32 -> m ()
- getOutputMessageNumControlMessages :: MonadIO m => OutputMessage -> m Word32
- setOutputMessageNumControlMessages :: MonadIO m => OutputMessage -> Word32 -> m ()
- getOutputMessageNumVectors :: MonadIO m => OutputMessage -> m Word32
- setOutputMessageNumVectors :: MonadIO m => OutputMessage -> Word32 -> m ()
- clearOutputMessageVectors :: MonadIO m => OutputMessage -> m ()
- getOutputMessageVectors :: MonadIO m => OutputMessage -> m (Maybe OutputVector)
- setOutputMessageVectors :: MonadIO m => OutputMessage -> Ptr OutputVector -> m ()
Exported types
newtype OutputMessage Source #
WrappedPtr OutputMessage Source # | |
(~) AttrOpTag tag AttrSet => Constructible OutputMessage tag Source # | |
newZeroOutputMessage :: MonadIO m => m OutputMessage Source #
Construct a OutputMessage
struct initialized to zero.
Properties
address
clearOutputMessageAddress :: MonadIO m => OutputMessage -> m () Source #
getOutputMessageAddress :: MonadIO m => OutputMessage -> m (Maybe SocketAddress) Source #
setOutputMessageAddress :: MonadIO m => OutputMessage -> Ptr SocketAddress -> m () Source #
bytesSent
getOutputMessageBytesSent :: MonadIO m => OutputMessage -> m Word32 Source #
setOutputMessageBytesSent :: MonadIO m => OutputMessage -> Word32 -> m () Source #
numControlMessages
getOutputMessageNumControlMessages :: MonadIO m => OutputMessage -> m Word32 Source #
setOutputMessageNumControlMessages :: MonadIO m => OutputMessage -> Word32 -> m () Source #
numVectors
getOutputMessageNumVectors :: MonadIO m => OutputMessage -> m Word32 Source #
setOutputMessageNumVectors :: MonadIO m => OutputMessage -> Word32 -> m () Source #
vectors
clearOutputMessageVectors :: MonadIO m => OutputMessage -> m () Source #
getOutputMessageVectors :: MonadIO m => OutputMessage -> m (Maybe OutputVector) Source #
setOutputMessageVectors :: MonadIO m => OutputMessage -> Ptr OutputVector -> m () Source #