First steps in CCNx packet coding. ccnx_encode* routines rewritten in NS3 style (using NS3::Buffer)

diff --git a/in-progress/ccnx-rit.h b/in-progress/ccnx-rit.h
new file mode 100644
index 0000000..4a03bda
--- /dev/null
+++ b/in-progress/ccnx-rit.h
@@ -0,0 +1,52 @@
+/* 
+ * File:   ndn_rit.h
+ * Author: cawka
+ *
+ * Created on December 15, 2010, 2:02 PM
+ */
+
+#ifndef NDN_RIT_H
+#define	NDN_RIT_H
+
+#include "hash_helper.h"
+#include <qualnet_mutex.h>
+#include <clock.h>
+#include <list>
+using namespace std;
+
+//recent interest
+struct RitEntry
+{
+    int nonce;
+    clocktype expireTime;  //RIT entries will stay in the table for a while before being cleaned out
+};
+
+typedef int_key_hash_t<RitEntry>::point_iterator RitIterator;
+typedef int_key_hash_t<RitEntry>::iterator RitRangeIterator;
+
+class NdnRit
+{
+public:
+	NdnRit( );
+	virtual ~NdnRit( );
+
+	//Find corresponding RIT entry for the given content name
+	RitIterator lookup( int nonce );
+	bool isValid( const RitIterator &it ) { return it!=_rit.end(); }
+
+	//add new RIT entry
+	bool add( int nonce, clocktype expireTime );
+
+	// Delete expired records
+	void cleanExpired( clocktype time );
+	
+private:
+	int_key_hash_t<RitEntry> _rit;
+
+	list<RitEntry*> _ritExpirationList;
+
+	QNThreadMutex   _ritMutex;
+};
+
+#endif	/* NdnRit_H */
+