5 #ifndef SRC_BGP_EVPN_EVPN_TABLE_H_
6 #define SRC_BGP_EVPN_EVPN_TABLE_H_
31 virtual std::unique_ptr<DBEntry>
AllocEntryStr(
const std::string &key)
const;
const std::string & name() const
This class represents the EVPN manager for an EvpnTable in a VRF.
uint64_t im_route_count() const
virtual BgpRoute * TableFind(DBTablePartition *rtp, const DBRequestKey *prefix)
EvpnManager * GetEvpnManager()
tbb::atomic< uint64_t > im_route_count_
virtual Address::Family family() const
virtual void set_routing_instance(RoutingInstance *rtinstance)
uint64_t unique_mac_route_count() const
virtual BgpRoute * RouteReplicate(BgpServer *server, BgpTable *src_table, BgpRoute *src_rt, const BgpPath *path, ExtCommunityPtr ptr)
uint64_t ip_route_count() const
EvpnManager * evpn_manager_
tbb::atomic< uint64_t > ip_route_count_
virtual std::unique_ptr< DBEntry > AllocEntry(const DBRequestKey *key) const
DISALLOW_COPY_AND_ASSIGN(EvpnTable)
static size_t HashFunction(const EvpnPrefix &prefix)
uint64_t mac_route_count() const
EvpnRoute * FindRoute(const EvpnPrefix &prefix)
tbb::atomic< uint64_t > unique_mac_route_count_
virtual bool Export(RibOut *ribout, Route *route, const RibPeerSet &peerset, UpdateInfoSList &info_slist)
void DestroyEvpnManager()
virtual bool IsVpnTable() const
virtual PathResolver * CreatePathResolver()
bool ShouldReplicate(const BgpServer *server, const BgpTable *src_table, const ExtCommunityPtr community, const EvpnPrefix &evpn_prefix) const
tbb::atomic< uint64_t > mac_route_count_
virtual void AddRemoveCallback(const DBEntryBase *entry, bool add) const
static DBTableBase * CreateTable(DB *db, const std::string &name)
virtual std::unique_ptr< DBEntry > AllocEntryStr(const std::string &key) const
EvpnTable(DB *db, const std::string &name)
virtual size_t Hash(const DBEntry *entry) const
RequestKey(const EvpnPrefix &prefix, const IPeer *ipeer)
virtual const IPeer * GetPeer() const