OpenSDN source code
|
#include <proto.h>
Public Types | |
typedef WorkQueue < boost::shared_ptr< PktInfo > > | ProtoWorkQueue |
Public Member Functions | |
Proto (Agent *agent, const char *task_name, PktHandler::PktModuleName mod, boost::asio::io_context &io) | |
virtual | ~Proto () |
virtual bool | Validate (PktInfo *msg) |
virtual bool | Enqueue (boost::shared_ptr< PktInfo > msg) |
virtual void | ProcessStats (PktStatsType::Type type) |
virtual ProtoHandler * | AllocProtoHandler (boost::shared_ptr< PktInfo > info, boost::asio::io_context &io)=0 |
void | FreeBuffer (PktInfo *msg) |
bool | ProcessProto (boost::shared_ptr< PktInfo > msg_info) |
bool | RunProtoHandler (ProtoHandler *handler) |
void | set_trace (bool val) |
void | set_free_buffer (bool val) |
boost::asio::io_context & | get_io_service () const |
Agent * | agent () const |
const ProtoWorkQueue * | work_queue () const |
virtual void | TokenAvailable (TokenPool *pool) |
Protected Attributes | |
Agent * | agent_ |
PktHandler::PktModuleName | module_ |
bool | trace_ |
bool | free_buffer_ |
boost::asio::io_context & | io_ |
ProtoWorkQueue | work_queue_ |
Private Member Functions | |
DISALLOW_COPY_AND_ASSIGN (Proto) | |
Definition at line 15 of file controller/src/vnsw/agent/pkt/proto.h.
typedef WorkQueue<boost::shared_ptr<PktInfo> > Proto::ProtoWorkQueue |
Definition at line 17 of file controller/src/vnsw/agent/pkt/proto.h.
Proto::Proto | ( | Agent * | agent, |
const char * | task_name, | ||
PktHandler::PktModuleName | mod, | ||
boost::asio::io_context & | io | ||
) |
Definition at line 13 of file controller/src/vnsw/agent/pkt/proto.cc.
|
virtual |
Definition at line 24 of file controller/src/vnsw/agent/pkt/proto.cc.
|
inline |
Definition at line 35 of file controller/src/vnsw/agent/pkt/proto.h.
|
pure virtual |
Implemented in DnsProto, IgmpProto, Icmpv6Proto, ArpProto, BfdProto, DhcpProto, Dhcpv6Proto, DiagProto, IcmpErrorProto, MacLearningProto, IcmpProto, and Icmpv6ErrorProto.
|
private |
|
virtual |
Reimplemented in BfdProto.
Definition at line 38 of file controller/src/vnsw/agent/pkt/proto.cc.
void Proto::FreeBuffer | ( | PktInfo * | msg | ) |
Definition at line 28 of file controller/src/vnsw/agent/pkt/proto.cc.
|
inline |
Definition at line 34 of file controller/src/vnsw/agent/pkt/proto.h.
bool Proto::ProcessProto | ( | boost::shared_ptr< PktInfo > | msg_info | ) |
Definition at line 59 of file controller/src/vnsw/agent/pkt/proto.cc.
|
inlinevirtual |
Reimplemented in BfdProto.
Definition at line 25 of file controller/src/vnsw/agent/pkt/proto.h.
bool Proto::RunProtoHandler | ( | ProtoHandler * | handler | ) |
Definition at line 50 of file controller/src/vnsw/agent/pkt/proto.cc.
|
inline |
Definition at line 33 of file controller/src/vnsw/agent/pkt/proto.h.
|
inline |
Definition at line 32 of file controller/src/vnsw/agent/pkt/proto.h.
|
inlinevirtual |
Reimplemented in FlowProto, and MacLearningProto.
Definition at line 37 of file controller/src/vnsw/agent/pkt/proto.h.
|
inlinevirtual |
Reimplemented in FlowProto, and MacLearningProto.
Definition at line 23 of file controller/src/vnsw/agent/pkt/proto.h.
|
inline |
Definition at line 36 of file controller/src/vnsw/agent/pkt/proto.h.
|
protected |
Definition at line 39 of file controller/src/vnsw/agent/pkt/proto.h.
|
protected |
Definition at line 42 of file controller/src/vnsw/agent/pkt/proto.h.
|
protected |
Definition at line 43 of file controller/src/vnsw/agent/pkt/proto.h.
|
protected |
Definition at line 40 of file controller/src/vnsw/agent/pkt/proto.h.
|
protected |
Definition at line 41 of file controller/src/vnsw/agent/pkt/proto.h.
|
protected |
Definition at line 44 of file controller/src/vnsw/agent/pkt/proto.h.