|
OpenSDN source code
|
#include <mac_learning_proto.h>


Public Types | |
| typedef boost::shared_ptr< MacLearningPartition > | MacLearningPartitionPtr |
| typedef boost::shared_ptr< MacIpLearningTable > | MacIpLearningTablePtr |
| typedef std::vector< MacLearningPartitionPtr > | MacLearningPartitionList |
| typedef boost::shared_ptr< MacAgingTable > | MacAgingTablePtr |
Public Types inherited from Proto | |
| typedef WorkQueue< boost::shared_ptr< PktInfo > > | ProtoWorkQueue |
Public Member Functions | |
| MacLearningProto (Agent *agent, boost::asio::io_context &io) | |
| virtual | ~MacLearningProto () |
| virtual bool | Validate (PktInfo *msg) |
| virtual ProtoHandler * | AllocProtoHandler (boost::shared_ptr< PktInfo > info, boost::asio::io_context &io) |
| MacLearningPartition * | Find (uint32_t index) |
| void | Delete (uint32_t index) |
| bool | Enqueue (PktInfoPtr msg) |
| void | Init () |
| uint32_t | Hash (uint32_t vrf_id, const MacAddress &mac) |
| uint32_t | size () |
| TokenPool * | add_tokens () |
| TokenPool * | change_tokens () |
| TokenPool * | delete_tokens () |
| TokenPtr | GetToken (MacLearningEntryRequest::Event event) |
| virtual void | TokenAvailable (TokenPool *pool) |
| MacIpLearningTable * | GetMacIpLearningTable () |
Public Member Functions inherited from Proto | |
| Proto (Agent *agent, const char *task_name, PktHandler::PktModuleName mod, boost::asio::io_context &io) | |
| virtual | ~Proto () |
| virtual void | ProcessStats (PktStatsType::Type type) |
| 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 |
Private Member Functions | |
| DISALLOW_COPY_AND_ASSIGN (MacLearningProto) | |
Private Attributes | |
| tbb::mutex::scoped_lock | mutex_ |
| MacLearningPartitionList | mac_learning_partition_list_ |
| MacIpLearningTablePtr | mac_ip_learning_tbl_ |
| TokenPool | add_tokens_ |
| TokenPool | change_tokens_ |
| TokenPool | delete_tokens_ |
Additional Inherited Members | |
Protected Attributes inherited from Proto | |
| Agent * | agent_ |
| PktHandler::PktModuleName | module_ |
| bool | trace_ |
| bool | free_buffer_ |
| boost::asio::io_context & | io_ |
| ProtoWorkQueue | work_queue_ |
Definition at line 20 of file mac_learning_proto.h.
| typedef boost::shared_ptr<MacAgingTable> MacLearningProto::MacAgingTablePtr |
Definition at line 26 of file mac_learning_proto.h.
| typedef boost::shared_ptr<MacIpLearningTable> MacLearningProto::MacIpLearningTablePtr |
Definition at line 23 of file mac_learning_proto.h.
| typedef std::vector<MacLearningPartitionPtr> MacLearningProto::MacLearningPartitionList |
Definition at line 24 of file mac_learning_proto.h.
| typedef boost::shared_ptr<MacLearningPartition> MacLearningProto::MacLearningPartitionPtr |
Definition at line 22 of file mac_learning_proto.h.
| MacLearningProto::MacLearningProto | ( | Agent * | agent, |
| boost::asio::io_context & | io | ||
| ) |
|
inlinevirtual |
Definition at line 30 of file mac_learning_proto.h.
|
inline |
Definition at line 48 of file mac_learning_proto.h.
|
virtual |
Implements Proto.
Definition at line 24 of file mac_learning_proto.cc.

|
inline |
Definition at line 52 of file mac_learning_proto.h.
|
inline |
Definition at line 38 of file mac_learning_proto.h.
|
inline |
Definition at line 56 of file mac_learning_proto.h.
|
private |
|
virtual |
Reimplemented from Proto.
Definition at line 48 of file mac_learning_proto.cc.

| MacLearningPartition * MacLearningProto::Find | ( | uint32_t | index | ) |
Definition at line 81 of file mac_learning_proto.cc.
| MacIpLearningTable * MacLearningProto::GetMacIpLearningTable | ( | ) |
Definition at line 107 of file mac_learning_proto.cc.
| TokenPtr MacLearningProto::GetToken | ( | MacLearningEntryRequest::Event | event | ) |
| uint32_t MacLearningProto::Hash | ( | uint32_t | vrf_id, |
| const MacAddress & | mac | ||
| ) |
| void MacLearningProto::Init | ( | ) |
|
inline |
Definition at line 44 of file mac_learning_proto.h.
|
virtual |
Reimplemented from Proto.
Definition at line 90 of file mac_learning_proto.cc.

|
inlinevirtual |
Reimplemented from Proto.
Definition at line 32 of file mac_learning_proto.h.
|
private |
Definition at line 68 of file mac_learning_proto.h.
|
private |
Definition at line 69 of file mac_learning_proto.h.
|
private |
Definition at line 70 of file mac_learning_proto.h.
|
private |
Definition at line 67 of file mac_learning_proto.h.
|
private |
Definition at line 66 of file mac_learning_proto.h.
|
private |
Definition at line 65 of file mac_learning_proto.h.