kodi
OSXStorageProvider.h
1 /*
2  * Copyright (C) 2005-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 "storage/IStorageProvider.h"
12 
13 #include <string>
14 #include <utility>
15 #include <vector>
16 
18 {
19 public:
21  ~COSXStorageProvider() override = default;
22 
23  void Initialize() override {}
24  void Stop() override {}
25 
26  void GetLocalDrives(VECSOURCES& localDrives) override;
27  void GetRemovableDrives(VECSOURCES& removableDrives) override;
28 
29  std::vector<std::string> GetDiskUsage() override;
30 
31  bool Eject(const std::string& mountpath) override;
32 
33  bool PumpDriveChangeEvents(IStorageEventsCallback* callback) override;
34 
35  static void VolumeMountNotification(const char* label, const char* mountpoint);
36  static void VolumeUnmountNotification(const char* label, const char* mountpoint);
37 
38 private:
39  static std::vector<std::pair<std::string, std::string>> m_mountsToNotify; // label, mountpoint
40  static std::vector<std::pair<std::string, std::string>> m_unmountsToNotify; // label, mountpoint
41 };
Definition: OSXStorageProvider.h:17
Definition: IStorageProvider.h:65
Definition: IStorageProvider.h:44