cs: Implementing fake CS

refs #1129

Change-Id: I1aa2e9dcea5a8f298b254f13ad651ced22118471
diff --git a/daemon/table/cs.hpp b/daemon/table/cs.hpp
new file mode 100644
index 0000000..67283b6
--- /dev/null
+++ b/daemon/table/cs.hpp
@@ -0,0 +1,43 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (C) 2014 Named Data Networking Project
+ * See COPYING for copyright and distribution information.
+ */
+
+#ifndef NFD_TABLE_CS_H
+#define NFD_TABLE_CS_H
+#include <boost/shared_ptr.hpp>
+#include <ndn-cpp-dev/interest.hpp>
+#include <ndn-cpp-dev/data.hpp>
+#include "cs-entry.hpp"
+namespace ndn {
+
+/** \class Cs
+ *  \brief represents the ContentStore
+ */
+class Cs : boost::noncopyable
+{
+public:
+  Cs();
+  
+  ~Cs();
+  
+  /** \brief inserts a Data packet
+   *  The caller should ensure that this Data packet is admittable,
+   *  ie. not unsolicited from a untrusted source.
+   *  This does not guarantee the Data is added to the cache;
+   *  even if the Data is added, it may be removed anytime in the future.
+   *  \return{ whether the Data is added }
+   */
+  bool
+  insert(boost::shared_ptr<Data> data);
+  
+  /** \brief finds the best match Data for an Interest
+   *  \return{ the best match, if any; otherwise null }
+   */
+  boost::shared_ptr<cs::Entry>
+  find(const Interest& interest);
+};
+
+};//namespace ndn
+#endif//NFD_TABLE_CS_H