1open-vcdiff is an encoder and decoder for the VCDIFF format, as described in 2RFC 3284 : The VCDIFF Generic Differencing and Compression Data Format 3(http://www.ietf.org/rfc/rfc3284.txt) 4A library with a simple API is included, as well as a command-line executable 5that can apply the encoder and decoder to source, target, and delta files. 6For further details, please refer to: 7http://code.google.com/p/open-vcdiff/wiki/HowToUseOpenVcdiff 8 9See INSTALL for (generic) installation instructions for C++: basically 10 ./configure && make && make install 11 12This should compile the unit tests as well as "vcdiff", a simple command-line 13utility to run the encoder and decoder. Typical usage of vcdiff is as follows 14(the "<" and ">" are file redirect operations, not optional arguments): 15 vcdiff encode -dictionary file.dict < target_file > delta_file 16 vcdiff decode -dictionary file.dict < delta_file > target_file 17To see the command-line syntax of vcdiff, use "vcdiff --help" or just "vcdiff". 18 19To call the encoder from C++ code, assuming that dictionary, target, and delta 20are all std::string objects: 21#include <google/vcencoder.h> // Read this file for interface details 22[...] 23 open_vcdiff::VCDiffEncoder encoder(dictionary.data(), dictionary.size()); 24 encoder.SetFormatFlags(open_vcdiff::VCD_FORMAT_INTERLEAVED); 25 encoder.Encode(target.data(), target.size(), &delta); 26 27Calling the decoder is just as simple: 28#include <google/vcdecoder.h> // Read this file for interface details 29[...] 30 open_vcdiff::VCDiffDecoder decoder; 31 decoder.Decode(dictionary.data(), dictionary.size(), delta, &target); 32 33When using the encoder, the C++ application must be linked with the library 34options -lvcdcom and -lvcdenc; when using the decoder, it must be linked with 35-lvcdcom and -lvcddec. 36 37To verify that the package works on your system, especially after making 38modifications to the source code, please run the unit tests using 39 make check 40 41For further details, please refer to: 42http://code.google.com/p/open-vcdiff/wiki/HowToUseOpenVcdiff 43 44