summaryrefslogtreecommitdiffstats
path: root/k9devices/k9haldevice.h
blob: e7c25f10535e22cfa55433071066afca326bdf7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
//
// C++ Interface: k9haldevice
//
// Description: 
//
//
// Author: Jean-Michel PETIT <k9copy@free.fr>, (C) 2007
//
// Copyright: See COPYING file that comes with this distribution
//
//

#ifndef K9HALDEVICE_H
#define K9HALDEVICE_H
#include "k9common.h"
#ifdef HAVE_HAL

#include <qobject.h>
/**
	@author Jean-Michel PETIT <k9copy@free.fr>
*/
class k9HalConnection;
class k9HalDevice : public QObject
{
Q_OBJECT
public:   
    
    k9HalDevice(QObject *parent = 0, const char *name = 0);

    ~k9HalDevice();

	bool getCanReadCd() const {
	    return m_canReadCd;
	}

	bool getCanReadDvd() const {
	    return m_canReadDvd;
	}

	bool getCanBurnCd() const {
	    return m_canBurnCd;
	}

	bool getCanBurnDvd() const {
	    return m_canBurnDvd;
	}

	QString getModel() const {
	    return m_model;
	}

	int getMaxWriteSpeed() const {
	    return m_maxWriteSpeed;
	}

	QString getDeviceName() const {
	    return m_deviceName;
	}
	void updateVolumeName();

	QString getVolumeUdi() const {
	    return m_volumeUdi;
	}

	QString getVolumeName() const {
	    return m_volumeName;
	}
	
	QString mountPoint();
signals:
   void volumeChanged(const QString &device,const QString &volumeName);	
	
private:
    QString m_volumeName;
    QString m_volumeUdi;
    k9HalConnection *m_connection;
    bool m_canReadCd,m_canReadDvd,m_canBurnCd,m_canBurnDvd;
    QString m_model;
    QString m_deviceName;
    int m_maxWriteSpeed;
    void getDriveProperties();
    QString volumeName();
};

#endif
#endif