Added Interest
diff --git a/ndn-cpp/Interest.hpp b/ndn-cpp/Interest.hpp
new file mode 100644
index 0000000..a1f045f
--- /dev/null
+++ b/ndn-cpp/Interest.hpp
@@ -0,0 +1,68 @@
+/* 
+ * Author: Jeff Thompson
+ *
+ * BSD license, See the LICENSE file for more information.
+ */
+
+#ifndef NDN_INTEREST_HPP
+#define	NDN_INTEREST_HPP
+
+#include <vector>
+#include "Name.hpp"
+#include "c/Interest.h"
+
+namespace ndn {
+
+class Interest {
+public:    
+  void encode(std::vector<unsigned char> &output, WireFormat &wireFormat) 
+  {
+    wireFormat.encodeInterest(*this, output);
+  }
+  void encode(std::vector<unsigned char> &output) 
+  {
+    encode(output, BinaryXMLWireFormat::instance());
+  }
+  void decode(const unsigned char *input, unsigned int inputLength, WireFormat &wireFormat) 
+  {
+    wireFormat.decodeInterest(*this, input, inputLength);
+  }
+  void decode(const unsigned char *input, unsigned int inputLength) 
+  {
+    decode(input, inputLength, BinaryXMLWireFormat::instance());
+  }
+  void decode(const std::vector<unsigned char> &input, WireFormat &wireFormat) 
+  {
+    decode(&input[0], input.size(), wireFormat);
+  }
+  void decode(const std::vector<unsigned char> &input) 
+  {
+    decode(&input[0], input.size());
+  }
+
+  Name &getName() { return name_; }
+  
+  /**
+   * Clear this interest, and set the values by copying from the interest struct.
+   * @param interestStruct a C ndn_Interest struct
+   */
+  void set(struct ndn_Interest &interestStruct);
+
+private:
+  
+  Name name_;
+	int maxSuffixComponents_;
+	int minSuffixComponents_;
+	
+	std::vector<unsigned char> publisherPublicKeyDigest_;
+	// TODO: implement exclude
+	int childSelector_;
+	int answerOriginKind_;
+	int scope_;
+	int interestLifetime_;
+	std::vector<unsigned char> nonce_;
+};
+  
+}
+
+#endif