limits: Adding ability for GlobalRoutingController to set precise BDP prefix limits using knowledge of RTT for destination
diff --git a/utils/ndn-limits.h b/utils/ndn-limits.h
index 5fdad53..d1daa10 100644
--- a/utils/ndn-limits.h
+++ b/utils/ndn-limits.h
@@ -83,6 +83,13 @@
   }
 
   /**
+   * @brief Get maximum limit (interpretation of the limit depends on realization)
+   */
+  virtual
+  double
+  GetMaxLimit () const = 0;
+
+  /**
    * @brief Check whether limits are enabled or not
    */
   virtual inline bool
@@ -110,6 +117,15 @@
    */
   virtual double
   GetCurrentLimit () const = 0;
+
+  /**
+   * @brief Get value of the current limit in terms of maximum rate that needs to be enforced
+   *
+   * Compared to GetCurrentLimit, this method guarantees that the returned value is maximum number of packets
+   * that can be send out within one second (max "rate")
+   */
+  virtual double
+  GetCurrentLimitRate () const = 0;
   
   ////////////////////////////////////////////////////////////////////////////
   ////////////////////////////////////////////////////////////////////////////
@@ -135,6 +151,26 @@
   virtual void
   ReturnLimit () = 0;
 
+  /**
+   * @brief Set link delay (in seconds)
+   *
+   * This is a supplementary information that may or may not be useful for limits
+   */
+  virtual void
+  SetLinkDelay (double delay)
+  {
+    m_linkDelay = delay;
+  }
+
+  /**
+   * @brief Get link delay (in seconds)
+   */
+  virtual double
+  GetLinkDelay () const
+  {
+    return m_linkDelay;
+  }
+  
   ////////////////////////////////////////////////////////////////////////////
   ////////////////////////////////////////////////////////////////////////////
   ////////////////////////////////////////////////////////////////////////////
@@ -154,6 +190,8 @@
   double m_maxDelay;
 
   CallbackHandler m_handler;
+
+  double m_linkDelay;
 };