kodi
RetroPlayerAutoSave.h
1 /*
2  * Copyright (C) 2017-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "threads/Thread.h"
12 
13 #include <string>
14 
15 namespace KODI
16 {
17 namespace GAME
18 {
19 class CGameClient;
20 class CGameSettings;
21 } // namespace GAME
22 
23 namespace RETRO
24 {
26 {
27 public:
28  virtual ~IAutoSaveCallback() = default;
29 
30  virtual bool IsAutoSaveEnabled() const = 0;
31  virtual std::string CreateAutosave() = 0;
32 };
33 
34 class CRetroPlayerAutoSave : protected CThread
35 {
36 public:
38 
39  ~CRetroPlayerAutoSave() override;
40 
41 protected:
42  // implementation of CThread
43  void Process() override;
44 
45 private:
46  // Construction parameters
47  IAutoSaveCallback& m_callback;
48  GAME::CGameSettings& m_settings;
49 };
50 } // namespace RETRO
51 } // namespace KODI
Definition: Thread.h:44
Definition: GameSettings.h:27
Definition: GameSettings.h:16
Definition: RetroPlayerAutoSave.h:34
Definition: AudioDecoder.h:18
Definition: settings.py:1
Definition: RetroPlayerAutoSave.h:25