5 #ifndef vnsw_agent_proto_hpp
6 #define vnsw_agent_proto_hpp
20 boost::asio::io_context &io);
24 virtual bool Enqueue(boost::shared_ptr<PktInfo> msg);
27 boost::asio::io_context &io) = 0;
43 boost::asio::io_context &
io_;
50 #endif // vnsw_agent_proto_hpp
bool RunProtoHandler(ProtoHandler *handler)
ProtoWorkQueue work_queue_
boost::asio::io_context & io_
virtual bool Validate(PktInfo *msg)
DISALLOW_COPY_AND_ASSIGN(Proto)
virtual bool Enqueue(boost::shared_ptr< PktInfo > msg)
WorkQueue< boost::shared_ptr< PktInfo > > ProtoWorkQueue
void FreeBuffer(PktInfo *msg)
virtual ProtoHandler * AllocProtoHandler(boost::shared_ptr< PktInfo > info, boost::asio::io_context &io)=0
virtual void ProcessStats(PktStatsType::Type type)
Proto(Agent *agent, const char *task_name, PktHandler::PktModuleName mod, boost::asio::io_context &io)
void set_free_buffer(bool val)
boost::asio::io_context & get_io_service() const
const ProtoWorkQueue * work_queue() const
virtual void TokenAvailable(TokenPool *pool)
PktHandler::PktModuleName module_
bool ProcessProto(boost::shared_ptr< PktInfo > msg_info)