20 #ifndef _SANDESH_TRANSPORT_TVIRTUALTRANSPORT_H_
21 #define _SANDESH_TRANSPORT_TVIRTUALTRANSPORT_H_ 1
23 #include <sandesh/transport/TTransport.h>
25 namespace contrail {
namespace sandesh {
namespace transport {
50 uint32_t
read(uint8_t* buf, uint32_t len) {
53 uint32_t
readAll(uint8_t* buf, uint32_t len) {
56 int write(
const uint8_t* buf, uint32_t len) {
59 const uint8_t*
borrow(uint8_t* buf, uint32_t* len) {
87 template <
class Transport_,
class Super_=TTransportDefaults>
94 virtual int32_t
read_virt(uint8_t* buf, uint32_t len) {
95 return static_cast<Transport_*
>(
this)->read(buf, len);
99 return static_cast<Transport_*
>(
this)->
readAll(buf, len);
103 return static_cast<Transport_*
>(
this)->write(buf, len);
107 return static_cast<Transport_*
>(
this)->borrow(buf, len);
111 static_cast<Transport_*
>(
this)->consume(len);
124 uint32_t
readAll(uint8_t* buf, uint32_t len) {
125 Transport_* trans =
static_cast<Transport_*
>(
this);
137 template <
typename Arg_>
140 template <
typename Arg1_,
typename Arg2_>
146 #endif // #ifndef _SANDESH_TRANSPORT_TVIRTUALTRANSPORT_H_
virtual void consume_virt(uint32_t)
virtual void consume_virt(uint32_t len)
virtual int write_virt(const uint8_t *buf, uint32_t len)
virtual int32_t read_virt(uint8_t *, uint32_t)
virtual const uint8_t * borrow_virt(uint8_t *, uint32_t *)
TVirtualTransport(Arg_ const &arg)
uint32_t readAll(uint8_t *buf, uint32_t len)
const uint8_t * borrow(uint8_t *buf, uint32_t *len)
virtual int32_t readAll_virt(uint8_t *buf, uint32_t len)
virtual int write_virt(const uint8_t *, uint32_t)
TVirtualTransport(Arg1_ const &a1, Arg2_ const &a2)
void consume(uint32_t len)
uint32_t readAll(uint8_t *buf, uint32_t len)
virtual int32_t readAll_virt(uint8_t *buf, uint32_t len)
uint32_t read(uint8_t *buf, uint32_t len)
virtual int32_t read_virt(uint8_t *buf, uint32_t len)
int32_t readAll(Transport_ &trans, uint8_t *buf, uint32_t len)
virtual const uint8_t * borrow_virt(uint8_t *buf, uint32_t *len)
int write(const uint8_t *buf, uint32_t len)