vxlan: vxlan/vxlan.api API cleanup
[vpp.git] / extras / vom / vom / gbp_subnet.hpp
index e08f1a2..3ae8439 100644 (file)
@@ -53,25 +53,43 @@ public:
      */
     const static type_t TRANSPORT;
 
+    /**
+     * A L3-out subnet
+     */
+    const static type_t L3_OUT;
+
+    /**
+     * An anonymous L3-out subnet
+     */
+    const static type_t ANON_L3_OUT;
+
   private:
     type_t(int v, const std::string s);
   };
 
   /**
-  * Construct an internal GBP subnet
-  */
+   * Construct an internal GBP subnet
+   */
   gbp_subnet(const gbp_route_domain& rd,
              const route::prefix_t& prefix,
              const type_t& type);
 
   /**
-   * Construct an external GBP subnet
+   * Construct an stitched external GBP subnet
    */
   gbp_subnet(const gbp_route_domain& rd,
              const route::prefix_t& prefix,
              const gbp_recirc& recirc,
              const gbp_endpoint_group& epg);
 
+  /**
+   * Construct an l3-out GBP subnet
+   */
+  gbp_subnet(const gbp_route_domain& rd,
+             const route::prefix_t& prefix,
+             sclass_t sclass,
+             const type_t& type = type_t::L3_OUT);
+
   /**
    * Copy Construct
    */
@@ -208,6 +226,11 @@ private:
    */
   std::shared_ptr<gbp_endpoint_group> m_epg;
 
+  /**
+   * Sclass for l3-out subnets
+   */
+  sclass_t m_sclass;
+
   /**
    * A map of all bridge_domains
    */