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


Public Types | |
| enum | Type {  INVALID , PHYSICAL , REMOTE_PHYSICAL , LOGICAL , VM_INTERFACE , INET , PACKET }  | 
| enum | Trace {  ADD , DEL , ACTIVATED , DEACTIVATED , FLOATING_IP_CHANGE , SERVICE_CHANGE }  | 
| enum | MirrorDirection { MIRROR_RX_TX , MIRROR_RX , MIRROR_TX , UNKNOWN } | 
| enum | Transport {  TRANSPORT_INVALID , TRANSPORT_VIRTUAL , TRANSPORT_ETHERNET , TRANSPORT_SOCKET , TRANSPORT_PMD }  | 
  Public Types inherited from AgentDBEntry | |
| typedef boost::intrusive_ptr< AgentDBEntry > | AgentDBEntyRef | 
  Public Types inherited from DBEntryBase | |
| typedef DBTableBase::ListenerId | ListenerId | 
| typedef std::unique_ptr< DBRequestKey > | KeyPtr | 
Public Member Functions | |
| Interface (Type type, const boost::uuids::uuid &uuid, const std::string &name, VrfEntry *vrf, bool os_oper_state, const boost::uuids::uuid &logical_router_uuid) | |
| virtual | ~Interface () | 
| virtual KeyPtr | GetDBRequestKey () const =0 | 
| virtual void | SetKey (const DBRequestKey *key) | 
| virtual bool | CmpInterface (const DBEntry &rhs) const =0 | 
| virtual bool | Delete (const DBRequest *req) | 
| virtual void | Add () | 
| virtual void | SendTrace (const AgentDBTable *table, Trace event) const | 
| virtual void | GetOsParams (Agent *agent) | 
| void | SetPciIndex (Agent *agent, size_t index) | 
| bool | IsLess (const DBEntry &rhs) const | 
| uint32_t | vrf_id () const | 
| uint32_t | GetRefCount () const | 
| bool | DBEntrySandesh (Sandesh *sresp, std::string &name) const | 
| bool | IsTunnelEnabled () const | 
| Type | type () const | 
| const boost::uuids::uuid & | GetUuid () const | 
| const std::string & | name () const | 
| VrfEntry * | vrf () const | 
| bool | ipv4_active () const | 
| bool | ipv6_active () const | 
| bool | is_hc_active () const | 
| bool | metadata_ip_active () const | 
| bool | metadata_l2_active () const | 
| bool | ip_active (Address::Family family) const | 
| bool | l2_active () const | 
| const uint32_t | id () const | 
| bool | dhcp_enabled () const | 
| bool | dhcp_enabled_v6 () const | 
| bool | dns_enabled () const | 
| uint32_t | label () const | 
| uint32_t | l2_label () const | 
| bool | IsL2LabelValid (uint32_t label) const | 
| uint32_t | os_index () const | 
| const MacAddress & | mac () const | 
| bool | os_oper_state () const | 
| bool | admin_state () const | 
| void | set_test_oper_state (bool val) | 
| void | set_flow_key_nh (const NextHop *nh) | 
| const NextHop * | flow_key_nh () const | 
| Interface::Transport | transport () const | 
| bool | IsUveActive () const | 
| const AgentQosConfig * | qos_config () const | 
| void | UpdateOperStateOfSubIntf (const InterfaceTable *table) | 
| bool | NeedDefaultOsOperStateDisabled (Agent *agent) const | 
| boost::optional< InterfaceOsParams::IfGuid > | os_guid () const | 
| const boost::uuids::uuid & | logical_router_uuid () const | 
| void | set_logical_router_uuid (const boost::uuids::uuid &logical_router_uuid) | 
| InterfaceOsParams | get_os_params () | 
  Public Member Functions inherited from AgentOperDBEntry | |
| AgentOperDBEntry () | |
| virtual | ~AgentOperDBEntry () | 
| IFMapNode * | ifmap_node () const | 
| void | SetIFMapNodeState (IFMapDependencyManager::IFMapNodePtr sref) | 
  Public Member Functions inherited from AgentDBEntry | |
