• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdemultimedia API Reference
  • KDE Home
  • Contact Us
 

libkcompactdisc

  • sources
  • kde-4.14
  • kdemultimedia
  • libkcompactdisc
kcompactdisc_p.h
Go to the documentation of this file.
1 /*
2  * KCompactDisc - A CD drive interface for the KDE Project.
3  *
4  * Copyright (C) 2007 Alexander Kern <alex.kern@gmx.de>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2, or (at your option)
9  * any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19  */
20 
21 #ifndef KCOMPACTDISC_P_H
22 #define KCOMPACTDISC_P_H
23 
24 #include <QString>
25 #include <QList>
26 
27 #include <krandomsequence.h>
28 #include <kurl.h>
29 #include "kcompactdisc.h"
30 
31 class KCompactDiscPrivate : public QObject
32 {
33  Q_OBJECT
34 
35  public:
36  KCompactDiscPrivate(KCompactDisc *, const QString&);
37  virtual ~KCompactDiscPrivate() { };
38 
39  bool moveInterface(const QString &, const QString &, const QString &);
40  virtual bool createInterface();
41 
42  QString m_interface;
43  KCompactDisc::InformationMode m_infoMode;
44  QString m_deviceName;
45 
46  KCompactDisc::DiscStatus m_status;
47  KCompactDisc::DiscStatus m_statusExpected;
48  unsigned m_discId;
49  unsigned m_discLength;
50  unsigned m_track;
51  unsigned m_tracks;
52  unsigned m_trackPosition;
53  unsigned m_discPosition;
54  unsigned m_trackExpectedPosition;
55  int m_seek;
56 
57  QList<unsigned> m_trackStartFrames;
58  QStringList m_trackArtists;
59  QStringList m_trackTitles;
60 
61  KRandomSequence m_randSequence;
62  QList<unsigned> m_playlist;
63  bool m_loopPlaylist;
64  bool m_randomPlaylist;
65  bool m_autoMetadata;
66 
67  void make_playlist();
68  unsigned getNextTrackInPlaylist();
69  unsigned getPrevTrackInPlaylist();
70  bool skipStatusChange(KCompactDisc::DiscStatus);
71  static const QString discStatusI18n(KCompactDisc::DiscStatus);
72 
73  void clearDiscInfo();
74 
75  virtual unsigned trackLength(unsigned);
76  virtual bool isTrackAudio(unsigned);
77  virtual void playTrackPosition(unsigned, unsigned);
78  virtual void pause();
79  virtual void stop();
80  virtual void eject();
81  virtual void closetray();
82 
83  virtual void setVolume(unsigned);
84  virtual void setBalance(unsigned);
85  virtual unsigned volume();
86  virtual unsigned balance();
87 
88  virtual void queryMetadata();
89 
90  QString m_deviceVendor;
91  QString m_deviceModel;
92  QString m_deviceRevision;
93 
94  public:
95  Q_DECLARE_PUBLIC(KCompactDisc)
96  KCompactDisc * const q_ptr;
97 };
98 
99 
100 #define SEC2FRAMES(sec) ((sec) * 75)
101 #define FRAMES2SEC(frames) ((frames) / 75)
102 #define MS2SEC(ms) ((ms) / 1000)
103 #define SEC2MS(sec) ((sec) * 1000)
104 #define MS2FRAMES(ms) (((ms) * 75) / 1000)
105 #define FRAMES2MS(frames) (((frames) * 1000) / 75)
106 
107 #endif /* KCOMPACTDISC_P_H */
KCompactDiscPrivate::m_loopPlaylist
bool m_loopPlaylist
Definition: kcompactdisc_p.h:63
KCompactDisc::InformationMode
InformationMode
Definition: kcompactdisc.h:137
KCompactDiscPrivate::m_playlist
QList< unsigned > m_playlist
Definition: kcompactdisc_p.h:62
KCompactDiscPrivate::m_tracks
unsigned m_tracks
Definition: kcompactdisc_p.h:51
KCompactDiscPrivate::getNextTrackInPlaylist
unsigned getNextTrackInPlaylist()
KCompactDiscPrivate
Definition: kcompactdisc_p.h:31
KCompactDiscPrivate::~KCompactDiscPrivate
virtual ~KCompactDiscPrivate()
Definition: kcompactdisc_p.h:37
kcompactdisc.h
KCompactDiscPrivate::m_status
KCompactDisc::DiscStatus m_status
Definition: kcompactdisc_p.h:46
KCompactDiscPrivate::trackLength
virtual unsigned trackLength(unsigned)
KCompactDiscPrivate::m_interface
QString m_interface
Definition: kcompactdisc_p.h:42
KCompactDiscPrivate::q_ptr
KCompactDisc *const q_ptr
Definition: kcompactdisc_p.h:96
KCompactDiscPrivate::m_seek
int m_seek
Definition: kcompactdisc_p.h:55
KCompactDiscPrivate::pause
virtual void pause()
KCompactDiscPrivate::m_statusExpected
KCompactDisc::DiscStatus m_statusExpected
Definition: kcompactdisc_p.h:47
KCompactDiscPrivate::m_discLength
unsigned m_discLength
Definition: kcompactdisc_p.h:49
KCompactDisc::DiscStatus
DiscStatus
Definition: kcompactdisc.h:155
KCompactDiscPrivate::m_trackPosition
unsigned m_trackPosition
Definition: kcompactdisc_p.h:52
KCompactDiscPrivate::m_randSequence
KRandomSequence m_randSequence
Definition: kcompactdisc_p.h:61
KCompactDiscPrivate::m_deviceModel
QString m_deviceModel
Definition: kcompactdisc_p.h:91
QObject
KCompactDiscPrivate::queryMetadata
virtual void queryMetadata()
KCompactDiscPrivate::setVolume
virtual void setVolume(unsigned)
KCompactDiscPrivate::m_discId
unsigned m_discId
Definition: kcompactdisc_p.h:48
QString
QList< unsigned >
KCompactDiscPrivate::getPrevTrackInPlaylist
unsigned getPrevTrackInPlaylist()
KCompactDiscPrivate::m_deviceRevision
QString m_deviceRevision
Definition: kcompactdisc_p.h:92
QStringList
KCompactDiscPrivate::m_trackExpectedPosition
unsigned m_trackExpectedPosition
Definition: kcompactdisc_p.h:54
KCompactDisc
KCompactDisc - A CD drive interface for the KDE Project.
Definition: kcompactdisc.h:102
KCompactDiscPrivate::m_trackArtists
QStringList m_trackArtists
Definition: kcompactdisc_p.h:58
KCompactDiscPrivate::m_deviceName
QString m_deviceName
Definition: kcompactdisc_p.h:44
KCompactDiscPrivate::skipStatusChange
bool skipStatusChange(KCompactDisc::DiscStatus)
KCompactDiscPrivate::m_trackTitles
QStringList m_trackTitles
Definition: kcompactdisc_p.h:59
KCompactDiscPrivate::discStatusI18n
static const QString discStatusI18n(KCompactDisc::DiscStatus)
KCompactDiscPrivate::setBalance
virtual void setBalance(unsigned)
KCompactDiscPrivate::clearDiscInfo
void clearDiscInfo()
KCompactDiscPrivate::stop
virtual void stop()
KCompactDiscPrivate::createInterface
virtual bool createInterface()
KCompactDiscPrivate::m_randomPlaylist
bool m_randomPlaylist
Definition: kcompactdisc_p.h:64
KCompactDiscPrivate::volume
virtual unsigned volume()
KCompactDiscPrivate::playTrackPosition
virtual void playTrackPosition(unsigned, unsigned)
KCompactDiscPrivate::KCompactDiscPrivate
KCompactDiscPrivate(KCompactDisc *, const QString &)
KCompactDiscPrivate::balance
virtual unsigned balance()
KCompactDiscPrivate::eject
virtual void eject()
KCompactDiscPrivate::moveInterface
bool moveInterface(const QString &, const QString &, const QString &)
KCompactDiscPrivate::m_deviceVendor
QString m_deviceVendor
Definition: kcompactdisc_p.h:90
KCompactDiscPrivate::m_track
unsigned m_track
Definition: kcompactdisc_p.h:50
KCompactDiscPrivate::closetray
virtual void closetray()
KCompactDiscPrivate::m_infoMode
KCompactDisc::InformationMode m_infoMode
Definition: kcompactdisc_p.h:43
KCompactDiscPrivate::isTrackAudio
virtual bool isTrackAudio(unsigned)
KCompactDiscPrivate::m_trackStartFrames
QList< unsigned > m_trackStartFrames
Definition: kcompactdisc_p.h:57
KCompactDiscPrivate::m_autoMetadata
bool m_autoMetadata
Definition: kcompactdisc_p.h:65
KCompactDiscPrivate::make_playlist
void make_playlist()
KCompactDiscPrivate::m_discPosition
unsigned m_discPosition
Definition: kcompactdisc_p.h:53
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:28:18 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

libkcompactdisc

Skip menu "libkcompactdisc"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdemultimedia API Reference

Skip menu "kdemultimedia API Reference"
  • libkcddb
  • libkcompactdisc

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal