1 /* 2 Copyright 2010 Michael Zanetti <mzanetti@kde.org> 3 Copyright 2010 Lukas Tinkl <ltinkl@redhat.com> 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 of the License, or (at your option) version 3, or any 9 later version accepted by the membership of KDE e.V. (or its 10 successor approved by the membership of KDE e.V.), which shall 11 act as a proxy defined in Section 6 of version 3 of the license. 12 13 This library is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 Lesser General Public License for more details. 17 18 You should have received a copy of the GNU Lesser General Public 19 License along with this library. If not, see <http://www.gnu.org/licenses/>. 20 */ 21 22 #ifndef UDISKSSTORAGEDRIVE_H 23 #define UDISKSSTORAGEDRIVE_H 24 25 #include <ifaces/storagedrive.h> 26 #include "udisksblock.h" 27 28 namespace Solid 29 { 30 namespace Backends 31 { 32 namespace UDisks 33 { 34 35 class UDisksStorageDrive: public Block, virtual public Solid::Ifaces::StorageDrive 36 { 37 Q_OBJECT 38 Q_INTERFACES(Solid::Ifaces::StorageDrive) 39 40 public: 41 UDisksStorageDrive(UDisksDevice *device); 42 virtual ~UDisksStorageDrive(); 43 44 virtual qulonglong size() const; 45 virtual bool isHotpluggable() const; 46 virtual bool isRemovable() const; 47 virtual Solid::StorageDrive::DriveType driveType() const; 48 virtual Solid::StorageDrive::Bus bus() const; 49 }; 50 51 } 52 } 53 } 54 55 #endif // UDISKSSTORAGEDRIVE_H 56