Classes | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
visionary_test::MockTransport Class Reference

#include <MockTransport.h>

Inheritance diagram for visionary_test::MockTransport:
Inheritance graph
[legend]

Classes

struct  ProtocolReqRespHeader
 

Public Member Functions

MockTransportfakeSendReturn (send_return_t retval)
 
int getLastError () override
 
 MockTransport ()
 
 MockTransport (const ByteBuffer &buffer)
 
 MockTransport (std::initializer_list< ByteBuffer::value_type > init)
 
MockTransportnoFakeSendReturn ()
 
MockTransportonRecv (std::function< void()> fct)
 
MockTransportonSend (std::function< void()> fct)
 
recv_return_t read (ByteBuffer &buffer, std::size_t nBytesToReceive) override
 
recv_return_t recv (ByteBuffer &buffer, std::size_t maxBytesToReceive) override
 
MockTransportrecvBuffer (const ByteBuffer &buffer)
 
MockTransportrecvBuffer (std::initializer_list< ByteBuffer::value_type > init)
 
send_return_t send (const char *buffer, size_t size) override
 
ByteBuffersendBuffer ()
 
int shutdown () override
 
virtual ~MockTransport ()
 
- Public Member Functions inherited from visionary::ITransport
template<typename T >
send_return_t send (const std::vector< T > &buffer)
 
virtual ~ITransport ()=default
 

Static Public Member Functions

static ByteBuffer buildProtocol (const ProtocolReqRespHeader &header, const ByteBuffer &payload)
 
static void nop ()
 
static bool parseProtocol (ProtocolReqRespHeader &header, ByteBuffer::const_iterator &it, const ByteBuffer::const_iterator &end)
 

Protected Types

enum  {
  kSEND_IDLE, kSEND_STARTED, kSEND_CONTD, kRECV_STARTED,
  kRECV_CONTD
}
 

Protected Member Functions

virtual void recvHandler ()
 
virtual void sendHandler ()
 

Protected Attributes

Opt< send_return_tm_fakeSendReturn
 
ByteBuffer m_mockRecvBuffer
 
ByteBuffer m_mockSendBuffer
 
std::function< void()> m_onRecv
 
std::function< void()> m_onSend
 
enum visionary_test::MockTransport:: { ... }  m_state
 

Additional Inherited Members

- Public Types inherited from visionary::ITransport
using ByteBuffer = std::vector< std::uint8_t >
 
using recv_return_t = ssize_t
 
using send_return_t = ssize_t
 

Detailed Description

Definition at line 98 of file MockTransport.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected
Enumerator
kSEND_IDLE 
kSEND_STARTED 
kSEND_CONTD 
kRECV_STARTED 
kRECV_CONTD 

Definition at line 151 of file MockTransport.h.

Constructor & Destructor Documentation

◆ MockTransport() [1/3]

visionary_test::MockTransport::MockTransport ( )

Definition at line 22 of file MockTransport.cpp.

◆ MockTransport() [2/3]

visionary_test::MockTransport::MockTransport ( const ByteBuffer buffer)

Definition at line 26 of file MockTransport.cpp.

◆ MockTransport() [3/3]

visionary_test::MockTransport::MockTransport ( std::initializer_list< ByteBuffer::value_type >  init)

Definition at line 31 of file MockTransport.cpp.

◆ ~MockTransport()

visionary_test::MockTransport::~MockTransport ( )
virtualdefault

Member Function Documentation

◆ buildProtocol()

ByteBuffer visionary_test::MockTransport::buildProtocol ( const ProtocolReqRespHeader header,
const ByteBuffer payload 
)
static

Definition at line 145 of file MockTransport.cpp.

◆ fakeSendReturn()

MockTransport & visionary_test::MockTransport::fakeSendReturn ( send_return_t  retval)

Definition at line 60 of file MockTransport.cpp.

◆ getLastError()

int visionary_test::MockTransport::getLastError ( )
overridevirtual

Implements visionary::ITransport.

Definition at line 140 of file MockTransport.cpp.

◆ noFakeSendReturn()

MockTransport & visionary_test::MockTransport::noFakeSendReturn ( )

Definition at line 54 of file MockTransport.cpp.

◆ nop()

void visionary_test::MockTransport::nop ( )
static

Definition at line 38 of file MockTransport.cpp.

◆ onRecv()

MockTransport & visionary_test::MockTransport::onRecv ( std::function< void()>  fct)

Definition at line 66 of file MockTransport.cpp.

◆ onSend()

MockTransport& visionary_test::MockTransport::onSend ( std::function< void()>  fct)

◆ parseProtocol()

bool visionary_test::MockTransport::parseProtocol ( ProtocolReqRespHeader header,
ByteBuffer::const_iterator &  it,
const ByteBuffer::const_iterator &  end 
)
static

Definition at line 164 of file MockTransport.cpp.

◆ read()

visionary::ITransport::recv_return_t visionary_test::MockTransport::read ( ByteBuffer buffer,
std::size_t  nBytesToReceive 
)
overridevirtual

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

Implements visionary::ITransport.

Definition at line 131 of file MockTransport.cpp.

◆ recv()

visionary::ITransport::recv_return_t visionary_test::MockTransport::recv ( ByteBuffer buffer,
std::size_t  maxBytesToReceive 
)
overridevirtual

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

Implements visionary::ITransport.

Definition at line 104 of file MockTransport.cpp.

◆ recvBuffer() [1/2]

MockTransport & visionary_test::MockTransport::recvBuffer ( const ByteBuffer buffer)

Definition at line 42 of file MockTransport.cpp.

◆ recvBuffer() [2/2]

MockTransport & visionary_test::MockTransport::recvBuffer ( std::initializer_list< ByteBuffer::value_type >  init)

Definition at line 48 of file MockTransport.cpp.

◆ recvHandler()

void visionary_test::MockTransport::recvHandler ( )
protectedvirtual

Reimplemented in visionary_test::MockCoLa2Transport.

Definition at line 72 of file MockTransport.cpp.

◆ send()

visionary::ITransport::send_return_t visionary_test::MockTransport::send ( const char *  buffer,
size_t  size 
)
overridevirtual

Implements visionary::ITransport.

Definition at line 82 of file MockTransport.cpp.

◆ sendBuffer()

ByteBuffer& visionary_test::MockTransport::sendBuffer ( )
inline

Definition at line 127 of file MockTransport.h.

◆ sendHandler()

void visionary_test::MockTransport::sendHandler ( )
protectedvirtual

Definition at line 77 of file MockTransport.cpp.

◆ shutdown()

int visionary_test::MockTransport::shutdown ( )
overridevirtual

Implements visionary::ITransport.

Definition at line 136 of file MockTransport.cpp.

Member Data Documentation

◆ m_fakeSendReturn

Opt<send_return_t> visionary_test::MockTransport::m_fakeSendReturn
protected

Definition at line 149 of file MockTransport.h.

◆ m_mockRecvBuffer

ByteBuffer visionary_test::MockTransport::m_mockRecvBuffer
protected

Definition at line 164 of file MockTransport.h.

◆ m_mockSendBuffer

ByteBuffer visionary_test::MockTransport::m_mockSendBuffer
protected

Definition at line 165 of file MockTransport.h.

◆ m_onRecv

std::function<void()> visionary_test::MockTransport::m_onRecv
protected

Definition at line 161 of file MockTransport.h.

◆ m_onSend

std::function<void()> visionary_test::MockTransport::m_onSend
protected

Definition at line 163 of file MockTransport.h.

◆ m_state

enum { ... } visionary_test::MockTransport::m_state

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


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