Go to the documentation of this file.
48 namespace sl {
namespace internal {
58 , _usingOutterData(false)
68 , _usingOutterData(false)
82 , _usingOutterData(false)
101 this->
len = srcMessage.
len;
102 this->
cmd = srcMessage.
cmd;
149 size_t new_buf_size = actual_size;
162 if (!force_compact)
return;
180 : _bindedChannel(NULL)
206 if (!channel->
open()) {
253 for (std::list< Buffer* >::iterator itr =
_rxQueue.begin(); itr !=
_rxQueue.end(); ++itr)
271 if (requiredBufferSize == 0) {
278 _u8* txBuffer =
new _u8[requiredBufferSize];
306 size_t hintedSize = 0;
333 decodeBuffer->
data =
new _u8[hintedSize];
336 #ifdef _DEBUG_DUMP_PACKET
337 printf(
"Revc: %d\n", decodeBuffer->
size);
340 if (!decodeBuffer->
size) {
349 assert(hintedSize >= decodeBuffer->
size);
352 #ifdef _DEBUG_DUMP_PACKET
353 printf(
"=== Dump RX Packet, size = %d ===\n", decodeBuffer->
size);
354 for (
int pos = 0; pos < decodeBuffer->
size; pos++)
356 printf(
"%02x ", decodeBuffer->
data[pos]);
358 printf(
"\n=== END ===\n");
404 delete bufferToDecode;
u_result openChannelAndBind(IChannel *channel)
virtual void onChannelError(u_result errCode)
size_t getPayloadSize() const
static u_result SetSelfPriority(priority_val_t p)
virtual void onDecodeReset()
#define RESULT_INVALID_DATA
rp::hal::Thread _rxThread
std::list< Buffer * > _rxQueue
#define CLASS_THREAD(c, x)
#define RESULT_INSUFFICIENT_MEMORY
virtual size_t estimateLength(message_autoptr_t &message)=0
void _changeBufSize(bool force_compact=false)
AsyncTransceiver(IAsyncProtocolCodec &codec)
sl_result _proc_rxThread()
#define RESULT_OPERATION_ABORTED
void setDataBuf(_u8 *buffer, size_t size)
rp::hal::Locker _opLocker
virtual void onDecodeData(const void *buffer, size_t size)=0
virtual sl_result waitForDataExt(size_t &size_hint, sl_u32 timeoutInMs=1000)=0
#define RESULT_OPERATION_TIMEOUT
sl_result _proc_decoderThread()
void set(bool isSignal=true)
IChannel * _bindedChannel
virtual void onEncodeData(message_autoptr_t &message, _u8 *txbuffer, size_t *size)=0
ProtocolMessage & operator=(const ProtocolMessage &srcMessage)
virtual int read(void *buffer, size_t size)=0
Locker::LOCK_STATUS lock(unsigned long timeout=0xFFFFFFFF)
std::shared_ptr< ProtocolMessage > message_autoptr_t
rp::hal::Thread _decoderThread
rp::hal::Locker _rxLocker
u_result sendMessage(message_autoptr_t &msg)
void fillData(const void *buffer, size_t size)
#define RESULT_OPERATION_NOT_SUPPORT
#define RESULT_OPERATION_FAIL
IAsyncProtocolCodec & _codec
virtual int write(const void *data, size_t size)=0
@ WORKING_FLAG_RX_DISABLED
virtual ~ProtocolMessage()
u_result join(unsigned long timeout=-1)
unsigned long wait(unsigned long timeout=0xFFFFFFFF)
rplidar_ros
Author(s):
autogenerated on Fri Aug 2 2024 08:42:14