| AgentDBEntry () | |
| virtual | ~AgentDBEntry () | 
| void | SetRefState () const | 
| void | ClearRefState () const | 
| bool | IsActive () const | 
| DBState * | GetAgentDBEntryState (int listener_id) | 
| const DBState * | GetAgentDBEntryState (int listener_id) const | 
| virtual void | AllocateResources (ResourceManager *resource_manager) | 
| virtual void | FreeResources (ResourceManager *resource_manager) | 
| virtual void | PostAdd () | 
  Public Member Functions inherited from DBEntry | |
| DBEntry () | |
| virtual | ~DBEntry () | 
| bool | operator< (const DBEntry &rhs) const | 
  Public Member Functions inherited from DBEntryBase | |
| DBEntryBase () | |
| virtual | ~DBEntryBase () | 
| virtual std::string | ToString () const =0 | 
| virtual bool | IsMoreSpecific (const std::string &match) const | 
| virtual bool | IsLessSpecific (const std::string &match) const | 
| void | SetState (DBTableBase *tbl_base, ListenerId listener, DBState *state) | 
| void | ClearState (DBTableBase *tbl_base, ListenerId listener) | 
| DBState * | GetState (DBTableBase *tbl_base, ListenerId listener) const | 
| const DBState * | GetState (const DBTableBase *tbl_base, ListenerId listener) const | 
| bool | is_state_empty (DBTablePartBase *tpart) | 
| bool | is_state_empty_unlocked (DBTablePartBase *tpart) | 
| void | Delete () | 
| void | MarkDelete () | 
| void | ClearDelete () | 
| bool | IsDeleted () const | 
| void | set_onlist () | 
| void | clear_onlist () | 
| bool | is_onlist () | 
| void | SetOnRemoveQ () | 
| bool | IsOnRemoveQ () | 
| void | ClearOnRemoveQ () | 
| void | set_last_change_at (uint64_t time) | 
| void | set_last_change_at_to_now () | 
| const uint64_t | last_change_at () const | 
| const std::string | last_change_at_str () const | 
| void | set_last_update_at (uint64_t time) | 
| void | set_last_update_at_to_now () | 
| const uint64_t | last_update_at () const | 
| DBTablePartBase * | get_table_partition () const | 
| void | set_table_partition (DBTablePartBase *tpart) | 
| DBTableBase * | get_table () const | 
| void | Notify () | 
Static Public Attributes | |
| static const uint32_t | kInvalidIndex = 0xFFFFFFFF | 
Protected Member Functions | |
| void | SetItfSandeshData (ItfSandeshData &data) const | 
| virtual void | ObtainOsSpecificParams (const std::string &name, Agent *agent) | 
Protected Attributes | |
| Type | type_ | 
| boost::uuids::uuid | uuid_ | 
| VrfEntryRef | vrf_ | 
| uint32_t | label_ | 
| uint32_t | l2_label_ | 
| bool | ipv4_active_ | 
| bool | ipv6_active_ | 
| bool | is_hc_active_ | 
| bool | metadata_ip_active_ | 
| bool | metadata_l2_active_ | 
| bool | l2_active_ | 
| size_t | id_ | 
| bool | dhcp_enabled_ | 
| bool | dhcp_enabled_v6_ | 
| bool | dns_enabled_ | 
| bool | admin_state_ | 
| bool | test_oper_state_ | 
| NextHopConstRef | flow_key_nh_ | 
| Transport | transport_ | 
| AgentQosConfigConstRef | qos_config_ | 
| struct InterfaceOsParams | os_params_ | 
| boost::uuids::uuid | logical_router_uuid_ | 
Private Member Functions | |
| DISALLOW_COPY_AND_ASSIGN (Interface) | |
  Private Member Functions inherited from AgentRefCount< Interface > | |
| uint32_t | GetRefCount () const | 
| AgentRefCount () | |
| AgentRefCount (const AgentRefCount &) | |
| AgentRefCount & | operator= (const AgentRefCount &) | 
| virtual | ~AgentRefCount () | 
| void | swap (AgentRefCount &) | 
Private Attributes | |
| InterfaceTable * | table_ | 
  Private Attributes inherited from AgentRefCount< Interface > | |
