00001 # Whole-file API {#api_whole}
00002
00003 Some applications do not require the fine-grained control over IO, but
00004 rather just want to process a whole file with a single call.
00005 librsync provides whole-file APIs to do exactly that.
00006
00007 These functions open files, process the entire contents, and return an overall
00008 result. The whole-file operations are the core of the \ref page_rdiff.
00009
00010 This interface is implemented on top of the \ref api_streaming. Processing of
00011 a whole file begins with creation of a ::rs_job_t object for the appropriate
00012 operation, just as if the application was going to do buffering itself. After
00013 creation, the job may be passed to rs_whole_run(), which will feed it to and
00014 from two FILEs as necessary until end of file is reached or the operation
00015 completes.
00016
00017 \see rs_sig_args()
00018 \see rs_sig_file()
00019 \see rs_loadsig_file()
00020 \see rs_delta_file()
00021 \see rs_patch_file()