1 /*
2  *  Copyright (C) 2015-2020 Garrett Brown
3  *  Copyright (C) 2015-2020 Team Kodi
4  *
5  *  SPDX-License-Identifier: GPL-2.0-or-later
6  *  See LICENSE.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "storage/JustABunchOfFiles.h"
12 
13 #include <string>
14 #include <vector>
15 
16 class TiXmlElement;
17 
18 namespace JOYSTICK
19 {
20   class IControllerHelper;
21 
22   class CDatabaseXml : public CJustABunchOfFiles
23   {
24   public:
25     CDatabaseXml(const std::string& strBasePath, bool bReadWrite, IDatabaseCallbacks* callbacks, IControllerHelper *controllerHelper);
26 
~CDatabaseXml(void)27     virtual ~CDatabaseXml(void) { }
28 
29     // implementation of CJustABunchOfFiles
30     virtual CButtonMap* CreateResource(const std::string& resourcePath) const override;
31     virtual CButtonMap* CreateResource(const std::string& resourcePath, const DevicePtr& deviceInfo) const override;
32 
33   private:
34     // Construction parameter
35     IControllerHelper *const m_controllerHelper;
36   };
37 }
38