face: Refactor Face as LinkService+Transport
LpFace: new Face implementation
LpFaceWrapper: allows new Face system to work with old Face system
Eventually, LpFace will be renamed to Face and LpFaceWrapper will be removed.
refs #3088 #3179
Change-Id: Ia4ad7c84631e65b444d4f24e1d7593392927c8db
diff --git a/common.hpp b/common.hpp
index 3e4f44f..c64dd37 100644
--- a/common.hpp
+++ b/common.hpp
@@ -41,7 +41,8 @@
#endif
/** \def DECL_OVERRIDE
- * \brief expands to 'override' if compiler supports this feature, otherwise expands to nothing
+ * \brief expands to 'override' if compiler supports 'override' specifier,
+ * otherwise expands to nothing
*/
#ifdef HAVE_CXX_OVERRIDE
#define DECL_OVERRIDE override
@@ -49,6 +50,26 @@
#define DECL_OVERRIDE
#endif
+/** \def DECL_FINAL
+ * \brief expands to 'final' if compiler supports 'final' specifier on method,
+ * otherwise expands to nothing
+ */
+#ifdef HAVE_CXX_FINAL
+#define DECL_FINAL final
+#else
+#define DECL_FINAL
+#endif
+
+/** \def DECL_CLASS_FINAL
+ * \brief expands to 'final' if compiler supports 'final' specifier on class,
+ * otherwise expands to nothing
+ */
+#ifdef HAVE_CXX_CLASS_FINAL
+#define DECL_CLASS_FINAL final
+#else
+#define DECL_CLASS_FINAL
+#endif
+
#include <cstddef>
#include <cstdint>
#include <functional>
@@ -67,6 +88,7 @@
#include <ndn-cxx/data.hpp>
#include <ndn-cxx/name.hpp>
#include <ndn-cxx/encoding/block.hpp>
+#include <ndn-cxx/lp/nack.hpp>
#include <ndn-cxx/util/backports.hpp>
#include <ndn-cxx/util/face-uri.hpp>
#include <ndn-cxx/util/signal.hpp>
@@ -117,6 +139,7 @@
using namespace ndn::tlv;
} // namespace tlv
+namespace lp = ndn::lp;
namespace name = ndn::name;
namespace time = ndn::time;
namespace signal = ndn::util::signal;