1 //========================================================================
2 //
3 // CurlCachedFile.h
4 //
5 // This file is licensed under the GPLv2 or later
6 //
7 // Copyright 2010 Hib Eris <hib@hiberis.nl>
8 // Copyright 2010 Albert Astals Cid <aacid@kde.org>
9 //
10 //========================================================================
11 
12 #ifndef CURLCACHELOADER_H
13 #define CURLCACHELOADER_H
14 
15 #include "poppler-config.h"
16 #include "CachedFile.h"
17 
18 #include <curl/curl.h>
19 
20 //------------------------------------------------------------------------
21 
22 class CurlCachedFileLoader : public CachedFileLoader {
23 
24 public:
25 
26   CurlCachedFileLoader();
27   ~CurlCachedFileLoader();
28   size_t init(GooString *url, CachedFile* cachedFile);
29   int load(const std::vector<ByteRange> &ranges, CachedFileWriter *writer);
30 
31 private:
32 
33   GooString *url;
34   CachedFile *cachedFile;
35   CURL *curl;
36 
37 };
38 
39 #endif
40 
41