| tbb::mutex | back_ref_mutex_ | 
| std::set< IntrusiveReferrer > | back_ref_set_ | 
Friends | |
| class | InterfaceTable | 
Additional Inherited Members | |
  Public Attributes inherited from DBEntryBase | |
| boost::intrusive::list_member_hook | chg_list_ | 
Definition at line 23 of file interface.h.
| Enumerator | |
|---|---|
| MIRROR_RX_TX | |
| MIRROR_RX | |
| MIRROR_TX | |
| UNKNOWN | |
Definition at line 55 of file interface.h.
| enum Interface::Trace | 
| Enumerator | |
|---|---|
| ADD | |
| DEL | |
| ACTIVATED | |
| DEACTIVATED | |
| FLOATING_IP_CHANGE | |
| SERVICE_CHANGE | |
Definition at line 46 of file interface.h.
| enum Interface::Transport | 
| Enumerator | |
|---|---|
| TRANSPORT_INVALID | |
| TRANSPORT_VIRTUAL | |
| TRANSPORT_ETHERNET | |
| TRANSPORT_SOCKET | |
| TRANSPORT_PMD | |
Definition at line 62 of file interface.h.
| enum Interface::Type | 
| Enumerator | |
|---|---|
| INVALID | |
| PHYSICAL | |
| REMOTE_PHYSICAL | |
| LOGICAL | |
| VM_INTERFACE | |
| INET | |
| PACKET | |
Definition at line 26 of file interface.h.
| Interface::Interface | ( | Type | type, | 
| const boost::uuids::uuid & | uuid, | ||
| const std::string & | name, | ||
| VrfEntry * | vrf, | ||
| bool | os_oper_state, | ||
| const boost::uuids::uuid & | logical_router_uuid | ||
| ) | 
Definition at line 480 of file interface.cc.
      
  | 
  virtual | 
      
  | 
  inlinevirtual | 
Reimplemented in VmInterface.
Definition at line 86 of file interface.h.
      
  | 
  inline | 
Definition at line 133 of file interface.h.
      
  | 
  pure virtual | 
Implemented in VmInterface, RemotePhysicalInterface, PhysicalInterface, PacketInterface, LogicalInterface, and InetInterface.
      
  | 
  virtual | 
Implements AgentDBEntry.
Definition at line 1417 of file interface.cc.

      
  | 
  inlinevirtual | 
Reimplemented in VmInterface, PhysicalInterface, PacketInterface, LogicalInterface, and InetInterface.
Definition at line 85 of file interface.h.
      
  | 
  inline | 
Definition at line 124 of file interface.h.
      
  | 
  inline | 
Definition at line 125 of file interface.h.
      
  | 
  private | 
      
  | 
  inline | 
Definition at line 126 of file interface.h.
      
  | 
  inline | 
Definition at line 137 of file interface.h.
      
  | 
  inline | 
Definition at line 153 of file interface.h.
      
  | 
  pure virtual | 
Implements DBEntryBase.
Implemented in VmInterface, RemotePhysicalInterface, PhysicalInterface, PacketInterface, VlanLogicalInterface, and InetInterface.
      
  | 
  virtual | 
Reimplemented in VmInterface, RemotePhysicalInterface, and LogicalInterface.
Definition at line 536 of file interface.cc.

      
  | 
  inlinevirtual | 
Implements AgentDBEntry.
Definition at line 102 of file interface.h.

      
  | 
  inline | 
Definition at line 113 of file interface.h.
      
  | 
  inline | 
Definition at line 123 of file interface.h.
| bool Interface::ip_active | ( | Address::Family | family | ) | const | 
Definition at line 1476 of file interface.cc.
      
  | 
  inline | 
Definition at line 116 of file interface.h.
      
  | 
  inline | 
Definition at line 117 of file interface.h.
      
  | 
  inline | 
Definition at line 118 of file interface.h.
      
  | 
  inline | 
      
  | 
  inlinevirtual | 
