blob: ad3a88c70dcb5c359c1e4f437a3fa7feeb4ac9ba [file] [log] [blame]
Jeff Thompson47eecfc2013-07-07 22:56:46 -07001/**
2 * @author: Jeff Thompson
3 * See COPYING for copyright and distribution information.
Jeff Thompson9c41dfe2013-06-27 12:10:25 -07004 */
5
Jeff Thompson9c41dfe2013-06-27 12:10:25 -07006#ifndef NDN_BINARYXMLWIREFORMAT_HPP
7#define NDN_BINARYXMLWIREFORMAT_HPP
8
9#include "WireFormat.hpp"
10
11namespace ndn {
12
13class BinaryXMLWireFormat : public WireFormat {
14public:
Jeff Thompsond345a5b2013-07-08 16:18:23 -070015 virtual void encodeName(const Name &name, std::vector<unsigned char> &output);
Jeff Thompson42380712013-06-28 10:59:33 -070016 virtual void decodeName(Name &name, const unsigned char *input, unsigned int inputLength);
Jeff Thompson9c41dfe2013-06-27 12:10:25 -070017
Jeff Thompsond345a5b2013-07-08 16:18:23 -070018 virtual void encodeInterest(const Interest &interest, std::vector<unsigned char> &output);
Jeff Thompson7c30eda2013-07-03 18:37:07 -070019 virtual void decodeInterest(Interest &interest, const unsigned char *input, unsigned int inputLength);
Jeff Thompson9c41dfe2013-06-27 12:10:25 -070020
21 static BinaryXMLWireFormat &instance() { return instance_; }
22
23private:
24 static BinaryXMLWireFormat instance_;
25};
26
27}
28
29#endif
30