summaryrefslogtreecommitdiff
path: root/src/mbgl/storage/asset_context_base.hpp
blob: cd7d9ff4a10b48136bf8a0e18c01450a4d64689e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef MBGL_STORAGE_ASSET_CONTEXT_BASE
#define MBGL_STORAGE_ASSET_CONTEXT_BASE

#include <mbgl/storage/request_base.hpp>

typedef struct uv_loop_s uv_loop_t;

namespace mbgl {

class AssetContextBase {
public:
    static std::unique_ptr<AssetContextBase> createContext(uv_loop_t*);

    virtual ~AssetContextBase() = default;
    virtual RequestBase* createRequest(const Resource&,
                                       RequestBase::Callback,
                                       uv_loop_t*,
                                       const std::string& assetRoot) = 0;
};

} // namespace mbgl

#endif // MBGL_STORAGE_ASSET_CONTEXT_BASE