Implements DBEntry.
Definition at line 92 of file interface.h.

      
  | 
  inline | 
Definition at line 109 of file interface.h.
| bool Interface::IsUveActive | ( | ) | const | 
      
  | 
  inline | 
Definition at line 122 of file interface.h.
      
  | 
  inline | 
Definition at line 128 of file interface.h.
      
  | 
  inline | 
Definition at line 127 of file interface.h.
      
  | 
  inline | 
Definition at line 146 of file interface.h.
      
  | 
  inline | 
Definition at line 131 of file interface.h.
      
  | 
  inline | 
Definition at line 119 of file interface.h.
      
  | 
  inline | 
Definition at line 120 of file interface.h.
      
  | 
  inline | 
Definition at line 114 of file interface.h.
| bool Interface::NeedDefaultOsOperStateDisabled | ( | Agent * | agent | ) | const | 
      
  | 
  protectedvirtual | 
Reimplemented in VmInterface, PhysicalInterface, and PacketInterface.
Definition at line 10 of file interface_params.cc.

      
  | 
  inline | 
Definition at line 145 of file interface.h.
      
  | 
  inline | 
Definition at line 130 of file interface.h.
      
  | 
  inline | 
Definition at line 132 of file interface.h.
      
  | 
  inline | 
Definition at line 140 of file interface.h.
      
  | 
  virtual | 
Reimplemented in VmInterface.
Definition at line 1455 of file interface.cc.

      
  | 
  inline | 
Definition at line 136 of file interface.h.
      
  | 
  inline | 
      
  | 
  inline | 
Definition at line 135 of file interface.h.
      
  | 
  protected | 
Definition at line 822 of file interface.cc.
      
  | 
  virtual | 
Implements DBEntry.
Definition at line 614 of file interface.cc.
| void Interface::SetPciIndex | ( | Agent * | agent, | 
| size_t | index | ||
| ) | 
      
  | 
  inline | 
Definition at line 138 of file interface.h.
      
  | 
  inline | 
Definition at line 112 of file interface.h.
| void Interface::UpdateOperStateOfSubIntf | ( | const InterfaceTable * | table | ) | 
      
  | 
  inline | 
Definition at line 115 of file interface.h.
| uint32_t Interface::vrf_id | ( | ) | const | 
Definition at line 621 of file interface.cc.
      
  | 
  friend | 
Definition at line 192 of file interface.h.
      
  | 
  protected | 
Definition at line 178 of file interface.h.
      
  | 
  protected | 
Definition at line 175 of file interface.h.
      
  | 
  protected | 
Definition at line 176 of file interface.h.
      
  | 
  protected | 
Definition at line 177 of file interface.h.
      
  | 
  protected | 
Definition at line 185 of file interface.h.
      
  | 
  protected | 
Definition at line 174 of file interface.h.
      
  | 
  protected | 
Definition at line 166 of file interface.h.
      
  | 
  protected | 
Definition at line 167 of file interface.h.
      
  | 
  protected | 
Definition at line 169 of file interface.h.
      
  | 
  static | 
Definition at line 70 of file interface.h.
      
  | 
  protected | 
Definition at line 173 of file interface.h.
      
  | 
  protected | 
Definition at line 165 of file interface.h.
      
  | 
  protected | 
Definition at line 164 of file interface.h.
      
  | 
  protected | 
Definition at line 189 of file interface.h.
      
  | 
  protected | 
Definition at line 171 of file interface.h.
      
  | 
  protected | 
Definition at line 172 of file interface.h.
      
  | 
  protected | 
Definition at line 187 of file interface.h.
      
  | 
  protected | 
Definition at line 187 of file interface.h.
      
  | 
  private | 
Definition at line 193 of file interface.h.
      
  | 
  protected | 
Definition at line 180 of file interface.h.
      
  | 
  protected | 
Definition at line 186 of file interface.h.
      
  | 
  protected | 
Definition at line 161 of file interface.h.
      
  | 
  protected | 
Definition at line 162 of file interface.h.
      
  | 
  protected | 
Definition at line 163 of file interface.h.