source: filezilla/trunk/fuentes/src/include/engine_context.h @ 3185

Last change on this file since 3185 was 3185, checked in by jrpelegrina, 3 years ago

Update new version: 3.15.02

File size: 655 bytes
Line 
1#ifndef FILEZILLA_ENGINE_CONTEXT
2#define FILEZILLA_ENGINE_CONTEXT
3
4#include <memory>
5
6class CDirectoryCache;
7class COptionsBase;
8class CPathCache;
9class CRateLimiter;
10
11namespace fz {
12class event_loop;
13}
14
15// There can be multiple engines, but there can be at most one context
16class CFileZillaEngineContext final
17{
18public:
19        CFileZillaEngineContext(COptionsBase & options);
20        ~CFileZillaEngineContext();
21
22        COptionsBase& GetOptions();
23        fz::event_loop& GetEventLoop();
24        CRateLimiter& GetRateLimiter();
25        CDirectoryCache& GetDirectoryCache();
26        CPathCache& GetPathCache();
27
28protected:
29        COptionsBase& options_;
30
31        class Impl;
32        std::unique_ptr<Impl> impl_;
33};
34
35#endif
Note: See TracBrowser for help on using the repository browser.