Public Types | Public Member Functions | Protected Member Functions | List of all members
visionary::ITransport Class Referenceabstract

#include <ITransport.h>

Inheritance diagram for visionary::ITransport:
Inheritance graph
[legend]

Public Types

using ByteBuffer = std::vector< std::uint8_t >
 
using recv_return_t = ssize_t
 
using send_return_t = ssize_t
 

Public Member Functions

virtual int getLastError ()=0
 
virtual recv_return_t read (ByteBuffer &buffer, std::size_t nBytesToReceive)=0
 
virtual recv_return_t recv (ByteBuffer &buffer, std::size_t maxBytesToReceive)=0
 
template<typename T >
send_return_t send (const std::vector< T > &buffer)
 
virtual int shutdown ()=0
 
virtual ~ITransport ()=default
 

Protected Member Functions

virtual send_return_t send (const char *pData, size_t size)=0
 

Detailed Description

Definition at line 19 of file ITransport.h.

Member Typedef Documentation

◆ ByteBuffer

using visionary::ITransport::ByteBuffer = std::vector<std::uint8_t>

Definition at line 22 of file ITransport.h.

◆ recv_return_t

Definition at line 29 of file ITransport.h.

◆ send_return_t

Definition at line 28 of file ITransport.h.

Constructor & Destructor Documentation

◆ ~ITransport()

virtual visionary::ITransport::~ITransport ( )
virtualdefault

Member Function Documentation

◆ getLastError()

virtual int visionary::ITransport::getLastError ( )
pure virtual

◆ read()

virtual recv_return_t visionary::ITransport::read ( ByteBuffer buffer,
std::size_t  nBytesToReceive 
)
pure virtual

Read a number of bytes

Contrary to recv this method reads precisely nBytesToReceive bytes.

Parameters
[in]bufferbuffer containing the bytes that shall be sent.
[in]nBytesToReceivemaximum number of bytes to receive.
Returns
number of received bytes or (-1) on error

Implemented in visionary_test::MockTransport, visionary::UdpSocket, and visionary::TcpSocket.

◆ recv()

virtual recv_return_t visionary::ITransport::recv ( ByteBuffer buffer,
std::size_t  maxBytesToReceive 
)
pure virtual

Receive data on socket to device

Receive at most maxBytesToReceive bytes.

Parameters
[in]bufferbuffer containing the bytes that shall be sent.
[in]maxBytesToReceivemaximum number of bytes to receive.
Returns
number of received bytes or (-1) on error

Implemented in visionary_test::MockTransport, visionary::UdpSocket, and visionary::TcpSocket.

◆ send() [1/2]

virtual send_return_t visionary::ITransport::send ( const char *  pData,
size_t  size 
)
protectedpure virtual

◆ send() [2/2]

template<typename T >
send_return_t visionary::ITransport::send ( const std::vector< T > &  buffer)
inline

Send data on socket to device

All bytes are sent on the socket. It is regarded as error if this is not possible.

Parameters
[in]bufferbuffer containing the bytes that shall be sent.
Returns
Number of bytes sent or (-1) on error

Definition at line 45 of file ITransport.h.

◆ shutdown()

virtual int visionary::ITransport::shutdown ( )
pure virtual

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


sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 04:38:18