summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorQt by Nokia <qt-info@nokia.com>2011-04-27 12:05:43 +0200
committeraxis <qt-info@nokia.com>2011-04-27 12:05:43 +0200
commit356978ecce23e076e1b622d5d41dd8c04bf7bcf8 (patch)
tree8e1874cc32750e30b84b2561387d48424e076ae3 /tests
Initial import from the monolithic Qt.
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12
Diffstat (limited to 'tests')
-rw-r--r--tests/README18
-rw-r--r--tests/auto/bic/.gitignore2
-rw-r--r--tests/auto/bic/data/phonon.4.5.0.linux-gcc-amd64.txt1931
-rw-r--r--tests/auto/bic/data/phonon.4.5.0.linux-gcc-ia32.txt1930
-rw-r--r--tests/auto/bic/data/phonon.4.6.0.linux-gcc-amd64.txt1980
-rw-r--r--tests/auto/bic/data/phonon.4.6.0.linux-gcc-ia32.txt1980
-rw-r--r--tests/auto/bic/data/phonon.4.7.0.linux-gcc-ia32.txt2095
-rw-r--r--tests/auto/mediaobject/.gitignore1
-rw-r--r--tests/auto/mediaobject/dummy/README1
-rw-r--r--tests/auto/mediaobject/dummy/audiooutput.cpp94
-rw-r--r--tests/auto/mediaobject/dummy/audiooutput.h82
-rw-r--r--tests/auto/mediaobject/dummy/backend.cpp190
-rw-r--r--tests/auto/mediaobject/dummy/backend.h96
-rw-r--r--tests/auto/mediaobject/dummy/dummy.pro23
-rw-r--r--tests/auto/mediaobject/dummy/mediaobject.cpp438
-rw-r--r--tests/auto/mediaobject/dummy/mediaobject.h210
-rw-r--r--tests/auto/mediaobject/dummy/videowidget.cpp246
-rw-r--r--tests/auto/mediaobject/dummy/videowidget.h111
-rw-r--r--tests/auto/mediaobject/media/sax.mp3bin0 -> 417844 bytes
-rw-r--r--tests/auto/mediaobject/media/sax.oggbin0 -> 358374 bytes
-rw-r--r--tests/auto/mediaobject/media/sax.wavbin0 -> 756236 bytes
-rw-r--r--tests/auto/mediaobject/media/test.sdp32
-rwxr-xr-xtests/auto/mediaobject/mediaobject.pro24
-rw-r--r--tests/auto/mediaobject/mediaobject.qrc8
-rw-r--r--tests/auto/mediaobject/qtesthelper.h222
-rw-r--r--tests/auto/mediaobject/tst_mediaobject.cpp1220
-rw-r--r--tests/auto/mediaobject_wince_ds9/dummy.cpp44
-rw-r--r--tests/auto/mediaobject_wince_ds9/mediaobject_wince_ds9.pro18
-rw-r--r--tests/auto/phonon.pro5
-rw-r--r--tests/global/.gitignore2
30 files changed, 13003 insertions, 0 deletions
diff --git a/tests/README b/tests/README
new file mode 100644
index 0000000..f94d5a2
--- /dev/null
+++ b/tests/README
@@ -0,0 +1,18 @@
+This directory contains autotests and benchmarks based on QTestlib. In order
+to run the autotests reliably, you need to configure a desktop to match the
+test environment that these tests are written for.
+
+Linux X11:
+
+ * The user must be logged in to an active desktop; you can't run the
+ autotests without a valid DISPLAY that allows X11 connections.
+
+ * The tests are run against a KDE3 or KDE4 desktop.
+
+ * Window manager uses "click to focus", and not "focus follows mouse". Many
+ tests move the mouse cursor around and expect this to not affect focus
+ and activation.
+
+ * Disable "click to activate", i.e., when a window is opened, the window
+ manager should automatically activate it (give it input focus) and not
+ wait for the user to click the window.
diff --git a/tests/auto/bic/.gitignore b/tests/auto/bic/.gitignore
new file mode 100644
index 0000000..6f26b86
--- /dev/null
+++ b/tests/auto/bic/.gitignore
@@ -0,0 +1,2 @@
+qt_temp.*.*lass
+test.cpp
diff --git a/tests/auto/bic/data/phonon.4.5.0.linux-gcc-amd64.txt b/tests/auto/bic/data/phonon.4.5.0.linux-gcc-amd64.txt
new file mode 100644
index 0000000..08dbee8
--- /dev/null
+++ b/tests/auto/bic/data/phonon.4.5.0.linux-gcc-amd64.txt
@@ -0,0 +1,1931 @@
+
+Class QSysInfo
+ size=1 align=1
+ base size=0 base align=1
+QSysInfo (0x7f09e42d13f0) 0 empty
+
+Class QBool
+ size=1 align=1
+ base size=1 base align=1
+QBool (0x7f09e42e80e0) 0
+
+Class qIsNull(double)::U
+ size=8 align=8
+ base size=8 base align=8
+qIsNull(double)::U (0x7f09e42fd4d0) 0
+
+Class qIsNull(float)::U
+ size=4 align=4
+ base size=4 base align=4
+qIsNull(float)::U (0x7f09e42fd770) 0
+
+Class QFlag
+ size=4 align=4
+ base size=4 base align=4
+QFlag (0x7f09e3a1c5b0) 0
+
+Class QIncompatibleFlag
+ size=4 align=4
+ base size=4 base align=4
+QIncompatibleFlag (0x7f09e3a1cd90) 0
+
+Class QBasicAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QBasicAtomicInt (0x7f09e3a483f0) 0
+
+Class QAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QAtomicInt (0x7f09e3a9dd90) 0
+ QBasicAtomicInt (0x7f09e3a9de00) 0
+
+Class QSharedData
+ size=4 align=4
+ base size=4 base align=4
+QSharedData (0x7f09e3ac0230) 0
+
+Class QLatin1Char
+ size=1 align=1
+ base size=1 base align=1
+QLatin1Char (0x7f09e3928700) 0
+
+Class QChar
+ size=2 align=2
+ base size=2 base align=2
+QChar (0x7f09e3950af0) 0
+
+Vtable for std::exception
+std::exception::_ZTVSt9exception: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTISt9exception)
+16 std::exception::~exception
+24 std::exception::~exception
+32 std::exception::what
+
+Class std::exception
+ size=8 align=8
+ base size=8 base align=8
+std::exception (0x7f09e39bbbd0) 0 nearly-empty
+ vptr=((& std::exception::_ZTVSt9exception) + 16u)
+
+Vtable for std::bad_exception
+std::bad_exception::_ZTVSt13bad_exception: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTISt13bad_exception)
+16 std::bad_exception::~bad_exception
+24 std::bad_exception::~bad_exception
+32 std::bad_exception::what
+
+Class std::bad_exception
+ size=8 align=8
+ base size=8 base align=8
+std::bad_exception (0x7f09e39c8150) 0 nearly-empty
+ vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 16u)
+ std::exception (0x7f09e39c81c0) 0 nearly-empty
+ primary-for std::bad_exception (0x7f09e39c8150)
+
+Vtable for std::bad_alloc
+std::bad_alloc::_ZTVSt9bad_alloc: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTISt9bad_alloc)
+16 std::bad_alloc::~bad_alloc
+24 std::bad_alloc::~bad_alloc
+32 std::bad_alloc::what
+
+Class std::bad_alloc
+ size=8 align=8
+ base size=8 base align=8
+std::bad_alloc (0x7f09e39c8a10) 0 nearly-empty
+ vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 16u)
+ std::exception (0x7f09e39c8a80) 0 nearly-empty
+ primary-for std::bad_alloc (0x7f09e39c8a10)
+
+Class std::nothrow_t
+ size=1 align=1
+ base size=0 base align=1
+std::nothrow_t (0x7f09e39db230) 0 empty
+
+Class QListData::Data
+ size=32 align=8
+ base size=32 base align=8
+QListData::Data (0x7f09e39db770) 0
+
+Class QListData
+ size=8 align=8
+ base size=8 base align=8
+QListData (0x7f09e39db700) 0
+
+Class QInternal
+ size=1 align=1
+ base size=0 base align=1
+QInternal (0x7f09e3699e00) 0 empty
+
+Class QGenericArgument
+ size=16 align=8
+ base size=16 base align=8
+QGenericArgument (0x7f09e36b3150) 0
+
+Class QGenericReturnArgument
+ size=16 align=8
+ base size=16 base align=8
+QGenericReturnArgument (0x7f09e36b3cb0) 0
+ QGenericArgument (0x7f09e36b3d20) 0
+
+Class QMetaObject
+ size=32 align=8
+ base size=32 base align=8
+QMetaObject (0x7f09e36bf5b0) 0
+
+Class QMetaObjectExtraData
+ size=16 align=8
+ base size=16 base align=8
+QMetaObjectExtraData (0x7f09e36e65b0) 0
+
+Class __locale_struct
+ size=232 align=8
+ base size=232 base align=8
+__locale_struct (0x7f09e36f9000) 0
+
+Class QByteArray::Data
+ size=32 align=8
+ base size=32 base align=8
+QByteArray::Data (0x7f09e3564620) 0
+
+Class QByteArray
+ size=8 align=8
+ base size=8 base align=8
+QByteArray (0x7f09e3523380) 0
+
+Class QByteRef
+ size=16 align=8
+ base size=12 base align=8
+QByteRef (0x7f09e35ba8c0) 0
+
+Class QString::Null
+ size=1 align=1
+ base size=0 base align=1
+QString::Null (0x7f09e34c3540) 0 empty
+
+Class QString::Data
+ size=32 align=8
+ base size=32 base align=8
+QString::Data (0x7f09e34d2d20) 0
+
+Class QString
+ size=8 align=8
+ base size=8 base align=8
+QString (0x7f09e34443f0) 0
+
+Class QLatin1String
+ size=8 align=8
+ base size=8 base align=8
+QLatin1String (0x7f09e33a7e00) 0
+
+Class QCharRef
+ size=16 align=8
+ base size=12 base align=8
+QCharRef (0x7f09e3243460) 0
+
+Class QConstString
+ size=8 align=8
+ base size=8 base align=8
+QConstString (0x7f09e318dcb0) 0
+ QString (0x7f09e318dd20) 0
+
+Class QStringRef
+ size=16 align=8
+ base size=16 base align=8
+QStringRef (0x7f09e31ab9a0) 0
+
+Vtable for QObjectData
+QObjectData::_ZTV11QObjectData: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI11QObjectData)
+16 __cxa_pure_virtual
+24 __cxa_pure_virtual
+
+Class QObjectData
+ size=40 align=8
+ base size=40 base align=8
+QObjectData (0x7f09e3029cb0) 0
+ vptr=((& QObjectData::_ZTV11QObjectData) + 16u)
+
+Vtable for QObject
+QObject::_ZTV7QObject: 14u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI7QObject)
+16 QObject::metaObject
+24 QObject::qt_metacast
+32 QObject::qt_metacall
+40 QObject::~QObject
+48 QObject::~QObject
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+
+Class QObject
+ size=16 align=8
+ base size=16 base align=8
+QObject (0x7f09e3029f50) 0
+ vptr=((& QObject::_ZTV7QObject) + 16u)
+
+Vtable for QObjectUserData
+QObjectUserData::_ZTV15QObjectUserData: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI15QObjectUserData)
+16 QObjectUserData::~QObjectUserData
+24 QObjectUserData::~QObjectUserData
+
+Class QObjectUserData
+ size=8 align=8
+ base size=8 base align=8
+QObjectUserData (0x7f09e30a64d0) 0 nearly-empty
+ vptr=((& QObjectUserData::_ZTV15QObjectUserData) + 16u)
+
+Vtable for QIODevice
+QIODevice::_ZTV9QIODevice: 30u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI9QIODevice)
+16 QIODevice::metaObject
+24 QIODevice::qt_metacast
+32 QIODevice::qt_metacall
+40 QIODevice::~QIODevice
+48 QIODevice::~QIODevice
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QIODevice::isSequential
+120 QIODevice::open
+128 QIODevice::close
+136 QIODevice::pos
+144 QIODevice::size
+152 QIODevice::seek
+160 QIODevice::atEnd
+168 QIODevice::reset
+176 QIODevice::bytesAvailable
+184 QIODevice::bytesToWrite
+192 QIODevice::canReadLine
+200 QIODevice::waitForReadyRead
+208 QIODevice::waitForBytesWritten
+216 __cxa_pure_virtual
+224 QIODevice::readLineData
+232 __cxa_pure_virtual
+
+Class QIODevice
+ size=16 align=8
+ base size=16 base align=8
+QIODevice (0x7f09e30a6a10) 0
+ vptr=((& QIODevice::_ZTV9QIODevice) + 16u)
+ QObject (0x7f09e30a6a80) 0
+ primary-for QIODevice (0x7f09e30a6a10)
+
+Vtable for QDataStream
+QDataStream::_ZTV11QDataStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI11QDataStream)
+16 QDataStream::~QDataStream
+24 QDataStream::~QDataStream
+
+Class QDataStream
+ size=40 align=8
+ base size=40 base align=8
+QDataStream (0x7f09e2f0d380) 0
+ vptr=((& QDataStream::_ZTV11QDataStream) + 16u)
+
+Class QHashData::Node
+ size=16 align=8
+ base size=16 base align=8
+QHashData::Node (0x7f09e2f91230) 0
+
+Class QHashData
+ size=40 align=8
+ base size=40 base align=8
+QHashData (0x7f09e2f911c0) 0
+
+Class QHashDummyValue
+ size=1 align=1
+ base size=0 base align=1
+QHashDummyValue (0x7f09e2fa6000) 0 empty
+
+Class QMapData::Node
+ size=16 align=8
+ base size=16 base align=8
+QMapData::Node (0x7f09e2eb4770) 0
+
+Class QMapData
+ size=128 align=8
+ base size=128 base align=8
+QMapData (0x7f09e2eb4700) 0
+
+Vtable for QSystemLocale
+QSystemLocale::_ZTV13QSystemLocale: 6u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI13QSystemLocale)
+16 QSystemLocale::~QSystemLocale
+24 QSystemLocale::~QSystemLocale
+32 QSystemLocale::query
+40 QSystemLocale::fallbackLocale
+
+Class QSystemLocale
+ size=8 align=8
+ base size=8 base align=8
+QSystemLocale (0x7f09e2dc3ee0) 0 nearly-empty
+ vptr=((& QSystemLocale::_ZTV13QSystemLocale) + 16u)
+
+Class QLocale::Data
+ size=4 align=2
+ base size=4 base align=2
+QLocale::Data (0x7f09e2c274d0) 0
+
+Class QLocale
+ size=8 align=8
+ base size=8 base align=8
+QLocale (0x7f09e2de71c0) 0
+
+Class QTextCodec::ConverterState
+ size=32 align=8
+ base size=32 base align=8
+QTextCodec::ConverterState (0x7f09e2c75f50) 0
+
+Vtable for QTextCodec
+QTextCodec::_ZTV10QTextCodec: 9u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI10QTextCodec)
+16 __cxa_pure_virtual
+24 QTextCodec::aliases
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 QTextCodec::~QTextCodec
+64 QTextCodec::~QTextCodec
+
+Class QTextCodec
+ size=8 align=8
+ base size=8 base align=8
+QTextCodec (0x7f09e2c5fb60) 0 nearly-empty
+ vptr=((& QTextCodec::_ZTV10QTextCodec) + 16u)
+
+Class QTextEncoder
+ size=40 align=8
+ base size=40 base align=8
+QTextEncoder (0x7f09e2ce14d0) 0
+
+Class QTextDecoder
+ size=40 align=8
+ base size=40 base align=8
+QTextDecoder (0x7f09e2aea310) 0
+
+Class _IO_marker
+ size=24 align=8
+ base size=24 base align=8
+_IO_marker (0x7f09e2af3380) 0
+
+Class _IO_FILE
+ size=216 align=8
+ base size=216 base align=8
+_IO_FILE (0x7f09e2af33f0) 0
+
+Vtable for QTextStream
+QTextStream::_ZTV11QTextStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI11QTextStream)
+16 QTextStream::~QTextStream
+24 QTextStream::~QTextStream
+
+Class QTextStream
+ size=16 align=8
+ base size=16 base align=8
+QTextStream (0x7f09e2af34d0) 0
+ vptr=((& QTextStream::_ZTV11QTextStream) + 16u)
+
+Class QTextStreamManipulator
+ size=40 align=8
+ base size=38 base align=8
+QTextStreamManipulator (0x7f09e2b98000) 0
+
+Vtable for QTextIStream
+QTextIStream::_ZTV12QTextIStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI12QTextIStream)
+16 QTextIStream::~QTextIStream
+24 QTextIStream::~QTextIStream
+
+Class QTextIStream
+ size=16 align=8
+ base size=16 base align=8
+QTextIStream (0x7f09e2bb62a0) 0
+ vptr=((& QTextIStream::_ZTV12QTextIStream) + 16u)
+ QTextStream (0x7f09e2bb6310) 0
+ primary-for QTextIStream (0x7f09e2bb62a0)
+
+Vtable for QTextOStream
+QTextOStream::_ZTV12QTextOStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI12QTextOStream)
+16 QTextOStream::~QTextOStream
+24 QTextOStream::~QTextOStream
+
+Class QTextOStream
+ size=16 align=8
+ base size=16 base align=8
+QTextOStream (0x7f09e2bcd150) 0
+ vptr=((& QTextOStream::_ZTV12QTextOStream) + 16u)
+ QTextStream (0x7f09e2bcd1c0) 0
+ primary-for QTextOStream (0x7f09e2bcd150)
+
+Class wait
+ size=4 align=4
+ base size=4 base align=4
+wait (0x7f09e2be0000) 0
+
+Class timespec
+ size=16 align=8
+ base size=16 base align=8
+timespec (0x7f09e2be0310) 0
+
+Class timeval
+ size=16 align=8
+ base size=16 base align=8
+timeval (0x7f09e2be0380) 0
+
+Class __pthread_internal_list
+ size=16 align=8
+ base size=16 base align=8
+__pthread_internal_list (0x7f09e2be04d0) 0
+
+Class random_data
+ size=48 align=8
+ base size=48 base align=8
+random_data (0x7f09e2be0a80) 0
+
+Class drand48_data
+ size=24 align=8
+ base size=24 base align=8
+drand48_data (0x7f09e2be0af0) 0
+
+Class QVectorData
+ size=16 align=4
+ base size=16 base align=4
+QVectorData (0x7f09e2be0b60) 0
+
+Class QDebug::Stream
+ size=40 align=8
+ base size=34 base align=8
+QDebug::Stream (0x7f09e2961310) 0
+
+Class QDebug
+ size=8 align=8
+ base size=8 base align=8
+QDebug (0x7f09e29612a0) 0
+
+Class QNoDebug
+ size=1 align=1
+ base size=0 base align=1
+QNoDebug (0x7f09e27fe150) 0 empty
+
+Class QMetaType
+ size=1 align=1
+ base size=0 base align=1
+QMetaType (0x7f09e2810700) 0 empty
+
+Class QVariant::PrivateShared
+ size=16 align=8
+ base size=12 base align=8
+QVariant::PrivateShared (0x7f09e26fac40) 0
+
+Class QVariant::Private::Data
+ size=8 align=8
+ base size=8 base align=8
+QVariant::Private::Data (0x7f09e26faf50) 0
+
+Class QVariant::Private
+ size=16 align=8
+ base size=12 base align=8
+QVariant::Private (0x7f09e26fad20) 0
+
+Class QVariant::Handler
+ size=72 align=8
+ base size=72 base align=8
+QVariant::Handler (0x7f09e270ec40) 0
+
+Class QVariant
+ size=16 align=8
+ base size=16 base align=8
+QVariant (0x7f09e28d0e00) 0
+
+Class QVariantComparisonHelper
+ size=8 align=8
+ base size=8 base align=8
+QVariantComparisonHelper (0x7f09e27cb000) 0
+
+Class Phonon::ObjectDescriptionData
+ size=16 align=8
+ base size=16 base align=8
+Phonon::ObjectDescriptionData (0x7f09e25e1000) 0
+ QSharedData (0x7f09e25e1070) 0
+
+Class Phonon::Path
+ size=8 align=8
+ base size=8 base align=8
+Phonon::Path (0x7f09e262ed20) 0
+
+Vtable for Phonon::MediaNode
+Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon9MediaNodeE)
+16 Phonon::MediaNode::~MediaNode
+24 Phonon::MediaNode::~MediaNode
+
+Class Phonon::MediaNode
+ size=16 align=8
+ base size=16 base align=8
+Phonon::MediaNode (0x7f09e2650540) 0
+ vptr=((& Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE) + 16u)
+
+Vtable for Phonon::AbstractVideoOutput
+Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19AbstractVideoOutputE)
+16 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+24 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+
+Class Phonon::AbstractVideoOutput
+ size=16 align=8
+ base size=16 base align=8
+Phonon::AbstractVideoOutput (0x7f09e2650cb0) 0
+ vptr=((& Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE) + 16u)
+ Phonon::MediaNode (0x7f09e2650d20) 0
+ primary-for Phonon::AbstractVideoOutput (0x7f09e2650cb0)
+
+Class Phonon::MediaSource
+ size=8 align=8
+ base size=8 base align=8
+Phonon::MediaSource (0x7f09e266bbd0) 0
+
+Vtable for Phonon::EffectInterface
+Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon15EffectInterfaceE)
+16 Phonon::EffectInterface::~EffectInterface
+24 Phonon::EffectInterface::~EffectInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+
+Class Phonon::EffectInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::EffectInterface (0x7f09e268c770) 0 nearly-empty
+ vptr=((& Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE) + 16u)
+
+Vtable for Phonon::AddonInterface
+Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE: 6u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon14AddonInterfaceE)
+16 Phonon::AddonInterface::~AddonInterface
+24 Phonon::AddonInterface::~AddonInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+
+Class Phonon::AddonInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::AddonInterface (0x7f09e26a67e0) 0 nearly-empty
+ vptr=((& Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE) + 16u)
+
+Class QSize
+ size=8 align=4
+ base size=8 base align=4
+QSize (0x7f09e26bea80) 0
+
+Class QSizeF
+ size=16 align=8
+ base size=16 base align=8
+QSizeF (0x7f09e250c8c0) 0
+
+Class QPoint
+ size=8 align=4
+ base size=8 base align=4
+QPoint (0x7f09e255cee0) 0
+
+Class QPointF
+ size=16 align=8
+ base size=16 base align=8
+QPointF (0x7f09e2591b60) 0
+
+Class QRect
+ size=16 align=4
+ base size=16 base align=4
+QRect (0x7f09e25d09a0) 0
+
+Class QRectF
+ size=32 align=8
+ base size=32 base align=8
+QRectF (0x7f09e2463380) 0
+
+Vtable for QPaintDevice
+QPaintDevice::_ZTV12QPaintDevice: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI12QPaintDevice)
+16 QPaintDevice::~QPaintDevice
+24 QPaintDevice::~QPaintDevice
+32 QPaintDevice::devType
+40 __cxa_pure_virtual
+48 QPaintDevice::metric
+
+Class QPaintDevice
+ size=16 align=8
+ base size=10 base align=8
+QPaintDevice (0x7f09e230e150) 0
+ vptr=((& QPaintDevice::_ZTV12QPaintDevice) + 16u)
+
+Class QRegExp
+ size=8 align=8
+ base size=8 base align=8
+QRegExp (0x7f09e233d4d0) 0
+
+Class QStringMatcher
+ size=1048 align=8
+ base size=1048 base align=8
+QStringMatcher (0x7f09e236b310) 0
+
+Class QStringList
+ size=8 align=8
+ base size=8 base align=8
+QStringList (0x7f09e236bd90) 0
+ QList<QString> (0x7f09e236be00) 0
+
+Class QColor
+ size=16 align=4
+ base size=14 base align=4
+QColor (0x7f09e220ea10) 0
+
+Class QPolygon
+ size=8 align=8
+ base size=8 base align=8
+QPolygon (0x7f09e225de00) 0
+ QVector<QPoint> (0x7f09e225de70) 0
+
+Class QPolygonF
+ size=8 align=8
+ base size=8 base align=8
+QPolygonF (0x7f09e22a3f50) 0
+ QVector<QPointF> (0x7f09e22a3ee0) 0
+
+Class QRegion::QRegionData
+ size=32 align=8
+ base size=32 base align=8
+QRegion::QRegionData (0x7f09e2104460) 0
+
+Class QRegion
+ size=8 align=8
+ base size=8 base align=8
+QRegion (0x7f09e20e3bd0) 0
+
+Class QLine
+ size=16 align=4
+ base size=16 base align=4
+QLine (0x7f09e2119d20) 0
+
+Class QLineF
+ size=32 align=8
+ base size=32 base align=8
+QLineF (0x7f09e2154bd0) 0
+
+Class QMatrix
+ size=48 align=8
+ base size=48 base align=8
+QMatrix (0x7f09e21b1690) 0
+
+Class QPainterPath::Element
+ size=24 align=8
+ base size=24 base align=8
+QPainterPath::Element (0x7f09e1fe40e0) 0
+
+Class QPainterPath
+ size=8 align=8
+ base size=8 base align=8
+QPainterPath (0x7f09e1fe4070) 0
+
+Class QPainterPathPrivate
+ size=16 align=8
+ base size=16 base align=8
+QPainterPathPrivate (0x7f09e2027460) 0
+
+Class QPainterPathStroker
+ size=8 align=8
+ base size=8 base align=8
+QPainterPathStroker (0x7f09e2027c40) 0
+
+Class QTransform
+ size=88 align=8
+ base size=88 base align=8
+QTransform (0x7f09e2088b60) 0
+
+Class QImageTextKeyLang
+ size=16 align=8
+ base size=16 base align=8
+QImageTextKeyLang (0x7f09e1f04e70) 0
+
+Vtable for QImage
+QImage::_ZTV6QImage: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI6QImage)
+16 QImage::~QImage
+24 QImage::~QImage
+32 QImage::devType
+40 QImage::paintEngine
+48 QImage::metric
+
+Class QImage
+ size=24 align=8
+ base size=24 base align=8
+QImage (0x7f09e1f38700) 0
+ vptr=((& QImage::_ZTV6QImage) + 16u)
+ QPaintDevice (0x7f09e1f38770) 0
+ primary-for QImage (0x7f09e1f38700)
+
+Vtable for QPixmap
+QPixmap::_ZTV7QPixmap: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI7QPixmap)
+16 QPixmap::~QPixmap
+24 QPixmap::~QPixmap
+32 QPixmap::devType
+40 QPixmap::paintEngine
+48 QPixmap::metric
+
+Class QPixmap
+ size=24 align=8
+ base size=24 base align=8
+QPixmap (0x7f09e1dd8150) 0
+ vptr=((& QPixmap::_ZTV7QPixmap) + 16u)
+ QPaintDevice (0x7f09e1dd81c0) 0
+ primary-for QPixmap (0x7f09e1dd8150)
+
+Class QBrush
+ size=8 align=8
+ base size=8 base align=8
+QBrush (0x7f09e1e26310) 0
+
+Class QBrushData
+ size=112 align=8
+ base size=112 base align=8
+QBrushData (0x7f09e1e3dee0) 0
+
+Class QGradient
+ size=64 align=8
+ base size=64 base align=8
+QGradient (0x7f09e1e580e0) 0
+
+Class QLinearGradient
+ size=64 align=8
+ base size=64 base align=8
+QLinearGradient (0x7f09e1e88b60) 0
+ QGradient (0x7f09e1e88bd0) 0
+
+Class QRadialGradient
+ size=64 align=8
+ base size=64 base align=8
+QRadialGradient (0x7f09e1e95070) 0
+ QGradient (0x7f09e1e950e0) 0
+
+Class QConicalGradient
+ size=64 align=8
+ base size=64 base align=8
+QConicalGradient (0x7f09e1e95620) 0
+ QGradient (0x7f09e1e95690) 0
+
+Class QPalette
+ size=16 align=8
+ base size=12 base align=8
+QPalette (0x7f09e1e959a0) 0
+
+Class QColorGroup
+ size=16 align=8
+ base size=12 base align=8
+QColorGroup (0x7f09e1cb1310) 0
+ QPalette (0x7f09e1cb1380) 0
+
+Class QFont
+ size=16 align=8
+ base size=12 base align=8
+QFont (0x7f09e1ce9620) 0
+
+Class QFontMetrics
+ size=8 align=8
+ base size=8 base align=8
+QFontMetrics (0x7f09e1d242a0) 0
+
+Class QFontMetricsF
+ size=8 align=8
+ base size=8 base align=8
+QFontMetricsF (0x7f09e1d38700) 0
+
+Class QFontInfo
+ size=8 align=8
+ base size=8 base align=8
+QFontInfo (0x7f09e1d4f620) 0
+
+Class QSizePolicy
+ size=4 align=4
+ base size=4 base align=4
+QSizePolicy (0x7f09e1d5a150) 0
+
+Class QCursor
+ size=8 align=8
+ base size=8 base align=8
+QCursor (0x7f09e1c03e70) 0
+
+Class QKeySequence
+ size=8 align=8
+ base size=8 base align=8
+QKeySequence (0x7f09e1c06690) 0
+
+Class QWidgetData
+ size=88 align=8
+ base size=88 base align=8
+QWidgetData (0x7f09e1c4f2a0) 0
+
+Vtable for QWidget
+QWidget::_ZTV7QWidget: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI7QWidget)
+16 QWidget::metaObject
+24 QWidget::qt_metacast
+32 QWidget::qt_metacall
+40 QWidget::~QWidget
+48 QWidget::~QWidget
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTI7QWidget)
+464 QWidget::_ZThn16_N7QWidgetD1Ev
+472 QWidget::_ZThn16_N7QWidgetD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class QWidget
+ size=40 align=8
+ base size=40 base align=8
+QWidget (0x7f09e1c4a780) 0
+ vptr=((& QWidget::_ZTV7QWidget) + 16u)
+ QObject (0x7f09e1c4f310) 0
+ primary-for QWidget (0x7f09e1c4a780)
+ QPaintDevice (0x7f09e1c4f380) 16
+ vptr=((& QWidget::_ZTV7QWidget) + 464u)
+
+Vtable for Phonon::VideoPlayer
+Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+16 Phonon::VideoPlayer::metaObject
+24 Phonon::VideoPlayer::qt_metacast
+32 Phonon::VideoPlayer::qt_metacall
+40 Phonon::VideoPlayer::~VideoPlayer
+48 Phonon::VideoPlayer::~VideoPlayer
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+464 Phonon::VideoPlayer::_ZThn16_N6Phonon11VideoPlayerD1Ev
+472 Phonon::VideoPlayer::_ZThn16_N6Phonon11VideoPlayerD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VideoPlayer
+ size=48 align=8
+ base size=48 base align=8
+Phonon::VideoPlayer (0x7f09e19a80e0) 0
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 16u)
+ QWidget (0x7f09e19a9180) 0
+ primary-for Phonon::VideoPlayer (0x7f09e19a80e0)
+ QObject (0x7f09e19a8150) 0
+ primary-for QWidget (0x7f09e19a9180)
+ QPaintDevice (0x7f09e19a81c0) 16
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 464u)
+
+Vtable for Phonon::Effect
+Phonon::Effect::_ZTVN6Phonon6EffectE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+16 Phonon::Effect::metaObject
+24 Phonon::Effect::qt_metacast
+32 Phonon::Effect::qt_metacall
+40 Phonon::Effect::~Effect
+48 Phonon::Effect::~Effect
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+128 Phonon::Effect::_ZThn16_N6Phonon6EffectD1Ev
+136 Phonon::Effect::_ZThn16_N6Phonon6EffectD0Ev
+
+Class Phonon::Effect
+ size=32 align=8
+ base size=32 base align=8
+Phonon::Effect (0x7f09e19a9880) 0
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 16u)
+ QObject (0x7f09e19c4150) 0
+ primary-for Phonon::Effect (0x7f09e19a9880)
+ Phonon::MediaNode (0x7f09e19c41c0) 16
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 128u)
+
+Vtable for Phonon::VolumeFaderEffect
+Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+16 Phonon::VolumeFaderEffect::metaObject
+24 Phonon::VolumeFaderEffect::qt_metacast
+32 Phonon::VolumeFaderEffect::qt_metacall
+40 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+48 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+128 Phonon::VolumeFaderEffect::_ZThn16_N6Phonon17VolumeFaderEffectD1Ev
+136 Phonon::VolumeFaderEffect::_ZThn16_N6Phonon17VolumeFaderEffectD0Ev
+
+Class Phonon::VolumeFaderEffect
+ size=32 align=8
+ base size=32 base align=8
+Phonon::VolumeFaderEffect (0x7f09e19d6620) 0
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 16u)
+ Phonon::Effect (0x7f09e19d7180) 0
+ primary-for Phonon::VolumeFaderEffect (0x7f09e19d6620)
+ QObject (0x7f09e19d6690) 0
+ primary-for Phonon::Effect (0x7f09e19d7180)
+ Phonon::MediaNode (0x7f09e19d6700) 16
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 128u)
+
+Class QModelIndex
+ size=24 align=8
+ base size=24 base align=8
+QModelIndex (0x7f09e19e8c40) 0
+
+Class QPersistentModelIndex
+ size=8 align=8
+ base size=8 base align=8
+QPersistentModelIndex (0x7f09e1a12700) 0
+
+Vtable for QAbstractItemModel
+QAbstractItemModel::_ZTV18QAbstractItemModel: 42u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI18QAbstractItemModel)
+16 QAbstractItemModel::metaObject
+24 QAbstractItemModel::qt_metacast
+32 QAbstractItemModel::qt_metacall
+40 QAbstractItemModel::~QAbstractItemModel
+48 QAbstractItemModel::~QAbstractItemModel
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 __cxa_pure_virtual
+136 __cxa_pure_virtual
+144 QAbstractItemModel::hasChildren
+152 __cxa_pure_virtual
+160 QAbstractItemModel::setData
+168 QAbstractItemModel::headerData
+176 QAbstractItemModel::setHeaderData
+184 QAbstractItemModel::itemData
+192 QAbstractItemModel::setItemData
+200 QAbstractItemModel::mimeTypes
+208 QAbstractItemModel::mimeData
+216 QAbstractItemModel::dropMimeData
+224 QAbstractItemModel::supportedDropActions
+232 QAbstractItemModel::insertRows
+240 QAbstractItemModel::insertColumns
+248 QAbstractItemModel::removeRows
+256 QAbstractItemModel::removeColumns
+264 QAbstractItemModel::fetchMore
+272 QAbstractItemModel::canFetchMore
+280 QAbstractItemModel::flags
+288 QAbstractItemModel::sort
+296 QAbstractItemModel::buddy
+304 QAbstractItemModel::match
+312 QAbstractItemModel::span
+320 QAbstractItemModel::submit
+328 QAbstractItemModel::revert
+
+Class QAbstractItemModel
+ size=16 align=8
+ base size=16 base align=8
+QAbstractItemModel (0x7f09e1a1da10) 0
+ vptr=((& QAbstractItemModel::_ZTV18QAbstractItemModel) + 16u)
+ QObject (0x7f09e1a1da80) 0
+ primary-for QAbstractItemModel (0x7f09e1a1da10)
+
+Vtable for QAbstractTableModel
+QAbstractTableModel::_ZTV19QAbstractTableModel: 42u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI19QAbstractTableModel)
+16 QAbstractTableModel::metaObject
+24 QAbstractTableModel::qt_metacast
+32 QAbstractTableModel::qt_metacall
+40 QAbstractTableModel::~QAbstractTableModel
+48 QAbstractTableModel::~QAbstractTableModel
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QAbstractTableModel::index
+120 QAbstractTableModel::parent
+128 __cxa_pure_virtual
+136 __cxa_pure_virtual
+144 QAbstractTableModel::hasChildren
+152 __cxa_pure_virtual
+160 QAbstractItemModel::setData
+168 QAbstractItemModel::headerData
+176 QAbstractItemModel::setHeaderData
+184 QAbstractItemModel::itemData
+192 QAbstractItemModel::setItemData
+200 QAbstractItemModel::mimeTypes
+208 QAbstractItemModel::mimeData
+216 QAbstractTableModel::dropMimeData
+224 QAbstractItemModel::supportedDropActions
+232 QAbstractItemModel::insertRows
+240 QAbstractItemModel::insertColumns
+248 QAbstractItemModel::removeRows
+256 QAbstractItemModel::removeColumns
+264 QAbstractItemModel::fetchMore
+272 QAbstractItemModel::canFetchMore
+280 QAbstractItemModel::flags
+288 QAbstractItemModel::sort
+296 QAbstractItemModel::buddy
+304 QAbstractItemModel::match
+312 QAbstractItemModel::span
+320 QAbstractItemModel::submit
+328 QAbstractItemModel::revert
+
+Class QAbstractTableModel
+ size=16 align=8
+ base size=16 base align=8
+QAbstractTableModel (0x7f09e1871d20) 0
+ vptr=((& QAbstractTableModel::_ZTV19QAbstractTableModel) + 16u)
+ QAbstractItemModel (0x7f09e1871d90) 0
+ primary-for QAbstractTableModel (0x7f09e1871d20)
+ QObject (0x7f09e1871e00) 0
+ primary-for QAbstractItemModel (0x7f09e1871d90)
+
+Vtable for QAbstractListModel
+QAbstractListModel::_ZTV18QAbstractListModel: 42u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI18QAbstractListModel)
+16 QAbstractListModel::metaObject
+24 QAbstractListModel::qt_metacast
+32 QAbstractListModel::qt_metacall
+40 QAbstractListModel::~QAbstractListModel
+48 QAbstractListModel::~QAbstractListModel
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QAbstractListModel::index
+120 QAbstractListModel::parent
+128 __cxa_pure_virtual
+136 QAbstractListModel::columnCount
+144 QAbstractListModel::hasChildren
+152 __cxa_pure_virtual
+160 QAbstractItemModel::setData
+168 QAbstractItemModel::headerData
+176 QAbstractItemModel::setHeaderData
+184 QAbstractItemModel::itemData
+192 QAbstractItemModel::setItemData
+200 QAbstractItemModel::mimeTypes
+208 QAbstractItemModel::mimeData
+216 QAbstractListModel::dropMimeData
+224 QAbstractItemModel::supportedDropActions
+232 QAbstractItemModel::insertRows
+240 QAbstractItemModel::insertColumns
+248 QAbstractItemModel::removeRows
+256 QAbstractItemModel::removeColumns
+264 QAbstractItemModel::fetchMore
+272 QAbstractItemModel::canFetchMore
+280 QAbstractItemModel::flags
+288 QAbstractItemModel::sort
+296 QAbstractItemModel::buddy
+304 QAbstractItemModel::match
+312 QAbstractItemModel::span
+320 QAbstractItemModel::submit
+328 QAbstractItemModel::revert
+
+Class QAbstractListModel
+ size=16 align=8
+ base size=16 base align=8
+QAbstractListModel (0x7f09e188c2a0) 0
+ vptr=((& QAbstractListModel::_ZTV18QAbstractListModel) + 16u)
+ QAbstractItemModel (0x7f09e188c310) 0
+ primary-for QAbstractListModel (0x7f09e188c2a0)
+ QObject (0x7f09e188c380) 0
+ primary-for QAbstractItemModel (0x7f09e188c310)
+
+Class Phonon::ObjectDescriptionModelData
+ size=8 align=8
+ base size=8 base align=8
+Phonon::ObjectDescriptionModelData (0x7f09e18bd3f0) 0
+
+Vtable for Phonon::StreamInterface
+Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE: 8u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon15StreamInterfaceE)
+16 Phonon::StreamInterface::~StreamInterface
+24 Phonon::StreamInterface::~StreamInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+
+Class Phonon::StreamInterface
+ size=16 align=8
+ base size=16 base align=8
+Phonon::StreamInterface (0x7f09e1906540) 0
+ vptr=((& Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE) + 16u)
+
+Vtable for Phonon::SeekSlider
+Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+16 Phonon::SeekSlider::metaObject
+24 Phonon::SeekSlider::qt_metacast
+32 Phonon::SeekSlider::qt_metacall
+40 Phonon::SeekSlider::~SeekSlider
+48 Phonon::SeekSlider::~SeekSlider
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+464 Phonon::SeekSlider::_ZThn16_N6Phonon10SeekSliderD1Ev
+472 Phonon::SeekSlider::_ZThn16_N6Phonon10SeekSliderD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::SeekSlider
+ size=48 align=8
+ base size=48 base align=8
+Phonon::SeekSlider (0x7f09e1906e00) 0
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 16u)
+ QWidget (0x7f09e194e080) 0
+ primary-for Phonon::SeekSlider (0x7f09e1906e00)
+ QObject (0x7f09e1906e70) 0
+ primary-for QWidget (0x7f09e194e080)
+ QPaintDevice (0x7f09e1906ee0) 16
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 464u)
+
+Vtable for Phonon::PlatformPlugin
+Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE: 16u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon14PlatformPluginE)
+16 Phonon::PlatformPlugin::~PlatformPlugin
+24 Phonon::PlatformPlugin::~PlatformPlugin
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+96 __cxa_pure_virtual
+104 __cxa_pure_virtual
+112 __cxa_pure_virtual
+120 Phonon::PlatformPlugin::deviceAccessListFor
+
+Class Phonon::PlatformPlugin
+ size=8 align=8
+ base size=8 base align=8
+Phonon::PlatformPlugin (0x7f09e17692a0) 0 nearly-empty
+ vptr=((& Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE) + 16u)
+
+Vtable for Phonon::MediaController
+Phonon::MediaController::_ZTVN6Phonon15MediaControllerE: 14u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon15MediaControllerE)
+16 Phonon::MediaController::metaObject
+24 Phonon::MediaController::qt_metacast
+32 Phonon::MediaController::qt_metacall
+40 Phonon::MediaController::~MediaController
+48 Phonon::MediaController::~MediaController
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+
+Class Phonon::MediaController
+ size=24 align=8
+ base size=24 base align=8
+Phonon::MediaController (0x7f09e179c700) 0
+ vptr=((& Phonon::MediaController::_ZTVN6Phonon15MediaControllerE) + 16u)
+ QObject (0x7f09e179c770) 0
+ primary-for Phonon::MediaController (0x7f09e179c700)
+
+Vtable for Phonon::VolumeSlider
+Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+16 Phonon::VolumeSlider::metaObject
+24 Phonon::VolumeSlider::qt_metacast
+32 Phonon::VolumeSlider::qt_metacall
+40 Phonon::VolumeSlider::~VolumeSlider
+48 Phonon::VolumeSlider::~VolumeSlider
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+464 Phonon::VolumeSlider::_ZThn16_N6Phonon12VolumeSliderD1Ev
+472 Phonon::VolumeSlider::_ZThn16_N6Phonon12VolumeSliderD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VolumeSlider
+ size=48 align=8
+ base size=48 base align=8
+Phonon::VolumeSlider (0x7f09e17d2620) 0
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 16u)
+ QWidget (0x7f09e17e0080) 0
+ primary-for Phonon::VolumeSlider (0x7f09e17d2620)
+ QObject (0x7f09e17d2690) 0
+ primary-for QWidget (0x7f09e17e0080)
+ QPaintDevice (0x7f09e17d2700) 16
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 464u)
+
+Vtable for Phonon::MediaObject
+Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+16 Phonon::MediaObject::metaObject
+24 Phonon::MediaObject::qt_metacast
+32 Phonon::MediaObject::qt_metacall
+40 Phonon::MediaObject::~MediaObject
+48 Phonon::MediaObject::~MediaObject
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+128 Phonon::MediaObject::_ZThn16_N6Phonon11MediaObjectD1Ev
+136 Phonon::MediaObject::_ZThn16_N6Phonon11MediaObjectD0Ev
+
+Class Phonon::MediaObject
+ size=32 align=8
+ base size=32 base align=8
+Phonon::MediaObject (0x7f09e17e0980) 0
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 16u)
+ QObject (0x7f09e17f5af0) 0
+ primary-for Phonon::MediaObject (0x7f09e17e0980)
+ Phonon::MediaNode (0x7f09e17f5b60) 16
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 128u)
+
+Vtable for Phonon::EffectWidget
+Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+16 Phonon::EffectWidget::metaObject
+24 Phonon::EffectWidget::qt_metacast
+32 Phonon::EffectWidget::qt_metacall
+40 Phonon::EffectWidget::~EffectWidget
+48 Phonon::EffectWidget::~EffectWidget
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+464 Phonon::EffectWidget::_ZThn16_N6Phonon12EffectWidgetD1Ev
+472 Phonon::EffectWidget::_ZThn16_N6Phonon12EffectWidgetD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::EffectWidget
+ size=48 align=8
+ base size=48 base align=8
+Phonon::EffectWidget (0x7f09e181d0e0) 0
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 16u)
+ QWidget (0x7f09e1819280) 0
+ primary-for Phonon::EffectWidget (0x7f09e181d0e0)
+ QObject (0x7f09e181d150) 0
+ primary-for QWidget (0x7f09e1819280)
+ QPaintDevice (0x7f09e181d1c0) 16
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 464u)
+
+Class Phonon::EffectParameter
+ size=8 align=8
+ base size=8 base align=8
+Phonon::EffectParameter (0x7f09e1830460) 0
+
+Vtable for Phonon::VolumeFaderInterface
+Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE: 9u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon20VolumeFaderInterfaceE)
+16 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+24 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+32 Phonon::VolumeFaderInterface::volume
+40 Phonon::VolumeFaderInterface::setVolume
+48 Phonon::VolumeFaderInterface::fadeCurve
+56 Phonon::VolumeFaderInterface::setFadeCurve
+64 Phonon::VolumeFaderInterface::fadeTo
+
+Class Phonon::VolumeFaderInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::VolumeFaderInterface (0x7f09e166d070) 0 nearly-empty
+ vptr=((& Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE) + 16u)
+
+Vtable for Phonon::AbstractAudioOutput
+Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+16 Phonon::AbstractAudioOutput::metaObject
+24 Phonon::AbstractAudioOutput::qt_metacast
+32 Phonon::AbstractAudioOutput::qt_metacall
+40 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+48 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+128 Phonon::AbstractAudioOutput::_ZThn16_N6Phonon19AbstractAudioOutputD1Ev
+136 Phonon::AbstractAudioOutput::_ZThn16_N6Phonon19AbstractAudioOutputD0Ev
+
+Class Phonon::AbstractAudioOutput
+ size=32 align=8
+ base size=32 base align=8
+Phonon::AbstractAudioOutput (0x7f09e1676f00) 0
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 16u)
+ QObject (0x7f09e1677930) 0
+ primary-for Phonon::AbstractAudioOutput (0x7f09e1676f00)
+ Phonon::MediaNode (0x7f09e16779a0) 16
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 128u)
+
+Vtable for Phonon::AudioOutput
+Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+16 Phonon::AudioOutput::metaObject
+24 Phonon::AudioOutput::qt_metacast
+32 Phonon::AudioOutput::qt_metacall
+40 Phonon::AudioOutput::~AudioOutput
+48 Phonon::AudioOutput::~AudioOutput
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+128 Phonon::AudioOutput::_ZThn16_N6Phonon11AudioOutputD1Ev
+136 Phonon::AudioOutput::_ZThn16_N6Phonon11AudioOutputD0Ev
+
+Class Phonon::AudioOutput
+ size=32 align=8
+ base size=32 base align=8
+Phonon::AudioOutput (0x7f09e168bd20) 0
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 16u)
+ Phonon::AbstractAudioOutput (0x7f09e1680800) 0
+ primary-for Phonon::AudioOutput (0x7f09e168bd20)
+ QObject (0x7f09e168bd90) 0
+ primary-for Phonon::AbstractAudioOutput (0x7f09e1680800)
+ Phonon::MediaNode (0x7f09e168be00) 16
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 128u)
+
+Vtable for Phonon::AudioOutputInterface40
+Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E: 8u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface40E)
+16 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+24 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface40
+ size=8 align=8
+ base size=8 base align=8
+Phonon::AudioOutputInterface40 (0x7f09e16ac2a0) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E) + 16u)
+
+Vtable for Phonon::AudioOutputInterface42
+Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E: 9u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface42E)
+16 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+24 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface42
+ size=8 align=8
+ base size=8 base align=8
+Phonon::AudioOutputInterface42 (0x7f09e16accb0) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E) + 16u)
+ Phonon::AudioOutputInterface40 (0x7f09e16acd20) 0 nearly-empty
+ primary-for Phonon::AudioOutputInterface42 (0x7f09e16accb0)
+
+Vtable for Phonon::BackendCapabilities::Notifier
+Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE: 14u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19BackendCapabilities8NotifierE)
+16 Phonon::BackendCapabilities::Notifier::metaObject
+24 Phonon::BackendCapabilities::Notifier::qt_metacast
+32 Phonon::BackendCapabilities::Notifier::qt_metacall
+40 Phonon::BackendCapabilities::Notifier::~Notifier
+48 Phonon::BackendCapabilities::Notifier::~Notifier
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+
+Class Phonon::BackendCapabilities::Notifier
+ size=16 align=8
+ base size=16 base align=8
+Phonon::BackendCapabilities::Notifier (0x7f09e16bac40) 0
+ vptr=((& Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE) + 16u)
+ QObject (0x7f09e16bacb0) 0
+ primary-for Phonon::BackendCapabilities::Notifier (0x7f09e16bac40)
+
+Vtable for Phonon::BackendInterface
+Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE: 12u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon16BackendInterfaceE)
+16 Phonon::BackendInterface::~BackendInterface
+24 Phonon::BackendInterface::~BackendInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+
+Class Phonon::BackendInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::BackendInterface (0x7f09e16ce9a0) 0 nearly-empty
+ vptr=((& Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE) + 16u)
+
+Vtable for Phonon::AbstractMediaStream
+Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19AbstractMediaStreamE)
+16 Phonon::AbstractMediaStream::metaObject
+24 Phonon::AbstractMediaStream::qt_metacast
+32 Phonon::AbstractMediaStream::qt_metacall
+40 Phonon::AbstractMediaStream::~AbstractMediaStream
+48 Phonon::AbstractMediaStream::~AbstractMediaStream
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 Phonon::AbstractMediaStream::enoughData
+136 Phonon::AbstractMediaStream::seekStream
+
+Class Phonon::AbstractMediaStream
+ size=24 align=8
+ base size=24 base align=8
+Phonon::AbstractMediaStream (0x7f09e16dfc40) 0
+ vptr=((& Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE) + 16u)
+ QObject (0x7f09e16dfcb0) 0
+ primary-for Phonon::AbstractMediaStream (0x7f09e16dfc40)
+
+Vtable for Phonon::VideoWidget
+Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE: 67u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+16 Phonon::VideoWidget::metaObject
+24 Phonon::VideoWidget::qt_metacast
+32 Phonon::VideoWidget::qt_metacall
+40 Phonon::VideoWidget::~VideoWidget
+48 Phonon::VideoWidget::~VideoWidget
+56 Phonon::VideoWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 Phonon::VideoWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+464 Phonon::VideoWidget::_ZThn16_N6Phonon11VideoWidgetD1Ev
+472 Phonon::VideoWidget::_ZThn16_N6Phonon11VideoWidgetD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+504 (int (*)(...))-0x00000000000000028
+512 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+520 Phonon::VideoWidget::_ZThn40_N6Phonon11VideoWidgetD1Ev
+528 Phonon::VideoWidget::_ZThn40_N6Phonon11VideoWidgetD0Ev
+
+Class Phonon::VideoWidget
+ size=56 align=8
+ base size=56 base align=8
+Phonon::VideoWidget (0x7f09e16e8900) 0
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 16u)
+ QWidget (0x7f09e16e8980) 0
+ primary-for Phonon::VideoWidget (0x7f09e16e8900)
+ QObject (0x7f09e16fd0e0) 0
+ primary-for QWidget (0x7f09e16e8980)
+ QPaintDevice (0x7f09e16fd150) 16
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 464u)
+ Phonon::AbstractVideoOutput (0x7f09e16fd1c0) 40
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 520u)
+ Phonon::MediaNode (0x7f09e16fd230) 40
+ primary-for Phonon::AbstractVideoOutput (0x7f09e16fd1c0)
+
+Vtable for Phonon::VideoWidgetInterface
+Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE: 17u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon20VideoWidgetInterfaceE)
+16 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+24 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+96 __cxa_pure_virtual
+104 __cxa_pure_virtual
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 __cxa_pure_virtual
+
+Class Phonon::VideoWidgetInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::VideoWidgetInterface (0x7f09e1717a80) 0 nearly-empty
+ vptr=((& Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE) + 16u)
+
+Vtable for Phonon::MediaObjectInterface
+Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE: 25u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon20MediaObjectInterfaceE)
+16 Phonon::MediaObjectInterface::~MediaObjectInterface
+24 Phonon::MediaObjectInterface::~MediaObjectInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+96 __cxa_pure_virtual
+104 __cxa_pure_virtual
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 __cxa_pure_virtual
+136 __cxa_pure_virtual
+144 __cxa_pure_virtual
+152 __cxa_pure_virtual
+160 Phonon::MediaObjectInterface::remainingTime
+168 __cxa_pure_virtual
+176 __cxa_pure_virtual
+184 __cxa_pure_virtual
+192 __cxa_pure_virtual
+
+Class Phonon::MediaObjectInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::MediaObjectInterface (0x7f09e1727ee0) 0 nearly-empty
+ vptr=((& Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE) + 16u)
+
diff --git a/tests/auto/bic/data/phonon.4.5.0.linux-gcc-ia32.txt b/tests/auto/bic/data/phonon.4.5.0.linux-gcc-ia32.txt
new file mode 100644
index 0000000..31aff5e
--- /dev/null
+++ b/tests/auto/bic/data/phonon.4.5.0.linux-gcc-ia32.txt
@@ -0,0 +1,1930 @@
+Class QSysInfo
+ size=1 align=1
+ base size=0 base align=1
+QSysInfo (0xb6f02e88) 0 empty
+
+Class QBool
+ size=1 align=1
+ base size=1 base align=1
+QBool (0xb6e5503c) 0
+
+Class qIsNull(double)::U
+ size=8 align=4
+ base size=8 base align=4
+qIsNull(double)::U (0xb6e55708) 0
+
+Class qIsNull(float)::U
+ size=4 align=4
+ base size=4 base align=4
+qIsNull(float)::U (0xb6e557bc) 0
+
+Class QFlag
+ size=4 align=4
+ base size=4 base align=4
+QFlag (0xb6e83000) 0
+
+Class QIncompatibleFlag
+ size=4 align=4
+ base size=4 base align=4
+QIncompatibleFlag (0xb6e8312c) 0
+
+Class QBasicAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QBasicAtomicInt (0xb6e83384) 0
+
+Class QAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QAtomicInt (0xb6eb3f80) 0
+ QBasicAtomicInt (0xb6e83a8c) 0
+
+Class QSharedData
+ size=4 align=4
+ base size=4 base align=4
+QSharedData (0xb6e83f78) 0
+
+Class QLatin1Char
+ size=1 align=1
+ base size=1 base align=1
+QLatin1Char (0xb694830c) 0
+
+Class QChar
+ size=2 align=2
+ base size=2 base align=2
+QChar (0xb69484ec) 0
+
+Vtable for std::exception
+std::exception::_ZTVSt9exception: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt9exception)
+8 std::exception::~exception
+12 std::exception::~exception
+16 std::exception::what
+
+Class std::exception
+ size=4 align=4
+ base size=4 base align=4
+std::exception (0xb69bec30) 0 nearly-empty
+ vptr=((& std::exception::_ZTVSt9exception) + 8u)
+
+Vtable for std::bad_exception
+std::bad_exception::_ZTVSt13bad_exception: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt13bad_exception)
+8 std::bad_exception::~bad_exception
+12 std::bad_exception::~bad_exception
+16 std::bad_exception::what
+
+Class std::bad_exception
+ size=4 align=4
+ base size=4 base align=4
+std::bad_exception (0xb69c3740) 0 nearly-empty
+ vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 8u)
+ std::exception (0xb69bed20) 0 nearly-empty
+ primary-for std::bad_exception (0xb69c3740)
+
+Vtable for std::bad_alloc
+std::bad_alloc::_ZTVSt9bad_alloc: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt9bad_alloc)
+8 std::bad_alloc::~bad_alloc
+12 std::bad_alloc::~bad_alloc
+16 std::bad_alloc::what
+
+Class std::bad_alloc
+ size=4 align=4
+ base size=4 base align=4
+std::bad_alloc (0xb69c38c0) 0 nearly-empty
+ vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 8u)
+ std::exception (0xb69bef78) 0 nearly-empty
+ primary-for std::bad_alloc (0xb69c38c0)
+
+Class std::nothrow_t
+ size=1 align=1
+ base size=0 base align=1
+std::nothrow_t (0xb69d61e0) 0 empty
+
+Class QListData::Data
+ size=24 align=4
+ base size=24 base align=4
+QListData::Data (0xb69d62d0) 0
+
+Class QListData
+ size=4 align=4
+ base size=4 base align=4
+QListData (0xb69d6294) 0
+
+Class QInternal
+ size=1 align=1
+ base size=0 base align=1
+QInternal (0xb68ff690) 0 empty
+
+Class QGenericArgument
+ size=8 align=4
+ base size=8 base align=4
+QGenericArgument (0xb68ff6cc) 0
+
+Class QGenericReturnArgument
+ size=8 align=4
+ base size=8 base align=4
+QGenericReturnArgument (0xb6768140) 0
+ QGenericArgument (0xb68ff8e8) 0
+
+Class QMetaObject
+ size=16 align=4
+ base size=16 base align=4
+QMetaObject (0xb68ffa50) 0
+
+Class QMetaObjectExtraData
+ size=8 align=4
+ base size=8 base align=4
+QMetaObjectExtraData (0xb68ffb7c) 0
+
+Class __locale_struct
+ size=116 align=4
+ base size=116 base align=4
+__locale_struct (0xb68ffd5c) 0
+
+Class QByteArray::Data
+ size=20 align=4
+ base size=20 base align=4
+QByteArray::Data (0xb679d1e0) 0
+
+Class QByteArray
+ size=4 align=4
+ base size=4 base align=4
+QByteArray (0xb679d1a4) 0
+
+Class QByteRef
+ size=8 align=4
+ base size=8 base align=4
+QByteRef (0xb67f20b4) 0
+
+Class QString::Null
+ size=1 align=1
+ base size=0 base align=1
+QString::Null (0xb6826960) 0 empty
+
+Class QString::Data
+ size=20 align=4
+ base size=20 base align=4
+QString::Data (0xb682699c) 0
+
+Class QString
+ size=4 align=4
+ base size=4 base align=4
+QString (0xb6826924) 0
+
+Class QLatin1String
+ size=4 align=4
+ base size=4 base align=4
+QLatin1String (0xb66f24ec) 0
+
+Class QCharRef
+ size=8 align=4
+ base size=8 base align=4
+QCharRef (0xb654f1e0) 0
+
+Class QConstString
+ size=4 align=4
+ base size=4 base align=4
+QConstString (0xb65cf840) 0
+ QString (0xb65f1924) 0
+
+Class QStringRef
+ size=12 align=4
+ base size=12 base align=4
+QStringRef (0xb65f1d5c) 0
+
+Vtable for QObjectData
+QObjectData::_ZTV11QObjectData: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QObjectData)
+8 __cxa_pure_virtual
+12 __cxa_pure_virtual
+
+Class QObjectData
+ size=24 align=4
+ base size=24 base align=4
+QObjectData (0xb642dca8) 0
+ vptr=((& QObjectData::_ZTV11QObjectData) + 8u)
+
+Vtable for QObject
+QObject::_ZTV7QObject: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QObject)
+8 QObject::metaObject
+12 QObject::qt_metacast
+16 QObject::qt_metacall
+20 QObject::~QObject
+24 QObject::~QObject
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class QObject
+ size=8 align=4
+ base size=8 base align=4
+QObject (0xb642dd5c) 0
+ vptr=((& QObject::_ZTV7QObject) + 8u)
+
+Vtable for QObjectUserData
+QObjectUserData::_ZTV15QObjectUserData: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI15QObjectUserData)
+8 QObjectUserData::~QObjectUserData
+12 QObjectUserData::~QObjectUserData
+
+Class QObjectUserData
+ size=4 align=4
+ base size=4 base align=4
+QObjectUserData (0xb64915a0) 0 nearly-empty
+ vptr=((& QObjectUserData::_ZTV15QObjectUserData) + 8u)
+
+Vtable for QIODevice
+QIODevice::_ZTV9QIODevice: 30u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI9QIODevice)
+8 QIODevice::metaObject
+12 QIODevice::qt_metacast
+16 QIODevice::qt_metacall
+20 QIODevice::~QIODevice
+24 QIODevice::~QIODevice
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QIODevice::isSequential
+60 QIODevice::open
+64 QIODevice::close
+68 QIODevice::pos
+72 QIODevice::size
+76 QIODevice::seek
+80 QIODevice::atEnd
+84 QIODevice::reset
+88 QIODevice::bytesAvailable
+92 QIODevice::bytesToWrite
+96 QIODevice::canReadLine
+100 QIODevice::waitForReadyRead
+104 QIODevice::waitForBytesWritten
+108 __cxa_pure_virtual
+112 QIODevice::readLineData
+116 __cxa_pure_virtual
+
+Class QIODevice
+ size=8 align=4
+ base size=8 base align=4
+QIODevice (0xb645bf80) 0
+ vptr=((& QIODevice::_ZTV9QIODevice) + 8u)
+ QObject (0xb64916cc) 0
+ primary-for QIODevice (0xb645bf80)
+
+Vtable for QDataStream
+QDataStream::_ZTV11QDataStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QDataStream)
+8 QDataStream::~QDataStream
+12 QDataStream::~QDataStream
+
+Class QDataStream
+ size=28 align=4
+ base size=28 base align=4
+QDataStream (0xb64cc438) 0
+ vptr=((& QDataStream::_ZTV11QDataStream) + 8u)
+
+Class QHashData::Node
+ size=8 align=4
+ base size=8 base align=4
+QHashData::Node (0xb64ccfb4) 0
+
+Class QHashData
+ size=32 align=4
+ base size=32 base align=4
+QHashData (0xb64ccf78) 0
+
+Class QHashDummyValue
+ size=1 align=1
+ base size=0 base align=1
+QHashDummyValue (0xb6526654) 0 empty
+
+Class QMapData::Node
+ size=8 align=4
+ base size=8 base align=4
+QMapData::Node (0xb6526d98) 0
+
+Class QMapData
+ size=72 align=4
+ base size=72 base align=4
+QMapData (0xb6526d5c) 0
+
+Vtable for QSystemLocale
+QSystemLocale::_ZTV13QSystemLocale: 6u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI13QSystemLocale)
+8 QSystemLocale::~QSystemLocale
+12 QSystemLocale::~QSystemLocale
+16 QSystemLocale::query
+20 QSystemLocale::fallbackLocale
+
+Class QSystemLocale
+ size=4 align=4
+ base size=4 base align=4
+QSystemLocale (0xb62370b4) 0 nearly-empty
+ vptr=((& QSystemLocale::_ZTV13QSystemLocale) + 8u)
+
+Class QLocale::Data
+ size=4 align=2
+ base size=4 base align=2
+QLocale::Data (0xb623712c) 0
+
+Class QLocale
+ size=4 align=4
+ base size=4 base align=4
+QLocale (0xb62370f0) 0
+
+Class QTextCodec::ConverterState
+ size=28 align=4
+ base size=28 base align=4
+QTextCodec::ConverterState (0xb6237780) 0
+
+Vtable for QTextCodec
+QTextCodec::_ZTV10QTextCodec: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI10QTextCodec)
+8 __cxa_pure_virtual
+12 QTextCodec::aliases
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 QTextCodec::~QTextCodec
+32 QTextCodec::~QTextCodec
+
+Class QTextCodec
+ size=4 align=4
+ base size=4 base align=4
+QTextCodec (0xb6237744) 0 nearly-empty
+ vptr=((& QTextCodec::_ZTV10QTextCodec) + 8u)
+
+Class QTextEncoder
+ size=32 align=4
+ base size=32 base align=4
+QTextEncoder (0xb62c0384) 0
+
+Class QTextDecoder
+ size=32 align=4
+ base size=32 base align=4
+QTextDecoder (0xb62c05dc) 0
+
+Class _IO_marker
+ size=12 align=4
+ base size=12 base align=4
+_IO_marker (0xb62c0960) 0
+
+Class _IO_FILE
+ size=148 align=4
+ base size=148 base align=4
+_IO_FILE (0xb62c099c) 0
+
+Vtable for QTextStream
+QTextStream::_ZTV11QTextStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QTextStream)
+8 QTextStream::~QTextStream
+12 QTextStream::~QTextStream
+
+Class QTextStream
+ size=8 align=4
+ base size=8 base align=4
+QTextStream (0xb62c0a14) 0
+ vptr=((& QTextStream::_ZTV11QTextStream) + 8u)
+
+Class QTextStreamManipulator
+ size=24 align=4
+ base size=22 base align=4
+QTextStreamManipulator (0xb6144000) 0
+
+Vtable for QTextIStream
+QTextIStream::_ZTV12QTextIStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QTextIStream)
+8 QTextIStream::~QTextIStream
+12 QTextIStream::~QTextIStream
+
+Class QTextIStream
+ size=8 align=4
+ base size=8 base align=4
+QTextIStream (0xb61494c0) 0
+ vptr=((& QTextIStream::_ZTV12QTextIStream) + 8u)
+ QTextStream (0xb615212c) 0
+ primary-for QTextIStream (0xb61494c0)
+
+Vtable for QTextOStream
+QTextOStream::_ZTV12QTextOStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QTextOStream)
+8 QTextOStream::~QTextOStream
+12 QTextOStream::~QTextOStream
+
+Class QTextOStream
+ size=8 align=4
+ base size=8 base align=4
+QTextOStream (0xb6149780) 0
+ vptr=((& QTextOStream::_ZTV12QTextOStream) + 8u)
+ QTextStream (0xb61527bc) 0
+ primary-for QTextOStream (0xb6149780)
+
+Class wait
+ size=4 align=4
+ base size=4 base align=4
+wait (0xb6152e4c) 0
+
+Class timespec
+ size=8 align=4
+ base size=8 base align=4
+timespec (0xb6175000) 0
+
+Class timeval
+ size=8 align=4
+ base size=8 base align=4
+timeval (0xb617503c) 0
+
+Class __pthread_internal_slist
+ size=4 align=4
+ base size=4 base align=4
+__pthread_internal_slist (0xb61750f0) 0
+
+Class random_data
+ size=28 align=4
+ base size=28 base align=4
+random_data (0xb61753fc) 0
+
+Class drand48_data
+ size=24 align=4
+ base size=24 base align=4
+drand48_data (0xb6175438) 0
+
+Class QVectorData
+ size=16 align=4
+ base size=16 base align=4
+QVectorData (0xb6175474) 0
+
+Class QDebug::Stream
+ size=24 align=4
+ base size=22 base align=4
+QDebug::Stream (0xb61757bc) 0
+
+Class QDebug
+ size=4 align=4
+ base size=4 base align=4
+QDebug (0xb6175780) 0
+
+Class QNoDebug
+ size=1 align=1
+ base size=0 base align=1
+QNoDebug (0xb608b294) 0 empty
+
+Class QMetaType
+ size=1 align=1
+ base size=0 base align=1
+QMetaType (0xb608b528) 0 empty
+
+Class QVariant::PrivateShared
+ size=8 align=4
+ base size=8 base align=4
+QVariant::PrivateShared (0xb60d6f78) 0
+
+Class QVariant::Private::Data
+ size=8 align=4
+ base size=8 base align=4
+QVariant::Private::Data (0xb611f000) 0
+
+Class QVariant::Private
+ size=12 align=4
+ base size=12 base align=4
+QVariant::Private (0xb60d6fb4) 0
+
+Class QVariant::Handler
+ size=36 align=4
+ base size=36 base align=4
+QVariant::Handler (0xb611f03c) 0
+
+Class QVariant
+ size=12 align=4
+ base size=12 base align=4
+QVariant (0xb60d6f3c) 0
+
+Class QVariantComparisonHelper
+ size=4 align=4
+ base size=4 base align=4
+QVariantComparisonHelper (0xb5f72618) 0
+
+Class Phonon::ObjectDescriptionData
+ size=8 align=4
+ base size=8 base align=4
+Phonon::ObjectDescriptionData (0xb5f75dc0) 0
+ QSharedData (0xb5f72ac8) 0
+
+Class Phonon::Path
+ size=4 align=4
+ base size=4 base align=4
+Phonon::Path (0xb5fbe3c0) 0
+
+Vtable for Phonon::MediaNode
+Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon9MediaNodeE)
+8 Phonon::MediaNode::~MediaNode
+12 Phonon::MediaNode::~MediaNode
+
+Class Phonon::MediaNode
+ size=8 align=4
+ base size=8 base align=4
+Phonon::MediaNode (0xb5fbe438) 0
+ vptr=((& Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE) + 8u)
+
+Vtable for Phonon::AbstractVideoOutput
+Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractVideoOutputE)
+8 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+12 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+
+Class Phonon::AbstractVideoOutput
+ size=8 align=4
+ base size=8 base align=4
+Phonon::AbstractVideoOutput (0xb5fcc180) 0
+ vptr=((& Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE) + 8u)
+ Phonon::MediaNode (0xb5fbe4ec) 0
+ primary-for Phonon::AbstractVideoOutput (0xb5fcc180)
+
+Class Phonon::MediaSource
+ size=4 align=4
+ base size=4 base align=4
+Phonon::MediaSource (0xb5fbe834) 0
+
+Vtable for Phonon::EffectInterface
+Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15EffectInterfaceE)
+8 Phonon::EffectInterface::~EffectInterface
+12 Phonon::EffectInterface::~EffectInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+
+Class Phonon::EffectInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::EffectInterface (0xb5fbe8ac) 0 nearly-empty
+ vptr=((& Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE) + 8u)
+
+Vtable for Phonon::AddonInterface
+Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE: 6u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon14AddonInterfaceE)
+8 Phonon::AddonInterface::~AddonInterface
+12 Phonon::AddonInterface::~AddonInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+
+Class Phonon::AddonInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AddonInterface (0xb5fbed98) 0 nearly-empty
+ vptr=((& Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE) + 8u)
+
+Class QSize
+ size=8 align=4
+ base size=8 base align=4
+QSize (0xb600c294) 0
+
+Class QSizeF
+ size=16 align=4
+ base size=16 base align=4
+QSizeF (0xb5e27d20) 0
+
+Class QPoint
+ size=8 align=4
+ base size=8 base align=4
+QPoint (0xb5e54924) 0
+
+Class QPointF
+ size=16 align=4
+ base size=16 base align=4
+QPointF (0xb5e6eec4) 0
+
+Class QRect
+ size=16 align=4
+ base size=16 base align=4
+QRect (0xb5e965dc) 0
+
+Class QRectF
+ size=32 align=4
+ base size=32 base align=4
+QRectF (0xb5ef821c) 0
+
+Vtable for QPaintDevice
+QPaintDevice::_ZTV12QPaintDevice: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QPaintDevice)
+8 QPaintDevice::~QPaintDevice
+12 QPaintDevice::~QPaintDevice
+16 QPaintDevice::devType
+20 __cxa_pure_virtual
+24 QPaintDevice::metric
+
+Class QPaintDevice
+ size=8 align=4
+ base size=6 base align=4
+QPaintDevice (0xb5d2ff78) 0
+ vptr=((& QPaintDevice::_ZTV12QPaintDevice) + 8u)
+
+Class QRegExp
+ size=4 align=4
+ base size=4 base align=4
+QRegExp (0xb5d4ea8c) 0
+
+Class QStringMatcher
+ size=1036 align=4
+ base size=1036 base align=4
+QStringMatcher (0xb5d72438) 0
+
+Class QStringList
+ size=4 align=4
+ base size=4 base align=4
+QStringList (0xb5d5ba40) 0
+ QList<QString> (0xb5d725a0) 0
+
+Class QColor
+ size=16 align=4
+ base size=14 base align=4
+QColor (0xb5da5b04) 0
+
+Class QPolygon
+ size=4 align=4
+ base size=4 base align=4
+QPolygon (0xb5df61c0) 0
+ QVector<QPoint> (0xb5df7168) 0
+
+Class QPolygonF
+ size=4 align=4
+ base size=4 base align=4
+QPolygonF (0xb5df67c0) 0
+ QVector<QPointF> (0xb5df7b04) 0
+
+Class QRegion::QRegionData
+ size=16 align=4
+ base size=16 base align=4
+QRegion::QRegionData (0xb5c39438) 0
+
+Class QRegion
+ size=4 align=4
+ base size=4 base align=4
+QRegion (0xb5c393fc) 0
+
+Class QLine
+ size=16 align=4
+ base size=16 base align=4
+QLine (0xb5c39780) 0
+
+Class QLineF
+ size=32 align=4
+ base size=32 base align=4
+QLineF (0xb5c6f4b0) 0
+
+Class QMatrix
+ size=48 align=4
+ base size=48 base align=4
+QMatrix (0xb5c9f5a0) 0
+
+Class QPainterPath::Element
+ size=20 align=4
+ base size=20 base align=4
+QPainterPath::Element (0xb5c9fd20) 0
+
+Class QPainterPath
+ size=4 align=4
+ base size=4 base align=4
+QPainterPath (0xb5c9fce4) 0
+
+Class QPainterPathPrivate
+ size=8 align=4
+ base size=8 base align=4
+QPainterPathPrivate (0xb5cea1a4) 0
+
+Class QPainterPathStroker
+ size=4 align=4
+ base size=4 base align=4
+QPainterPathStroker (0xb5cea2d0) 0
+
+Class QTransform
+ size=80 align=4
+ base size=80 base align=4
+QTransform (0xb5b1a168) 0
+
+Class QImageTextKeyLang
+ size=8 align=4
+ base size=8 base align=4
+QImageTextKeyLang (0xb5b5c780) 0
+
+Vtable for QImage
+QImage::_ZTV6QImage: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI6QImage)
+8 QImage::~QImage
+12 QImage::~QImage
+16 QImage::devType
+20 QImage::paintEngine
+24 QImage::metric
+
+Class QImage
+ size=12 align=4
+ base size=12 base align=4
+QImage (0xb5b4cb40) 0
+ vptr=((& QImage::_ZTV6QImage) + 8u)
+ QPaintDevice (0xb5b87168) 0
+ primary-for QImage (0xb5b4cb40)
+
+Vtable for QPixmap
+QPixmap::_ZTV7QPixmap: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QPixmap)
+8 QPixmap::~QPixmap
+12 QPixmap::~QPixmap
+16 QPixmap::devType
+20 QPixmap::paintEngine
+24 QPixmap::metric
+
+Class QPixmap
+ size=12 align=4
+ base size=12 base align=4
+QPixmap (0xb5bc4480) 0
+ vptr=((& QPixmap::_ZTV7QPixmap) + 8u)
+ QPaintDevice (0xb5b87e10) 0
+ primary-for QPixmap (0xb5bc4480)
+
+Class QBrush
+ size=4 align=4
+ base size=4 base align=4
+QBrush (0xb5bf0474) 0
+
+Class QBrushData
+ size=104 align=4
+ base size=104 base align=4
+QBrushData (0xb5bf06cc) 0
+
+Class QGradient
+ size=56 align=4
+ base size=56 base align=4
+QGradient (0xb5bf0a8c) 0
+
+Class QLinearGradient
+ size=56 align=4
+ base size=56 base align=4
+QLinearGradient (0xb5a1a2c0) 0
+ QGradient (0xb5bf0d20) 0
+
+Class QRadialGradient
+ size=56 align=4
+ base size=56 base align=4
+QRadialGradient (0xb5a1a3c0) 0
+ QGradient (0xb5bf0d5c) 0
+
+Class QConicalGradient
+ size=56 align=4
+ base size=56 base align=4
+QConicalGradient (0xb5a1a4c0) 0
+ QGradient (0xb5bf0d98) 0
+
+Class QPalette
+ size=8 align=4
+ base size=8 base align=4
+QPalette (0xb5bf0dd4) 0
+
+Class QColorGroup
+ size=8 align=4
+ base size=8 base align=4
+QColorGroup (0xb5a1af00) 0
+ QPalette (0xb5a546cc) 0
+
+Class QFont
+ size=8 align=4
+ base size=8 base align=4
+QFont (0xb5a77834) 0
+
+Class QFontMetrics
+ size=4 align=4
+ base size=4 base align=4
+QFontMetrics (0xb5a77a14) 0
+
+Class QFontMetricsF
+ size=4 align=4
+ base size=4 base align=4
+QFontMetricsF (0xb5a77c6c) 0
+
+Class QFontInfo
+ size=4 align=4
+ base size=4 base align=4
+QFontInfo (0xb5a77d20) 0
+
+Class QSizePolicy
+ size=4 align=4
+ base size=4 base align=4
+QSizePolicy (0xb5a77d5c) 0
+
+Class QCursor
+ size=4 align=4
+ base size=4 base align=4
+QCursor (0xb5af9c30) 0
+
+Class QKeySequence
+ size=4 align=4
+ base size=4 base align=4
+QKeySequence (0xb5af9c6c) 0
+
+Class QWidgetData
+ size=64 align=4
+ base size=64 base align=4
+QWidgetData (0xb5af9f78) 0
+
+Vtable for QWidget
+QWidget::_ZTV7QWidget: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QWidget)
+8 QWidget::metaObject
+12 QWidget::qt_metacast
+16 QWidget::qt_metacall
+20 QWidget::~QWidget
+24 QWidget::~QWidget
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTI7QWidget)
+232 QWidget::_ZThn8_N7QWidgetD1Ev
+236 QWidget::_ZThn8_N7QWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class QWidget
+ size=20 align=4
+ base size=20 base align=4
+QWidget (0xb5948410) 0
+ vptr=((& QWidget::_ZTV7QWidget) + 8u)
+ QObject (0xb5af9fb4) 0
+ primary-for QWidget (0xb5948410)
+ QPaintDevice (0xb5951000) 8
+ vptr=((& QWidget::_ZTV7QWidget) + 232u)
+
+Vtable for Phonon::VideoPlayer
+Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+8 Phonon::VideoPlayer::metaObject
+12 Phonon::VideoPlayer::qt_metacast
+16 Phonon::VideoPlayer::qt_metacall
+20 Phonon::VideoPlayer::~VideoPlayer
+24 Phonon::VideoPlayer::~VideoPlayer
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+232 Phonon::VideoPlayer::_ZThn8_N6Phonon11VideoPlayerD1Ev
+236 Phonon::VideoPlayer::_ZThn8_N6Phonon11VideoPlayerD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VideoPlayer
+ size=24 align=4
+ base size=24 base align=4
+Phonon::VideoPlayer (0xb59e0cc0) 0
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 8u)
+ QWidget (0xb5a085f0) 0
+ primary-for Phonon::VideoPlayer (0xb59e0cc0)
+ QObject (0xb59f1618) 0
+ primary-for QWidget (0xb5a085f0)
+ QPaintDevice (0xb59f1654) 8
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 232u)
+
+Vtable for Phonon::Effect
+Phonon::Effect::_ZTVN6Phonon6EffectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+8 Phonon::Effect::metaObject
+12 Phonon::Effect::qt_metacast
+16 Phonon::Effect::qt_metacall
+20 Phonon::Effect::~Effect
+24 Phonon::Effect::~Effect
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+64 Phonon::Effect::_ZThn8_N6Phonon6EffectD1Ev
+68 Phonon::Effect::_ZThn8_N6Phonon6EffectD0Ev
+
+Class Phonon::Effect
+ size=16 align=4
+ base size=16 base align=4
+Phonon::Effect (0xb5803f00) 0
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 8u)
+ QObject (0xb59f1780) 0
+ primary-for Phonon::Effect (0xb5803f00)
+ Phonon::MediaNode (0xb59f17bc) 8
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 64u)
+
+Vtable for Phonon::VolumeFaderEffect
+Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+8 Phonon::VolumeFaderEffect::metaObject
+12 Phonon::VolumeFaderEffect::qt_metacast
+16 Phonon::VolumeFaderEffect::qt_metacall
+20 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+24 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+64 Phonon::VolumeFaderEffect::_ZThn8_N6Phonon17VolumeFaderEffectD1Ev
+68 Phonon::VolumeFaderEffect::_ZThn8_N6Phonon17VolumeFaderEffectD0Ev
+
+Class Phonon::VolumeFaderEffect
+ size=16 align=4
+ base size=16 base align=4
+Phonon::VolumeFaderEffect (0xb5815180) 0
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 8u)
+ Phonon::Effect (0xb58125a0) 0
+ primary-for Phonon::VolumeFaderEffect (0xb5815180)
+ QObject (0xb59f19d8) 0
+ primary-for Phonon::Effect (0xb58125a0)
+ Phonon::MediaNode (0xb59f1a14) 8
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 64u)
+
+Class QModelIndex
+ size=16 align=4
+ base size=16 base align=4
+QModelIndex (0xb59f1c30) 0
+
+Class QPersistentModelIndex
+ size=4 align=4
+ base size=4 base align=4
+QPersistentModelIndex (0xb58380f0) 0
+
+Vtable for QAbstractItemModel
+QAbstractItemModel::_ZTV18QAbstractItemModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI18QAbstractItemModel)
+8 QAbstractItemModel::metaObject
+12 QAbstractItemModel::qt_metacast
+16 QAbstractItemModel::qt_metacall
+20 QAbstractItemModel::~QAbstractItemModel
+24 QAbstractItemModel::~QAbstractItemModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 QAbstractItemModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractItemModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractItemModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractItemModel (0xb5815dc0) 0
+ vptr=((& QAbstractItemModel::_ZTV18QAbstractItemModel) + 8u)
+ QObject (0xb5838258) 0
+ primary-for QAbstractItemModel (0xb5815dc0)
+
+Vtable for QAbstractTableModel
+QAbstractTableModel::_ZTV19QAbstractTableModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI19QAbstractTableModel)
+8 QAbstractTableModel::metaObject
+12 QAbstractTableModel::qt_metacast
+16 QAbstractTableModel::qt_metacall
+20 QAbstractTableModel::~QAbstractTableModel
+24 QAbstractTableModel::~QAbstractTableModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QAbstractTableModel::index
+60 QAbstractTableModel::parent
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 QAbstractTableModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractTableModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractTableModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractTableModel (0xb5864400) 0
+ vptr=((& QAbstractTableModel::_ZTV19QAbstractTableModel) + 8u)
+ QAbstractItemModel (0xb5864440) 0
+ primary-for QAbstractTableModel (0xb5864400)
+ QObject (0xb5838bb8) 0
+ primary-for QAbstractItemModel (0xb5864440)
+
+Vtable for QAbstractListModel
+QAbstractListModel::_ZTV18QAbstractListModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI18QAbstractListModel)
+8 QAbstractListModel::metaObject
+12 QAbstractListModel::qt_metacast
+16 QAbstractListModel::qt_metacall
+20 QAbstractListModel::~QAbstractListModel
+24 QAbstractListModel::~QAbstractListModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QAbstractListModel::index
+60 QAbstractListModel::parent
+64 __cxa_pure_virtual
+68 QAbstractListModel::columnCount
+72 QAbstractListModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractListModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractListModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractListModel (0xb5864680) 0
+ vptr=((& QAbstractListModel::_ZTV18QAbstractListModel) + 8u)
+ QAbstractItemModel (0xb58646c0) 0
+ primary-for QAbstractListModel (0xb5864680)
+ QObject (0xb5838ce4) 0
+ primary-for QAbstractItemModel (0xb58646c0)
+
+Class Phonon::ObjectDescriptionModelData
+ size=4 align=4
+ base size=4 base align=4
+Phonon::ObjectDescriptionModelData (0xb5885bb8) 0
+
+Vtable for Phonon::StreamInterface
+Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE: 8u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15StreamInterfaceE)
+8 Phonon::StreamInterface::~StreamInterface
+12 Phonon::StreamInterface::~StreamInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+
+Class Phonon::StreamInterface
+ size=8 align=4
+ base size=8 base align=4
+Phonon::StreamInterface (0xb5885d98) 0
+ vptr=((& Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE) + 8u)
+
+Vtable for Phonon::SeekSlider
+Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+8 Phonon::SeekSlider::metaObject
+12 Phonon::SeekSlider::qt_metacast
+16 Phonon::SeekSlider::qt_metacall
+20 Phonon::SeekSlider::~SeekSlider
+24 Phonon::SeekSlider::~SeekSlider
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+232 Phonon::SeekSlider::_ZThn8_N6Phonon10SeekSliderD1Ev
+236 Phonon::SeekSlider::_ZThn8_N6Phonon10SeekSliderD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::SeekSlider
+ size=24 align=4
+ base size=24 base align=4
+Phonon::SeekSlider (0xb589fb80) 0
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 8u)
+ QWidget (0xb58df3c0) 0
+ primary-for Phonon::SeekSlider (0xb589fb80)
+ QObject (0xb58e10b4) 0
+ primary-for QWidget (0xb58df3c0)
+ QPaintDevice (0xb58e10f0) 8
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 232u)
+
+Vtable for Phonon::PlatformPlugin
+Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE: 16u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon14PlatformPluginE)
+8 Phonon::PlatformPlugin::~PlatformPlugin
+12 Phonon::PlatformPlugin::~PlatformPlugin
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 Phonon::PlatformPlugin::deviceAccessListFor
+
+Class Phonon::PlatformPlugin
+ size=4 align=4
+ base size=4 base align=4
+Phonon::PlatformPlugin (0xb58e1294) 0 nearly-empty
+ vptr=((& Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE) + 8u)
+
+Vtable for Phonon::MediaController
+Phonon::MediaController::_ZTVN6Phonon15MediaControllerE: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15MediaControllerE)
+8 Phonon::MediaController::metaObject
+12 Phonon::MediaController::qt_metacast
+16 Phonon::MediaController::qt_metacall
+20 Phonon::MediaController::~MediaController
+24 Phonon::MediaController::~MediaController
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class Phonon::MediaController
+ size=12 align=4
+ base size=12 base align=4
+Phonon::MediaController (0xb58f82c0) 0
+ vptr=((& Phonon::MediaController::_ZTVN6Phonon15MediaControllerE) + 8u)
+ QObject (0xb58e17bc) 0
+ primary-for Phonon::MediaController (0xb58f82c0)
+
+Vtable for Phonon::VolumeSlider
+Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+8 Phonon::VolumeSlider::metaObject
+12 Phonon::VolumeSlider::qt_metacast
+16 Phonon::VolumeSlider::qt_metacall
+20 Phonon::VolumeSlider::~VolumeSlider
+24 Phonon::VolumeSlider::~VolumeSlider
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+232 Phonon::VolumeSlider::_ZThn8_N6Phonon12VolumeSliderD1Ev
+236 Phonon::VolumeSlider::_ZThn8_N6Phonon12VolumeSliderD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VolumeSlider
+ size=24 align=4
+ base size=24 base align=4
+Phonon::VolumeSlider (0xb58f8640) 0
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 8u)
+ QWidget (0xb57293c0) 0
+ primary-for Phonon::VolumeSlider (0xb58f8640)
+ QObject (0xb58e19d8) 0
+ primary-for QWidget (0xb57293c0)
+ QPaintDevice (0xb58e1a14) 8
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 232u)
+
+Vtable for Phonon::MediaObject
+Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+8 Phonon::MediaObject::metaObject
+12 Phonon::MediaObject::qt_metacast
+16 Phonon::MediaObject::qt_metacall
+20 Phonon::MediaObject::~MediaObject
+24 Phonon::MediaObject::~MediaObject
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+64 Phonon::MediaObject::_ZThn8_N6Phonon11MediaObjectD1Ev
+68 Phonon::MediaObject::_ZThn8_N6Phonon11MediaObjectD0Ev
+
+Class Phonon::MediaObject
+ size=16 align=4
+ base size=16 base align=4
+Phonon::MediaObject (0xb5733f50) 0
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 8u)
+ QObject (0xb58e1bb8) 0
+ primary-for Phonon::MediaObject (0xb5733f50)
+ Phonon::MediaNode (0xb58e1bf4) 8
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 64u)
+
+Vtable for Phonon::EffectWidget
+Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+8 Phonon::EffectWidget::metaObject
+12 Phonon::EffectWidget::qt_metacast
+16 Phonon::EffectWidget::qt_metacall
+20 Phonon::EffectWidget::~EffectWidget
+24 Phonon::EffectWidget::~EffectWidget
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+232 Phonon::EffectWidget::_ZThn8_N6Phonon12EffectWidgetD1Ev
+236 Phonon::EffectWidget::_ZThn8_N6Phonon12EffectWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::EffectWidget
+ size=24 align=4
+ base size=24 base align=4
+Phonon::EffectWidget (0xb58f8b80) 0
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 8u)
+ QWidget (0xb5749550) 0
+ primary-for Phonon::EffectWidget (0xb58f8b80)
+ QObject (0xb58e1e10) 0
+ primary-for QWidget (0xb5749550)
+ QPaintDevice (0xb58e1e4c) 8
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 232u)
+
+Class Phonon::EffectParameter
+ size=4 align=4
+ base size=4 base align=4
+Phonon::EffectParameter (0xb575c000) 0
+
+Vtable for Phonon::VolumeFaderInterface
+Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20VolumeFaderInterfaceE)
+8 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+12 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+16 Phonon::VolumeFaderInterface::volume
+20 Phonon::VolumeFaderInterface::setVolume
+24 Phonon::VolumeFaderInterface::fadeCurve
+28 Phonon::VolumeFaderInterface::setFadeCurve
+32 Phonon::VolumeFaderInterface::fadeTo
+
+Class Phonon::VolumeFaderInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::VolumeFaderInterface (0xb575c168) 0 nearly-empty
+ vptr=((& Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE) + 8u)
+
+Vtable for Phonon::AbstractAudioOutput
+Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+8 Phonon::AbstractAudioOutput::metaObject
+12 Phonon::AbstractAudioOutput::qt_metacast
+16 Phonon::AbstractAudioOutput::qt_metacall
+20 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+24 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+64 Phonon::AbstractAudioOutput::_ZThn8_N6Phonon19AbstractAudioOutputD1Ev
+68 Phonon::AbstractAudioOutput::_ZThn8_N6Phonon19AbstractAudioOutputD0Ev
+
+Class Phonon::AbstractAudioOutput
+ size=16 align=4
+ base size=16 base align=4
+Phonon::AbstractAudioOutput (0xb577fa50) 0
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 8u)
+ QObject (0xb575c654) 0
+ primary-for Phonon::AbstractAudioOutput (0xb577fa50)
+ Phonon::MediaNode (0xb575c690) 8
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 64u)
+
+Vtable for Phonon::AudioOutput
+Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+8 Phonon::AudioOutput::metaObject
+12 Phonon::AudioOutput::qt_metacast
+16 Phonon::AudioOutput::qt_metacall
+20 Phonon::AudioOutput::~AudioOutput
+24 Phonon::AudioOutput::~AudioOutput
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+64 Phonon::AudioOutput::_ZThn8_N6Phonon11AudioOutputD1Ev
+68 Phonon::AudioOutput::_ZThn8_N6Phonon11AudioOutputD0Ev
+
+Class Phonon::AudioOutput
+ size=16 align=4
+ base size=16 base align=4
+Phonon::AudioOutput (0xb577c7c0) 0
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 8u)
+ Phonon::AbstractAudioOutput (0xb5786cd0) 0
+ primary-for Phonon::AudioOutput (0xb577c7c0)
+ QObject (0xb575c8ac) 0
+ primary-for Phonon::AbstractAudioOutput (0xb5786cd0)
+ Phonon::MediaNode (0xb575c8e8) 8
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 64u)
+
+Vtable for Phonon::AudioOutputInterface40
+Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E: 8u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface40E)
+8 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+12 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface40
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AudioOutputInterface40 (0xb575cb04) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E) + 8u)
+
+Vtable for Phonon::AudioOutputInterface42
+Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface42E)
+8 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+12 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface42
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AudioOutputInterface42 (0xb577cc80) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E) + 8u)
+ Phonon::AudioOutputInterface40 (0xb575cd20) 0 nearly-empty
+ primary-for Phonon::AudioOutputInterface42 (0xb577cc80)
+
+Vtable for Phonon::BackendCapabilities::Notifier
+Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19BackendCapabilities8NotifierE)
+8 Phonon::BackendCapabilities::Notifier::metaObject
+12 Phonon::BackendCapabilities::Notifier::qt_metacast
+16 Phonon::BackendCapabilities::Notifier::qt_metacall
+20 Phonon::BackendCapabilities::Notifier::~Notifier
+24 Phonon::BackendCapabilities::Notifier::~Notifier
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class Phonon::BackendCapabilities::Notifier
+ size=8 align=4
+ base size=8 base align=4
+Phonon::BackendCapabilities::Notifier (0xb57a9100) 0
+ vptr=((& Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE) + 8u)
+ QObject (0xb57a821c) 0
+ primary-for Phonon::BackendCapabilities::Notifier (0xb57a9100)
+
+Vtable for Phonon::BackendInterface
+Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE: 12u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon16BackendInterfaceE)
+8 Phonon::BackendInterface::~BackendInterface
+12 Phonon::BackendInterface::~BackendInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+
+Class Phonon::BackendInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::BackendInterface (0xb57a8348) 0 nearly-empty
+ vptr=((& Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE) + 8u)
+
+Vtable for Phonon::AbstractMediaStream
+Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractMediaStreamE)
+8 Phonon::AbstractMediaStream::metaObject
+12 Phonon::AbstractMediaStream::qt_metacast
+16 Phonon::AbstractMediaStream::qt_metacall
+20 Phonon::AbstractMediaStream::~AbstractMediaStream
+24 Phonon::AbstractMediaStream::~AbstractMediaStream
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 Phonon::AbstractMediaStream::enoughData
+68 Phonon::AbstractMediaStream::seekStream
+
+Class Phonon::AbstractMediaStream
+ size=12 align=4
+ base size=12 base align=4
+Phonon::AbstractMediaStream (0xb57a9700) 0
+ vptr=((& Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE) + 8u)
+ QObject (0xb57a8834) 0
+ primary-for Phonon::AbstractMediaStream (0xb57a9700)
+
+Vtable for Phonon::VideoWidget
+Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE: 67u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+8 Phonon::VideoWidget::metaObject
+12 Phonon::VideoWidget::qt_metacast
+16 Phonon::VideoWidget::qt_metacall
+20 Phonon::VideoWidget::~VideoWidget
+24 Phonon::VideoWidget::~VideoWidget
+28 Phonon::VideoWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 Phonon::VideoWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+232 Phonon::VideoWidget::_ZThn8_N6Phonon11VideoWidgetD1Ev
+236 Phonon::VideoWidget::_ZThn8_N6Phonon11VideoWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+252 (int (*)(...))-0x000000014
+256 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+260 Phonon::VideoWidget::_ZThn20_N6Phonon11VideoWidgetD1Ev
+264 Phonon::VideoWidget::_ZThn20_N6Phonon11VideoWidgetD0Ev
+
+Class Phonon::VideoWidget
+ size=28 align=4
+ base size=28 base align=4
+Phonon::VideoWidget (0xb57ca1e0) 0
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 8u)
+ QWidget (0xb57ca230) 0
+ primary-for Phonon::VideoWidget (0xb57ca1e0)
+ QObject (0xb57a89d8) 0
+ primary-for QWidget (0xb57ca230)
+ QPaintDevice (0xb57a8a14) 8
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 232u)
+ Phonon::AbstractVideoOutput (0xb57a99c0) 20
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 260u)
+ Phonon::MediaNode (0xb57a8a50) 20
+ primary-for Phonon::AbstractVideoOutput (0xb57a99c0)
+
+Vtable for Phonon::VideoWidgetInterface
+Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE: 17u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20VideoWidgetInterfaceE)
+8 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+12 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+
+Class Phonon::VideoWidgetInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::VideoWidgetInterface (0xb57a8c6c) 0 nearly-empty
+ vptr=((& Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE) + 8u)
+
+Vtable for Phonon::MediaObjectInterface
+Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE: 25u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20MediaObjectInterfaceE)
+8 Phonon::MediaObjectInterface::~MediaObjectInterface
+12 Phonon::MediaObjectInterface::~MediaObjectInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 __cxa_pure_virtual
+76 __cxa_pure_virtual
+80 Phonon::MediaObjectInterface::remainingTime
+84 __cxa_pure_virtual
+88 __cxa_pure_virtual
+92 __cxa_pure_virtual
+96 __cxa_pure_virtual
+
+Class Phonon::MediaObjectInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::MediaObjectInterface (0xb57e50f0) 0 nearly-empty
+ vptr=((& Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE) + 8u)
+
diff --git a/tests/auto/bic/data/phonon.4.6.0.linux-gcc-amd64.txt b/tests/auto/bic/data/phonon.4.6.0.linux-gcc-amd64.txt
new file mode 100644
index 0000000..b962099
--- /dev/null
+++ b/tests/auto/bic/data/phonon.4.6.0.linux-gcc-amd64.txt
@@ -0,0 +1,1980 @@
+Class QSysInfo
+ size=1 align=1
+ base size=0 base align=1
+QSysInfo (0x7f37bb27e230) 0 empty
+
+Class QBool
+ size=1 align=1
+ base size=1 base align=1
+QBool (0x7f37bb27ee70) 0
+
+Class qIsNull(double)::U
+ size=8 align=8
+ base size=8 base align=8
+qIsNull(double)::U (0x7f37bb2a9540) 0
+
+Class qIsNull(float)::U
+ size=4 align=4
+ base size=4 base align=4
+qIsNull(float)::U (0x7f37bb2a97e0) 0
+
+Class QFlag
+ size=4 align=4
+ base size=4 base align=4
+QFlag (0x7f37ba9cb690) 0
+
+Class QIncompatibleFlag
+ size=4 align=4
+ base size=4 base align=4
+QIncompatibleFlag (0x7f37ba9cbe70) 0
+
+Class QBasicAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QBasicAtomicInt (0x7f37ba9f75b0) 0
+
+Class QAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QAtomicInt (0x7f37baa51f50) 0
+ QBasicAtomicInt (0x7f37baa67000) 0
+
+Class QSharedData
+ size=4 align=4
+ base size=4 base align=4
+QSharedData (0x7f37baa743f0) 0
+
+Class QLatin1Char
+ size=1 align=1
+ base size=1 base align=1
+QLatin1Char (0x7f37ba8fd310) 0
+
+Class QChar
+ size=2 align=2
+ base size=2 base align=2
+QChar (0x7f37ba8fde70) 0
+
+Vtable for std::exception
+std::exception::_ZTVSt9exception: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTISt9exception)
+16 std::exception::~exception
+24 std::exception::~exception
+32 std::exception::what
+
+Class std::exception
+ size=8 align=8
+ base size=8 base align=8
+std::exception (0x7f37ba978070) 0 nearly-empty
+ vptr=((& std::exception::_ZTVSt9exception) + 16u)
+
+Vtable for std::bad_exception
+std::bad_exception::_ZTVSt13bad_exception: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTISt13bad_exception)
+16 std::bad_exception::~bad_exception
+24 std::bad_exception::~bad_exception
+32 std::bad_exception::what
+
+Class std::bad_exception
+ size=8 align=8
+ base size=8 base align=8
+std::bad_exception (0x7f37ba978620) 0 nearly-empty
+ vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 16u)
+ std::exception (0x7f37ba978690) 0 nearly-empty
+ primary-for std::bad_exception (0x7f37ba978620)
+
+Vtable for std::bad_alloc
+std::bad_alloc::_ZTVSt9bad_alloc: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTISt9bad_alloc)
+16 std::bad_alloc::~bad_alloc
+24 std::bad_alloc::~bad_alloc
+32 std::bad_alloc::what
+
+Class std::bad_alloc
+ size=8 align=8
+ base size=8 base align=8
+std::bad_alloc (0x7f37ba978ee0) 0 nearly-empty
+ vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 16u)
+ std::exception (0x7f37ba978f50) 0 nearly-empty
+ primary-for std::bad_alloc (0x7f37ba978ee0)
+
+Class std::nothrow_t
+ size=1 align=1
+ base size=0 base align=1
+std::nothrow_t (0x7f37ba98d700) 0 empty
+
+Class __locale_struct
+ size=232 align=8
+ base size=232 base align=8
+__locale_struct (0x7f37ba98dbd0) 0
+
+Class QListData::Data
+ size=32 align=8
+ base size=32 base align=8
+QListData::Data (0x7f37ba98dcb0) 0
+
+Class QListData
+ size=8 align=8
+ base size=8 base align=8
+QListData (0x7f37ba98dc40) 0
+
+Class QScopedPointerPodDeleter
+ size=1 align=1
+ base size=0 base align=1
+QScopedPointerPodDeleter (0x7f37ba6cb770) 0 empty
+
+Class QInternal
+ size=1 align=1
+ base size=0 base align=1
+QInternal (0x7f37ba512540) 0 empty
+
+Class QGenericArgument
+ size=16 align=8
+ base size=16 base align=8
+QGenericArgument (0x7f37ba512850) 0
+
+Class QGenericReturnArgument
+ size=16 align=8
+ base size=16 base align=8
+QGenericReturnArgument (0x7f37ba52f3f0) 0
+ QGenericArgument (0x7f37ba52f460) 0
+
+Class QMetaObject
+ size=32 align=8
+ base size=32 base align=8
+QMetaObject (0x7f37ba52fcb0) 0
+
+Class QMetaObjectExtraData
+ size=16 align=8
+ base size=16 base align=8
+QMetaObjectExtraData (0x7f37ba558d20) 0
+
+Class QByteArray::Data
+ size=32 align=8
+ base size=32 base align=8
+QByteArray::Data (0x7f37ba56daf0) 0
+
+Class QByteArray
+ size=8 align=8
+ base size=8 base align=8
+QByteArray (0x7f37ba56da80) 0
+
+Class QByteRef
+ size=16 align=8
+ base size=12 base align=8
+QByteRef (0x7f37ba40e380) 0
+
+Class QString::Null
+ size=1 align=1
+ base size=0 base align=1
+QString::Null (0x7f37ba30ed20) 0 empty
+
+Class QString::Data
+ size=32 align=8
+ base size=32 base align=8
+QString::Data (0x7f37ba3275b0) 0
+
+Class QString
+ size=8 align=8
+ base size=8 base align=8
+QString (0x7f37ba489bd0) 0
+
+Class QLatin1String
+ size=8 align=8
+ base size=8 base align=8
+QLatin1String (0x7f37ba1fb9a0) 0
+
+Class QCharRef
+ size=16 align=8
+ base size=12 base align=8
+QCharRef (0x7f37ba0a0000) 0
+
+Class QConstString
+ size=8 align=8
+ base size=8 base align=8
+QConstString (0x7f37b9fd8850) 0
+ QString (0x7f37b9fd88c0) 0
+
+Class QStringRef
+ size=16 align=8
+ base size=16 base align=8
+QStringRef (0x7f37b9ffc2a0) 0
+
+Vtable for QObjectData
+QObjectData::_ZTV11QObjectData: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI11QObjectData)
+16 __cxa_pure_virtual
+24 __cxa_pure_virtual
+
+Class QObjectData
+ size=48 align=8
+ base size=48 base align=8
+QObjectData (0x7f37ba0795b0) 0
+ vptr=((& QObjectData::_ZTV11QObjectData) + 16u)
+
+Vtable for QObject
+QObject::_ZTV7QObject: 14u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI7QObject)
+16 QObject::metaObject
+24 QObject::qt_metacast
+32 QObject::qt_metacall
+40 QObject::~QObject
+48 QObject::~QObject
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+
+Class QObject
+ size=16 align=8
+ base size=16 base align=8
+QObject (0x7f37ba0798c0) 0
+ vptr=((& QObject::_ZTV7QObject) + 16u)
+
+Vtable for QObjectUserData
+QObjectUserData::_ZTV15QObjectUserData: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI15QObjectUserData)
+16 QObjectUserData::~QObjectUserData
+24 QObjectUserData::~QObjectUserData
+
+Class QObjectUserData
+ size=8 align=8
+ base size=8 base align=8
+QObjectUserData (0x7f37b9ef7e70) 0 nearly-empty
+ vptr=((& QObjectUserData::_ZTV15QObjectUserData) + 16u)
+
+Vtable for QIODevice
+QIODevice::_ZTV9QIODevice: 30u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI9QIODevice)
+16 QIODevice::metaObject
+24 QIODevice::qt_metacast
+32 QIODevice::qt_metacall
+40 QIODevice::~QIODevice
+48 QIODevice::~QIODevice
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QIODevice::isSequential
+120 QIODevice::open
+128 QIODevice::close
+136 QIODevice::pos
+144 QIODevice::size
+152 QIODevice::seek
+160 QIODevice::atEnd
+168 QIODevice::reset
+176 QIODevice::bytesAvailable
+184 QIODevice::bytesToWrite
+192 QIODevice::canReadLine
+200 QIODevice::waitForReadyRead
+208 QIODevice::waitForBytesWritten
+216 __cxa_pure_virtual
+224 QIODevice::readLineData
+232 __cxa_pure_virtual
+
+Class QIODevice
+ size=16 align=8
+ base size=16 base align=8
+QIODevice (0x7f37b9f05460) 0
+ vptr=((& QIODevice::_ZTV9QIODevice) + 16u)
+ QObject (0x7f37b9f054d0) 0
+ primary-for QIODevice (0x7f37b9f05460)
+
+Vtable for QDataStream
+QDataStream::_ZTV11QDataStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI11QDataStream)
+16 QDataStream::~QDataStream
+24 QDataStream::~QDataStream
+
+Class QDataStream
+ size=40 align=8
+ base size=40 base align=8
+QDataStream (0x7f37b9f6bd90) 0
+ vptr=((& QDataStream::_ZTV11QDataStream) + 16u)
+
+Class QHashData::Node
+ size=16 align=8
+ base size=16 base align=8
+QHashData::Node (0x7f37b9e00e70) 0
+
+Class QHashData
+ size=40 align=8
+ base size=40 base align=8
+QHashData (0x7f37b9e00e00) 0
+
+Class QHashDummyValue
+ size=1 align=1
+ base size=0 base align=1
+QHashDummyValue (0x7f37b9e211c0) 0 empty
+
+Class QMapData::Node
+ size=16 align=8
+ base size=16 base align=8
+QMapData::Node (0x7f37b9d24af0) 0
+
+Class QMapData
+ size=128 align=8
+ base size=128 base align=8
+QMapData (0x7f37b9d24a80) 0
+
+Vtable for QSystemLocale
+QSystemLocale::_ZTV13QSystemLocale: 6u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI13QSystemLocale)
+16 QSystemLocale::~QSystemLocale
+24 QSystemLocale::~QSystemLocale
+32 QSystemLocale::query
+40 QSystemLocale::fallbackLocale
+
+Class QSystemLocale
+ size=8 align=8
+ base size=8 base align=8
+QSystemLocale (0x7f37b9c5e700) 0 nearly-empty
+ vptr=((& QSystemLocale::_ZTV13QSystemLocale) + 16u)
+
+Class QLocale::Data
+ size=4 align=2
+ base size=4 base align=2
+QLocale::Data (0x7f37b9aabe00) 0
+
+Class QLocale
+ size=8 align=8
+ base size=8 base align=8
+QLocale (0x7f37b9c5eb60) 0
+
+Class QTextCodec::ConverterState
+ size=32 align=8
+ base size=32 base align=8
+QTextCodec::ConverterState (0x7f37b9affc40) 0
+
+Vtable for QTextCodec
+QTextCodec::_ZTV10QTextCodec: 9u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI10QTextCodec)
+16 __cxa_pure_virtual
+24 QTextCodec::aliases
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 QTextCodec::~QTextCodec
+64 QTextCodec::~QTextCodec
+
+Class QTextCodec
+ size=8 align=8
+ base size=8 base align=8
+QTextCodec (0x7f37b9af04d0) 0 nearly-empty
+ vptr=((& QTextCodec::_ZTV10QTextCodec) + 16u)
+
+Class QTextEncoder
+ size=40 align=8
+ base size=40 base align=8
+QTextEncoder (0x7f37b9b6c1c0) 0
+
+Class QTextDecoder
+ size=40 align=8
+ base size=40 base align=8
+QTextDecoder (0x7f37b9b73000) 0
+
+Class _IO_marker
+ size=24 align=8
+ base size=24 base align=8
+_IO_marker (0x7f37b9985070) 0
+
+Class _IO_FILE
+ size=216 align=8
+ base size=216 base align=8
+_IO_FILE (0x7f37b99850e0) 0
+
+Vtable for QTextStream
+QTextStream::_ZTV11QTextStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI11QTextStream)
+16 QTextStream::~QTextStream
+24 QTextStream::~QTextStream
+
+Class QTextStream
+ size=16 align=8
+ base size=16 base align=8
+QTextStream (0x7f37b99851c0) 0
+ vptr=((& QTextStream::_ZTV11QTextStream) + 16u)
+
+Class QTextStreamManipulator
+ size=40 align=8
+ base size=38 base align=8
+QTextStreamManipulator (0x7f37b9a22e70) 0
+
+Vtable for QTextIStream
+QTextIStream::_ZTV12QTextIStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI12QTextIStream)
+16 QTextIStream::~QTextIStream
+24 QTextIStream::~QTextIStream
+
+Class QTextIStream
+ size=16 align=8
+ base size=16 base align=8
+QTextIStream (0x7f37b9a50460) 0
+ vptr=((& QTextIStream::_ZTV12QTextIStream) + 16u)
+ QTextStream (0x7f37b9a504d0) 0
+ primary-for QTextIStream (0x7f37b9a50460)
+
+Vtable for QTextOStream
+QTextOStream::_ZTV12QTextOStream: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI12QTextOStream)
+16 QTextOStream::~QTextOStream
+24 QTextOStream::~QTextOStream
+
+Class QTextOStream
+ size=16 align=8
+ base size=16 base align=8
+QTextOStream (0x7f37b9a66310) 0
+ vptr=((& QTextOStream::_ZTV12QTextOStream) + 16u)
+ QTextStream (0x7f37b9a66380) 0
+ primary-for QTextOStream (0x7f37b9a66310)
+
+Class wait
+ size=4 align=4
+ base size=4 base align=4
+wait (0x7f37b9a781c0) 0
+
+Class timespec
+ size=16 align=8
+ base size=16 base align=8
+timespec (0x7f37b9a784d0) 0
+
+Class timeval
+ size=16 align=8
+ base size=16 base align=8
+timeval (0x7f37b9a78540) 0
+
+Class __pthread_internal_list
+ size=16 align=8
+ base size=16 base align=8
+__pthread_internal_list (0x7f37b9a78690) 0
+
+Class random_data
+ size=48 align=8
+ base size=48 base align=8
+random_data (0x7f37b9a78c40) 0
+
+Class drand48_data
+ size=24 align=8
+ base size=24 base align=8
+drand48_data (0x7f37b9a78cb0) 0
+
+Class QVectorData
+ size=16 align=4
+ base size=16 base align=4
+QVectorData (0x7f37b9a78d20) 0
+
+Class QContiguousCacheData
+ size=24 align=4
+ base size=24 base align=4
+QContiguousCacheData (0x7f37b982ea10) 0
+
+Class QDebug::Stream
+ size=40 align=8
+ base size=34 base align=8
+QDebug::Stream (0x7f37b96af540) 0
+
+Class QDebug
+ size=8 align=8
+ base size=8 base align=8
+QDebug (0x7f37b96af4d0) 0
+
+Class QNoDebug
+ size=1 align=1
+ base size=0 base align=1
+QNoDebug (0x7f37b97614d0) 0 empty
+
+Class QMetaType
+ size=1 align=1
+ base size=0 base align=1
+QMetaType (0x7f37b9771b60) 0 empty
+
+Class QVariant::PrivateShared
+ size=16 align=8
+ base size=12 base align=8
+QVariant::PrivateShared (0x7f37b967b3f0) 0
+
+Class QVariant::Private::Data
+ size=8 align=8
+ base size=8 base align=8
+QVariant::Private::Data (0x7f37b967b700) 0
+
+Class QVariant::Private
+ size=16 align=8
+ base size=12 base align=8
+QVariant::Private (0x7f37b967b4d0) 0
+
+Class QVariant::Handler
+ size=72 align=8
+ base size=72 base align=8
+QVariant::Handler (0x7f37b94863f0) 0
+
+Class QVariant
+ size=16 align=8
+ base size=16 base align=8
+QVariant (0x7f37b964e4d0) 0
+
+Class QVariantComparisonHelper
+ size=8 align=8
+ base size=8 base align=8
+QVariantComparisonHelper (0x7f37b9541690) 0
+
+Class Phonon::ObjectDescriptionData
+ size=16 align=8
+ base size=16 base align=8
+Phonon::ObjectDescriptionData (0x7f37b9568bd0) 0
+ QSharedData (0x7f37b9568c40) 0
+
+Class Phonon::Path
+ size=8 align=8
+ base size=8 base align=8
+Phonon::Path (0x7f37b93c0930) 0
+
+Vtable for Phonon::MediaNode
+Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon9MediaNodeE)
+16 Phonon::MediaNode::~MediaNode
+24 Phonon::MediaNode::~MediaNode
+
+Class Phonon::MediaNode
+ size=16 align=8
+ base size=16 base align=8
+Phonon::MediaNode (0x7f37b93da150) 0
+ vptr=((& Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE) + 16u)
+
+Vtable for Phonon::AbstractAudioOutput
+Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+16 Phonon::AbstractAudioOutput::metaObject
+24 Phonon::AbstractAudioOutput::qt_metacast
+32 Phonon::AbstractAudioOutput::qt_metacall
+40 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+48 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+128 Phonon::AbstractAudioOutput::_ZThn16_N6Phonon19AbstractAudioOutputD1Ev
+136 Phonon::AbstractAudioOutput::_ZThn16_N6Phonon19AbstractAudioOutputD0Ev
+
+Class Phonon::AbstractAudioOutput
+ size=32 align=8
+ base size=32 base align=8
+Phonon::AbstractAudioOutput (0x7f37b93f0100) 0
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 16u)
+ QObject (0x7f37b93da8c0) 0
+ primary-for Phonon::AbstractAudioOutput (0x7f37b93f0100)
+ Phonon::MediaNode (0x7f37b93da930) 16
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 128u)
+
+Vtable for Phonon::AbstractMediaStream
+Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19AbstractMediaStreamE)
+16 Phonon::AbstractMediaStream::metaObject
+24 Phonon::AbstractMediaStream::qt_metacast
+32 Phonon::AbstractMediaStream::qt_metacall
+40 Phonon::AbstractMediaStream::~AbstractMediaStream
+48 Phonon::AbstractMediaStream::~AbstractMediaStream
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 Phonon::AbstractMediaStream::enoughData
+136 Phonon::AbstractMediaStream::seekStream
+
+Class Phonon::AbstractMediaStream
+ size=24 align=8
+ base size=24 base align=8
+Phonon::AbstractMediaStream (0x7f37b9414540) 0
+ vptr=((& Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE) + 16u)
+ QObject (0x7f37b94145b0) 0
+ primary-for Phonon::AbstractMediaStream (0x7f37b9414540)
+
+Vtable for Phonon::AbstractVideoOutput
+Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE: 4u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19AbstractVideoOutputE)
+16 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+24 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+
+Class Phonon::AbstractVideoOutput
+ size=16 align=8
+ base size=16 base align=8
+Phonon::AbstractVideoOutput (0x7f37b9437b60) 0
+ vptr=((& Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE) + 16u)
+ Phonon::MediaNode (0x7f37b9437bd0) 0
+ primary-for Phonon::AbstractVideoOutput (0x7f37b9437b60)
+
+Vtable for Phonon::AddonInterface
+Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE: 6u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon14AddonInterfaceE)
+16 Phonon::AddonInterface::~AddonInterface
+24 Phonon::AddonInterface::~AddonInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+
+Class Phonon::AddonInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::AddonInterface (0x7f37b9442230) 0 nearly-empty
+ vptr=((& Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE) + 16u)
+
+Vtable for Phonon::AudioOutput
+Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+16 Phonon::AudioOutput::metaObject
+24 Phonon::AudioOutput::qt_metacast
+32 Phonon::AudioOutput::qt_metacall
+40 Phonon::AudioOutput::~AudioOutput
+48 Phonon::AudioOutput::~AudioOutput
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+128 Phonon::AudioOutput::_ZThn16_N6Phonon11AudioOutputD1Ev
+136 Phonon::AudioOutput::_ZThn16_N6Phonon11AudioOutputD0Ev
+
+Class Phonon::AudioOutput
+ size=32 align=8
+ base size=32 base align=8
+Phonon::AudioOutput (0x7f37b945d620) 0
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 16u)
+ Phonon::AbstractAudioOutput (0x7f37b9456f00) 0
+ primary-for Phonon::AudioOutput (0x7f37b945d620)
+ QObject (0x7f37b945d690) 0
+ primary-for Phonon::AbstractAudioOutput (0x7f37b9456f00)
+ Phonon::MediaNode (0x7f37b945d700) 16
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 128u)
+
+Vtable for Phonon::AudioOutputInterface40
+Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E: 8u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface40E)
+16 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+24 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface40
+ size=8 align=8
+ base size=8 base align=8
+Phonon::AudioOutputInterface40 (0x7f37b9254b60) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E) + 16u)
+
+Vtable for Phonon::AudioOutputInterface42
+Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E: 9u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface42E)
+16 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+24 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface42
+ size=8 align=8
+ base size=8 base align=8
+Phonon::AudioOutputInterface42 (0x7f37b925e540) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E) + 16u)
+ Phonon::AudioOutputInterface40 (0x7f37b925e5b0) 0 nearly-empty
+ primary-for Phonon::AudioOutputInterface42 (0x7f37b925e540)
+
+Vtable for Phonon::BackendCapabilities::Notifier
+Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE: 14u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon19BackendCapabilities8NotifierE)
+16 Phonon::BackendCapabilities::Notifier::metaObject
+24 Phonon::BackendCapabilities::Notifier::qt_metacast
+32 Phonon::BackendCapabilities::Notifier::qt_metacall
+40 Phonon::BackendCapabilities::Notifier::~Notifier
+48 Phonon::BackendCapabilities::Notifier::~Notifier
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+
+Class Phonon::BackendCapabilities::Notifier
+ size=16 align=8
+ base size=16 base align=8
+Phonon::BackendCapabilities::Notifier (0x7f37b926f7e0) 0
+ vptr=((& Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE) + 16u)
+ QObject (0x7f37b926f850) 0
+ primary-for Phonon::BackendCapabilities::Notifier (0x7f37b926f7e0)
+
+Vtable for Phonon::BackendInterface
+Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE: 12u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon16BackendInterfaceE)
+16 Phonon::BackendInterface::~BackendInterface
+24 Phonon::BackendInterface::~BackendInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+
+Class Phonon::BackendInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::BackendInterface (0x7f37b927f540) 0 nearly-empty
+ vptr=((& Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE) + 16u)
+
+Vtable for Phonon::Effect
+Phonon::Effect::_ZTVN6Phonon6EffectE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+16 Phonon::Effect::metaObject
+24 Phonon::Effect::qt_metacast
+32 Phonon::Effect::qt_metacall
+40 Phonon::Effect::~Effect
+48 Phonon::Effect::~Effect
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+128 Phonon::Effect::_ZThn16_N6Phonon6EffectD1Ev
+136 Phonon::Effect::_ZThn16_N6Phonon6EffectD0Ev
+
+Class Phonon::Effect
+ size=32 align=8
+ base size=32 base align=8
+Phonon::Effect (0x7f37b9291c00) 0
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 16u)
+ QObject (0x7f37b9292930) 0
+ primary-for Phonon::Effect (0x7f37b9291c00)
+ Phonon::MediaNode (0x7f37b92929a0) 16
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 128u)
+
+Vtable for Phonon::EffectInterface
+Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon15EffectInterfaceE)
+16 Phonon::EffectInterface::~EffectInterface
+24 Phonon::EffectInterface::~EffectInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+
+Class Phonon::EffectInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::EffectInterface (0x7f37b92a5e00) 0 nearly-empty
+ vptr=((& Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE) + 16u)
+
+Class Phonon::EffectParameter
+ size=8 align=8
+ base size=8 base align=8
+Phonon::EffectParameter (0x7f37b92bd070) 0
+
+Class QMargins
+ size=16 align=4
+ base size=16 base align=4
+QMargins (0x7f37b92ecc40) 0
+
+Class QSize
+ size=8 align=4
+ base size=8 base align=4
+QSize (0x7f37b9318690) 0
+
+Class QSizeF
+ size=16 align=8
+ base size=16 base align=8
+QSizeF (0x7f37b9164380) 0
+
+Class QPoint
+ size=8 align=4
+ base size=8 base align=4
+QPoint (0x7f37b91ad8c0) 0
+
+Class QPointF
+ size=16 align=8
+ base size=16 base align=8
+QPointF (0x7f37b91e6540) 0
+
+Class QRect
+ size=16 align=4
+ base size=16 base align=4
+QRect (0x7f37b9225540) 0
+
+Class QRectF
+ size=32 align=8
+ base size=32 base align=8
+QRectF (0x7f37b90d2ee0) 0
+
+Vtable for QPaintDevice
+QPaintDevice::_ZTV12QPaintDevice: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI12QPaintDevice)
+16 QPaintDevice::~QPaintDevice
+24 QPaintDevice::~QPaintDevice
+32 QPaintDevice::devType
+40 __cxa_pure_virtual
+48 QPaintDevice::metric
+
+Class QPaintDevice
+ size=16 align=8
+ base size=10 base align=8
+QPaintDevice (0x7f37b8f7dd20) 0
+ vptr=((& QPaintDevice::_ZTV12QPaintDevice) + 16u)
+
+Class QRegExp
+ size=8 align=8
+ base size=8 base align=8
+QRegExp (0x7f37b8fb1620) 0
+
+Class QStringMatcher::Data
+ size=272 align=8
+ base size=272 base align=8
+QStringMatcher::Data (0x7f37b8fe1a10) 0
+
+Class QStringMatcher
+ size=1048 align=8
+ base size=1048 base align=8
+QStringMatcher (0x7f37b8fe13f0) 0
+
+Class QStringList
+ size=8 align=8
+ base size=8 base align=8
+QStringList (0x7f37b9016000) 0
+ QList<QString> (0x7f37b9016070) 0
+
+Class QColor
+ size=16 align=4
+ base size=14 base align=4
+QColor (0x7f37b8e84c40) 0
+
+Class QPolygon
+ size=8 align=8
+ base size=8 base align=8
+QPolygon (0x7f37b8ee5460) 0
+ QVector<QPoint> (0x7f37b8ee54d0) 0
+
+Class QPolygonF
+ size=8 align=8
+ base size=8 base align=8
+QPolygonF (0x7f37b8f289a0) 0
+ QVector<QPointF> (0x7f37b8f28a10) 0
+
+Class QRegion::QRegionData
+ size=32 align=8
+ base size=32 base align=8
+QRegion::QRegionData (0x7f37b8d84380) 0
+
+Class QRegion
+ size=8 align=8
+ base size=8 base align=8
+QRegion (0x7f37b8d64af0) 0
+
+Class QLine
+ size=16 align=4
+ base size=16 base align=4
+QLine (0x7f37b8d96c40) 0
+
+Class QLineF
+ size=32 align=8
+ base size=32 base align=8
+QLineF (0x7f37b8dd4af0) 0
+
+Class QMatrix
+ size=48 align=8
+ base size=48 base align=8
+QMatrix (0x7f37b8e305b0) 0
+
+Class QPainterPath::Element
+ size=24 align=8
+ base size=24 base align=8
+QPainterPath::Element (0x7f37b8c37700) 0
+
+Class QPainterPath
+ size=8 align=8
+ base size=8 base align=8
+QPainterPath (0x7f37b8c37690) 0
+
+Class QPainterPathPrivate
+ size=16 align=8
+ base size=16 base align=8
+QPainterPathPrivate (0x7f37b8c86e00) 0
+
+Class QPainterPathStroker
+ size=8 align=8
+ base size=8 base align=8
+QPainterPathStroker (0x7f37b8c8f930) 0
+
+Class QTransform
+ size=88 align=8
+ base size=88 base align=8
+QTransform (0x7f37b8cfc930) 0
+
+Class QImageTextKeyLang
+ size=16 align=8
+ base size=16 base align=8
+QImageTextKeyLang (0x7f37b8b9df50) 0
+
+Vtable for QImage
+QImage::_ZTV6QImage: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI6QImage)
+16 QImage::~QImage
+24 QImage::~QImage
+32 QImage::devType
+40 QImage::paintEngine
+48 QImage::metric
+
+Class QImage
+ size=24 align=8
+ base size=24 base align=8
+QImage (0x7f37b8bd07e0) 0
+ vptr=((& QImage::_ZTV6QImage) + 16u)
+ QPaintDevice (0x7f37b8bd0850) 0
+ primary-for QImage (0x7f37b8bd07e0)
+
+Vtable for QtSharedPointer::ExternalRefCountData
+QtSharedPointer::ExternalRefCountData::_ZTVN15QtSharedPointer20ExternalRefCountDataE: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN15QtSharedPointer20ExternalRefCountDataE)
+16 QtSharedPointer::ExternalRefCountData::~ExternalRefCountData
+24 QtSharedPointer::ExternalRefCountData::~ExternalRefCountData
+32 QtSharedPointer::ExternalRefCountData::destroy
+
+Class QtSharedPointer::ExternalRefCountData
+ size=16 align=8
+ base size=16 base align=8
+QtSharedPointer::ExternalRefCountData (0x7f37b8a807e0) 0
+ vptr=((& QtSharedPointer::ExternalRefCountData::_ZTVN15QtSharedPointer20ExternalRefCountDataE) + 16u)
+
+Vtable for QtSharedPointer::ExternalRefCountWithDestroyFn
+QtSharedPointer::ExternalRefCountWithDestroyFn::_ZTVN15QtSharedPointer29ExternalRefCountWithDestroyFnE: 5u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN15QtSharedPointer29ExternalRefCountWithDestroyFnE)
+16 QtSharedPointer::ExternalRefCountWithDestroyFn::~ExternalRefCountWithDestroyFn
+24 QtSharedPointer::ExternalRefCountWithDestroyFn::~ExternalRefCountWithDestroyFn
+32 QtSharedPointer::ExternalRefCountWithDestroyFn::destroy
+
+Class QtSharedPointer::ExternalRefCountWithDestroyFn
+ size=24 align=8
+ base size=24 base align=8
+QtSharedPointer::ExternalRefCountWithDestroyFn (0x7f37b8aab0e0) 0
+ vptr=((& QtSharedPointer::ExternalRefCountWithDestroyFn::_ZTVN15QtSharedPointer29ExternalRefCountWithDestroyFnE) + 16u)
+ QtSharedPointer::ExternalRefCountData (0x7f37b8aab150) 0
+ primary-for QtSharedPointer::ExternalRefCountWithDestroyFn (0x7f37b8aab0e0)
+
+Vtable for QPixmap
+QPixmap::_ZTV7QPixmap: 7u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI7QPixmap)
+16 QPixmap::~QPixmap
+24 QPixmap::~QPixmap
+32 QPixmap::devType
+40 QPixmap::paintEngine
+48 QPixmap::metric
+
+Class QPixmap
+ size=24 align=8
+ base size=24 base align=8
+QPixmap (0x7f37b8921d20) 0
+ vptr=((& QPixmap::_ZTV7QPixmap) + 16u)
+ QPaintDevice (0x7f37b8921d90) 0
+ primary-for QPixmap (0x7f37b8921d20)
+
+Class QBrush
+ size=8 align=8
+ base size=8 base align=8
+QBrush (0x7f37b89a3070) 0
+
+Class QBrushData
+ size=112 align=8
+ base size=112 base align=8
+QBrushData (0x7f37b89c1a80) 0
+
+Class QGradient
+ size=64 align=8
+ base size=64 base align=8
+QGradient (0x7f37b89cfc40) 0
+
+Class QLinearGradient
+ size=64 align=8
+ base size=64 base align=8
+QLinearGradient (0x7f37b8810700) 0
+ QGradient (0x7f37b8810770) 0
+
+Class QRadialGradient
+ size=64 align=8
+ base size=64 base align=8
+QRadialGradient (0x7f37b8810bd0) 0
+ QGradient (0x7f37b8810c40) 0
+
+Class QConicalGradient
+ size=64 align=8
+ base size=64 base align=8
+QConicalGradient (0x7f37b88221c0) 0
+ QGradient (0x7f37b8822230) 0
+
+Class QPalette
+ size=16 align=8
+ base size=12 base align=8
+QPalette (0x7f37b8822540) 0
+
+Class QColorGroup
+ size=16 align=8
+ base size=12 base align=8
+QColorGroup (0x7f37b886ee70) 0
+ QPalette (0x7f37b886eee0) 0
+
+Class QFont
+ size=16 align=8
+ base size=12 base align=8
+QFont (0x7f37b88b11c0) 0
+
+Class QFontMetrics
+ size=8 align=8
+ base size=8 base align=8
+QFontMetrics (0x7f37b88f2e70) 0
+
+Class QFontMetricsF
+ size=8 align=8
+ base size=8 base align=8
+QFontMetricsF (0x7f37b8710310) 0
+
+Class QFontInfo
+ size=8 align=8
+ base size=8 base align=8
+QFontInfo (0x7f37b8722230) 0
+
+Class QSizePolicy
+ size=4 align=4
+ base size=4 base align=4
+QSizePolicy (0x7f37b8722d20) 0
+
+Class QCursor
+ size=8 align=8
+ base size=8 base align=8
+QCursor (0x7f37b87dad20) 0
+
+Class QKeySequence
+ size=8 align=8
+ base size=8 base align=8
+QKeySequence (0x7f37b87e1540) 0
+
+Class QWidgetData
+ size=88 align=8
+ base size=88 base align=8
+QWidgetData (0x7f37b8801e70) 0
+
+Vtable for QWidget
+QWidget::_ZTV7QWidget: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI7QWidget)
+16 QWidget::metaObject
+24 QWidget::qt_metacast
+32 QWidget::qt_metacall
+40 QWidget::~QWidget
+48 QWidget::~QWidget
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTI7QWidget)
+464 QWidget::_ZThn16_N7QWidgetD1Ev
+472 QWidget::_ZThn16_N7QWidgetD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class QWidget
+ size=40 align=8
+ base size=40 base align=8
+QWidget (0x7f37b8611f00) 0
+ vptr=((& QWidget::_ZTV7QWidget) + 16u)
+ QObject (0x7f37b8801ee0) 0
+ primary-for QWidget (0x7f37b8611f00)
+ QPaintDevice (0x7f37b8801f50) 16
+ vptr=((& QWidget::_ZTV7QWidget) + 464u)
+
+Vtable for Phonon::EffectWidget
+Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+16 Phonon::EffectWidget::metaObject
+24 Phonon::EffectWidget::qt_metacast
+32 Phonon::EffectWidget::qt_metacall
+40 Phonon::EffectWidget::~EffectWidget
+48 Phonon::EffectWidget::~EffectWidget
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+464 Phonon::EffectWidget::_ZThn16_N6Phonon12EffectWidgetD1Ev
+472 Phonon::EffectWidget::_ZThn16_N6Phonon12EffectWidgetD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::EffectWidget
+ size=48 align=8
+ base size=48 base align=8
+Phonon::EffectWidget (0x7f37b8581f50) 0
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 16u)
+ QWidget (0x7f37b8583b80) 0
+ primary-for Phonon::EffectWidget (0x7f37b8581f50)
+ QObject (0x7f37b858b000) 0
+ primary-for QWidget (0x7f37b8583b80)
+ QPaintDevice (0x7f37b858b070) 16
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 464u)
+
+Vtable for Phonon::MediaController
+Phonon::MediaController::_ZTVN6Phonon15MediaControllerE: 14u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon15MediaControllerE)
+16 Phonon::MediaController::metaObject
+24 Phonon::MediaController::qt_metacast
+32 Phonon::MediaController::qt_metacall
+40 Phonon::MediaController::~MediaController
+48 Phonon::MediaController::~MediaController
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+
+Class Phonon::MediaController
+ size=24 align=8
+ base size=24 base align=8
+Phonon::MediaController (0x7f37b85a0310) 0
+ vptr=((& Phonon::MediaController::_ZTVN6Phonon15MediaControllerE) + 16u)
+ QObject (0x7f37b85a0380) 0
+ primary-for Phonon::MediaController (0x7f37b85a0310)
+
+Class Phonon::MediaSource
+ size=8 align=8
+ base size=8 base align=8
+Phonon::MediaSource (0x7f37b85e1230) 0
+
+Vtable for Phonon::MediaObject
+Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+16 Phonon::MediaObject::metaObject
+24 Phonon::MediaObject::qt_metacast
+32 Phonon::MediaObject::qt_metacall
+40 Phonon::MediaObject::~MediaObject
+48 Phonon::MediaObject::~MediaObject
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+128 Phonon::MediaObject::_ZThn16_N6Phonon11MediaObjectD1Ev
+136 Phonon::MediaObject::_ZThn16_N6Phonon11MediaObjectD0Ev
+
+Class Phonon::MediaObject
+ size=32 align=8
+ base size=32 base align=8
+Phonon::MediaObject (0x7f37b85df600) 0
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 16u)
+ QObject (0x7f37b85e1d90) 0
+ primary-for Phonon::MediaObject (0x7f37b85df600)
+ Phonon::MediaNode (0x7f37b85e1e00) 16
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 128u)
+
+Vtable for Phonon::MediaObjectInterface
+Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE: 25u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon20MediaObjectInterfaceE)
+16 Phonon::MediaObjectInterface::~MediaObjectInterface
+24 Phonon::MediaObjectInterface::~MediaObjectInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+96 __cxa_pure_virtual
+104 __cxa_pure_virtual
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 __cxa_pure_virtual
+136 __cxa_pure_virtual
+144 __cxa_pure_virtual
+152 __cxa_pure_virtual
+160 Phonon::MediaObjectInterface::remainingTime
+168 __cxa_pure_virtual
+176 __cxa_pure_virtual
+184 __cxa_pure_virtual
+192 __cxa_pure_virtual
+
+Class Phonon::MediaObjectInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::MediaObjectInterface (0x7f37b8419310) 0 nearly-empty
+ vptr=((& Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE) + 16u)
+
+Class QModelIndex
+ size=24 align=8
+ base size=24 base align=8
+QModelIndex (0x7f37b842ab60) 0
+
+Class QPersistentModelIndex
+ size=8 align=8
+ base size=8 base align=8
+QPersistentModelIndex (0x7f37b845a620) 0
+
+Vtable for QAbstractItemModel
+QAbstractItemModel::_ZTV18QAbstractItemModel: 42u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI18QAbstractItemModel)
+16 QAbstractItemModel::metaObject
+24 QAbstractItemModel::qt_metacast
+32 QAbstractItemModel::qt_metacall
+40 QAbstractItemModel::~QAbstractItemModel
+48 QAbstractItemModel::~QAbstractItemModel
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 __cxa_pure_virtual
+136 __cxa_pure_virtual
+144 QAbstractItemModel::hasChildren
+152 __cxa_pure_virtual
+160 QAbstractItemModel::setData
+168 QAbstractItemModel::headerData
+176 QAbstractItemModel::setHeaderData
+184 QAbstractItemModel::itemData
+192 QAbstractItemModel::setItemData
+200 QAbstractItemModel::mimeTypes
+208 QAbstractItemModel::mimeData
+216 QAbstractItemModel::dropMimeData
+224 QAbstractItemModel::supportedDropActions
+232 QAbstractItemModel::insertRows
+240 QAbstractItemModel::insertColumns
+248 QAbstractItemModel::removeRows
+256 QAbstractItemModel::removeColumns
+264 QAbstractItemModel::fetchMore
+272 QAbstractItemModel::canFetchMore
+280 QAbstractItemModel::flags
+288 QAbstractItemModel::sort
+296 QAbstractItemModel::buddy
+304 QAbstractItemModel::match
+312 QAbstractItemModel::span
+320 QAbstractItemModel::submit
+328 QAbstractItemModel::revert
+
+Class QAbstractItemModel
+ size=16 align=8
+ base size=16 base align=8
+QAbstractItemModel (0x7f37b8464930) 0
+ vptr=((& QAbstractItemModel::_ZTV18QAbstractItemModel) + 16u)
+ QObject (0x7f37b84649a0) 0
+ primary-for QAbstractItemModel (0x7f37b8464930)
+
+Vtable for QAbstractTableModel
+QAbstractTableModel::_ZTV19QAbstractTableModel: 42u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI19QAbstractTableModel)
+16 QAbstractTableModel::metaObject
+24 QAbstractTableModel::qt_metacast
+32 QAbstractTableModel::qt_metacall
+40 QAbstractTableModel::~QAbstractTableModel
+48 QAbstractTableModel::~QAbstractTableModel
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QAbstractTableModel::index
+120 QAbstractTableModel::parent
+128 __cxa_pure_virtual
+136 __cxa_pure_virtual
+144 QAbstractTableModel::hasChildren
+152 __cxa_pure_virtual
+160 QAbstractItemModel::setData
+168 QAbstractItemModel::headerData
+176 QAbstractItemModel::setHeaderData
+184 QAbstractItemModel::itemData
+192 QAbstractItemModel::setItemData
+200 QAbstractItemModel::mimeTypes
+208 QAbstractItemModel::mimeData
+216 QAbstractTableModel::dropMimeData
+224 QAbstractItemModel::supportedDropActions
+232 QAbstractItemModel::insertRows
+240 QAbstractItemModel::insertColumns
+248 QAbstractItemModel::removeRows
+256 QAbstractItemModel::removeColumns
+264 QAbstractItemModel::fetchMore
+272 QAbstractItemModel::canFetchMore
+280 QAbstractItemModel::flags
+288 QAbstractItemModel::sort
+296 QAbstractItemModel::buddy
+304 QAbstractItemModel::match
+312 QAbstractItemModel::span
+320 QAbstractItemModel::submit
+328 QAbstractItemModel::revert
+
+Class QAbstractTableModel
+ size=16 align=8
+ base size=16 base align=8
+QAbstractTableModel (0x7f37b84bdc40) 0
+ vptr=((& QAbstractTableModel::_ZTV19QAbstractTableModel) + 16u)
+ QAbstractItemModel (0x7f37b84bdcb0) 0
+ primary-for QAbstractTableModel (0x7f37b84bdc40)
+ QObject (0x7f37b84bdd20) 0
+ primary-for QAbstractItemModel (0x7f37b84bdcb0)
+
+Vtable for QAbstractListModel
+QAbstractListModel::_ZTV18QAbstractListModel: 42u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTI18QAbstractListModel)
+16 QAbstractListModel::metaObject
+24 QAbstractListModel::qt_metacast
+32 QAbstractListModel::qt_metacall
+40 QAbstractListModel::~QAbstractListModel
+48 QAbstractListModel::~QAbstractListModel
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QAbstractListModel::index
+120 QAbstractListModel::parent
+128 __cxa_pure_virtual
+136 QAbstractListModel::columnCount
+144 QAbstractListModel::hasChildren
+152 __cxa_pure_virtual
+160 QAbstractItemModel::setData
+168 QAbstractItemModel::headerData
+176 QAbstractItemModel::setHeaderData
+184 QAbstractItemModel::itemData
+192 QAbstractItemModel::setItemData
+200 QAbstractItemModel::mimeTypes
+208 QAbstractItemModel::mimeData
+216 QAbstractListModel::dropMimeData
+224 QAbstractItemModel::supportedDropActions
+232 QAbstractItemModel::insertRows
+240 QAbstractItemModel::insertColumns
+248 QAbstractItemModel::removeRows
+256 QAbstractItemModel::removeColumns
+264 QAbstractItemModel::fetchMore
+272 QAbstractItemModel::canFetchMore
+280 QAbstractItemModel::flags
+288 QAbstractItemModel::sort
+296 QAbstractItemModel::buddy
+304 QAbstractItemModel::match
+312 QAbstractItemModel::span
+320 QAbstractItemModel::submit
+328 QAbstractItemModel::revert
+
+Class QAbstractListModel
+ size=16 align=8
+ base size=16 base align=8
+QAbstractListModel (0x7f37b84d91c0) 0
+ vptr=((& QAbstractListModel::_ZTV18QAbstractListModel) + 16u)
+ QAbstractItemModel (0x7f37b84d9230) 0
+ primary-for QAbstractListModel (0x7f37b84d91c0)
+ QObject (0x7f37b84d92a0) 0
+ primary-for QAbstractItemModel (0x7f37b84d9230)
+
+Class Phonon::ObjectDescriptionModelData
+ size=8 align=8
+ base size=8 base align=8
+Phonon::ObjectDescriptionModelData (0x7f37b830c310) 0
+
+Vtable for Phonon::PlatformPlugin
+Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE: 16u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon14PlatformPluginE)
+16 Phonon::PlatformPlugin::~PlatformPlugin
+24 Phonon::PlatformPlugin::~PlatformPlugin
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+96 __cxa_pure_virtual
+104 __cxa_pure_virtual
+112 __cxa_pure_virtual
+120 Phonon::PlatformPlugin::deviceAccessListFor
+
+Class Phonon::PlatformPlugin
+ size=8 align=8
+ base size=8 base align=8
+Phonon::PlatformPlugin (0x7f37b83762a0) 0 nearly-empty
+ vptr=((& Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE) + 16u)
+
+Vtable for Phonon::SeekSlider
+Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+16 Phonon::SeekSlider::metaObject
+24 Phonon::SeekSlider::qt_metacast
+32 Phonon::SeekSlider::qt_metacall
+40 Phonon::SeekSlider::~SeekSlider
+48 Phonon::SeekSlider::~SeekSlider
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+464 Phonon::SeekSlider::_ZThn16_N6Phonon10SeekSliderD1Ev
+472 Phonon::SeekSlider::_ZThn16_N6Phonon10SeekSliderD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::SeekSlider
+ size=48 align=8
+ base size=48 base align=8
+Phonon::SeekSlider (0x7f37b83ad8c0) 0
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 16u)
+ QWidget (0x7f37b8388e00) 0
+ primary-for Phonon::SeekSlider (0x7f37b83ad8c0)
+ QObject (0x7f37b83ad930) 0
+ primary-for QWidget (0x7f37b8388e00)
+ QPaintDevice (0x7f37b83ad9a0) 16
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 464u)
+
+Vtable for Phonon::StreamInterface
+Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE: 8u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon15StreamInterfaceE)
+16 Phonon::StreamInterface::~StreamInterface
+24 Phonon::StreamInterface::~StreamInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+
+Class Phonon::StreamInterface
+ size=16 align=8
+ base size=16 base align=8
+Phonon::StreamInterface (0x7f37b83c9d90) 0
+ vptr=((& Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE) + 16u)
+
+Vtable for Phonon::VideoPlayer
+Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+16 Phonon::VideoPlayer::metaObject
+24 Phonon::VideoPlayer::qt_metacast
+32 Phonon::VideoPlayer::qt_metacall
+40 Phonon::VideoPlayer::~VideoPlayer
+48 Phonon::VideoPlayer::~VideoPlayer
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+464 Phonon::VideoPlayer::_ZThn16_N6Phonon11VideoPlayerD1Ev
+472 Phonon::VideoPlayer::_ZThn16_N6Phonon11VideoPlayerD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VideoPlayer
+ size=48 align=8
+ base size=48 base align=8
+Phonon::VideoPlayer (0x7f37b83d87e0) 0
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 16u)
+ QWidget (0x7f37b83dd080) 0
+ primary-for Phonon::VideoPlayer (0x7f37b83d87e0)
+ QObject (0x7f37b83d8850) 0
+ primary-for QWidget (0x7f37b83dd080)
+ QPaintDevice (0x7f37b83d88c0) 16
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 464u)
+
+Vtable for Phonon::VideoWidget
+Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE: 67u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+16 Phonon::VideoWidget::metaObject
+24 Phonon::VideoWidget::qt_metacast
+32 Phonon::VideoWidget::qt_metacall
+40 Phonon::VideoWidget::~VideoWidget
+48 Phonon::VideoWidget::~VideoWidget
+56 Phonon::VideoWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 Phonon::VideoWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+464 Phonon::VideoWidget::_ZThn16_N6Phonon11VideoWidgetD1Ev
+472 Phonon::VideoWidget::_ZThn16_N6Phonon11VideoWidgetD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+504 (int (*)(...))-0x00000000000000028
+512 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+520 Phonon::VideoWidget::_ZThn40_N6Phonon11VideoWidgetD1Ev
+528 Phonon::VideoWidget::_ZThn40_N6Phonon11VideoWidgetD0Ev
+
+Class Phonon::VideoWidget
+ size=56 align=8
+ base size=56 base align=8
+Phonon::VideoWidget (0x7f37b83dd780) 0
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 16u)
+ QWidget (0x7f37b83dd800) 0
+ primary-for Phonon::VideoWidget (0x7f37b83dd780)
+ QObject (0x7f37b81f0850) 0
+ primary-for QWidget (0x7f37b83dd800)
+ QPaintDevice (0x7f37b81f08c0) 16
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 464u)
+ Phonon::AbstractVideoOutput (0x7f37b81f0930) 40
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 520u)
+ Phonon::MediaNode (0x7f37b81f09a0) 40
+ primary-for Phonon::AbstractVideoOutput (0x7f37b81f0930)
+
+Vtable for Phonon::VideoWidgetInterface
+Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE: 17u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon20VideoWidgetInterfaceE)
+16 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+24 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+32 __cxa_pure_virtual
+40 __cxa_pure_virtual
+48 __cxa_pure_virtual
+56 __cxa_pure_virtual
+64 __cxa_pure_virtual
+72 __cxa_pure_virtual
+80 __cxa_pure_virtual
+88 __cxa_pure_virtual
+96 __cxa_pure_virtual
+104 __cxa_pure_virtual
+112 __cxa_pure_virtual
+120 __cxa_pure_virtual
+128 __cxa_pure_virtual
+
+Class Phonon::VideoWidgetInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::VideoWidgetInterface (0x7f37b8216230) 0 nearly-empty
+ vptr=((& Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE) + 16u)
+
+Vtable for Phonon::VolumeFaderEffect
+Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE: 18u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+16 Phonon::VolumeFaderEffect::metaObject
+24 Phonon::VolumeFaderEffect::qt_metacast
+32 Phonon::VolumeFaderEffect::qt_metacall
+40 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+48 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+56 QObject::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 (int (*)(...))-0x00000000000000010
+120 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+128 Phonon::VolumeFaderEffect::_ZThn16_N6Phonon17VolumeFaderEffectD1Ev
+136 Phonon::VolumeFaderEffect::_ZThn16_N6Phonon17VolumeFaderEffectD0Ev
+
+Class Phonon::VolumeFaderEffect
+ size=32 align=8
+ base size=32 base align=8
+Phonon::VolumeFaderEffect (0x7f37b8225850) 0
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 16u)
+ Phonon::Effect (0x7f37b8223c80) 0
+ primary-for Phonon::VolumeFaderEffect (0x7f37b8225850)
+ QObject (0x7f37b82258c0) 0
+ primary-for Phonon::Effect (0x7f37b8223c80)
+ Phonon::MediaNode (0x7f37b8225930) 16
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 128u)
+
+Vtable for Phonon::VolumeFaderInterface
+Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE: 9u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon20VolumeFaderInterfaceE)
+16 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+24 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+32 Phonon::VolumeFaderInterface::volume
+40 Phonon::VolumeFaderInterface::setVolume
+48 Phonon::VolumeFaderInterface::fadeCurve
+56 Phonon::VolumeFaderInterface::setFadeCurve
+64 Phonon::VolumeFaderInterface::fadeTo
+
+Class Phonon::VolumeFaderInterface
+ size=8 align=8
+ base size=8 base align=8
+Phonon::VolumeFaderInterface (0x7f37b823ae70) 0 nearly-empty
+ vptr=((& Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE) + 16u)
+
+Vtable for Phonon::VolumeSlider
+Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE: 63u entries
+0 (int (*)(...))0
+8 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+16 Phonon::VolumeSlider::metaObject
+24 Phonon::VolumeSlider::qt_metacast
+32 Phonon::VolumeSlider::qt_metacall
+40 Phonon::VolumeSlider::~VolumeSlider
+48 Phonon::VolumeSlider::~VolumeSlider
+56 QWidget::event
+64 QObject::eventFilter
+72 QObject::timerEvent
+80 QObject::childEvent
+88 QObject::customEvent
+96 QObject::connectNotify
+104 QObject::disconnectNotify
+112 QWidget::devType
+120 QWidget::setVisible
+128 QWidget::sizeHint
+136 QWidget::minimumSizeHint
+144 QWidget::heightForWidth
+152 QWidget::paintEngine
+160 QWidget::mousePressEvent
+168 QWidget::mouseReleaseEvent
+176 QWidget::mouseDoubleClickEvent
+184 QWidget::mouseMoveEvent
+192 QWidget::wheelEvent
+200 QWidget::keyPressEvent
+208 QWidget::keyReleaseEvent
+216 QWidget::focusInEvent
+224 QWidget::focusOutEvent
+232 QWidget::enterEvent
+240 QWidget::leaveEvent
+248 QWidget::paintEvent
+256 QWidget::moveEvent
+264 QWidget::resizeEvent
+272 QWidget::closeEvent
+280 QWidget::contextMenuEvent
+288 QWidget::tabletEvent
+296 QWidget::actionEvent
+304 QWidget::dragEnterEvent
+312 QWidget::dragMoveEvent
+320 QWidget::dragLeaveEvent
+328 QWidget::dropEvent
+336 QWidget::showEvent
+344 QWidget::hideEvent
+352 QWidget::x11Event
+360 QWidget::changeEvent
+368 QWidget::metric
+376 QWidget::inputMethodEvent
+384 QWidget::inputMethodQuery
+392 QWidget::focusNextPrevChild
+400 QWidget::styleChange
+408 QWidget::enabledChange
+416 QWidget::paletteChange
+424 QWidget::fontChange
+432 QWidget::windowActivationChange
+440 QWidget::languageChange
+448 (int (*)(...))-0x00000000000000010
+456 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+464 Phonon::VolumeSlider::_ZThn16_N6Phonon12VolumeSliderD1Ev
+472 Phonon::VolumeSlider::_ZThn16_N6Phonon12VolumeSliderD0Ev
+480 QWidget::_ZThn16_NK7QWidget7devTypeEv
+488 QWidget::_ZThn16_NK7QWidget11paintEngineEv
+496 QWidget::_ZThn16_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VolumeSlider
+ size=48 align=8
+ base size=48 base align=8
+Phonon::VolumeSlider (0x7f37b824f930) 0
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 16u)
+ QWidget (0x7f37b8254500) 0
+ primary-for Phonon::VolumeSlider (0x7f37b824f930)
+ QObject (0x7f37b824f9a0) 0
+ primary-for QWidget (0x7f37b8254500)
+ QPaintDevice (0x7f37b824fa10) 16
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 464u)
+
diff --git a/tests/auto/bic/data/phonon.4.6.0.linux-gcc-ia32.txt b/tests/auto/bic/data/phonon.4.6.0.linux-gcc-ia32.txt
new file mode 100644
index 0000000..7255636
--- /dev/null
+++ b/tests/auto/bic/data/phonon.4.6.0.linux-gcc-ia32.txt
@@ -0,0 +1,1980 @@
+Class QSysInfo
+ size=1 align=1
+ base size=0 base align=1
+QSysInfo (0xb6f30ec4) 0 empty
+
+Class QBool
+ size=1 align=1
+ base size=1 base align=1
+QBool (0xb6e12078) 0
+
+Class qIsNull(double)::U
+ size=8 align=4
+ base size=8 base align=4
+qIsNull(double)::U (0xb6e12744) 0
+
+Class qIsNull(float)::U
+ size=4 align=4
+ base size=4 base align=4
+qIsNull(float)::U (0xb6e127f8) 0
+
+Class QFlag
+ size=4 align=4
+ base size=4 base align=4
+QFlag (0xb6e4303c) 0
+
+Class QIncompatibleFlag
+ size=4 align=4
+ base size=4 base align=4
+QIncompatibleFlag (0xb6e43168) 0
+
+Class QBasicAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QBasicAtomicInt (0xb6e433c0) 0
+
+Class QAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QAtomicInt (0xb69763c0) 0
+ QBasicAtomicInt (0xb6e43ac8) 0
+
+Class QSharedData
+ size=4 align=4
+ base size=4 base align=4
+QSharedData (0xb6e43fb4) 0
+
+Class QLatin1Char
+ size=1 align=1
+ base size=1 base align=1
+QLatin1Char (0xb6989348) 0
+
+Class QChar
+ size=2 align=2
+ base size=2 base align=2
+QChar (0xb6989528) 0
+
+Vtable for std::exception
+std::exception::_ZTVSt9exception: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt9exception)
+8 std::exception::~exception
+12 std::exception::~exception
+16 std::exception::what
+
+Class std::exception
+ size=4 align=4
+ base size=4 base align=4
+std::exception (0xb6a05c6c) 0 nearly-empty
+ vptr=((& std::exception::_ZTVSt9exception) + 8u)
+
+Vtable for std::bad_exception
+std::bad_exception::_ZTVSt13bad_exception: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt13bad_exception)
+8 std::bad_exception::~bad_exception
+12 std::bad_exception::~bad_exception
+16 std::bad_exception::what
+
+Class std::bad_exception
+ size=4 align=4
+ base size=4 base align=4
+std::bad_exception (0xb6a04b00) 0 nearly-empty
+ vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 8u)
+ std::exception (0xb6a05d5c) 0 nearly-empty
+ primary-for std::bad_exception (0xb6a04b00)
+
+Vtable for std::bad_alloc
+std::bad_alloc::_ZTVSt9bad_alloc: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt9bad_alloc)
+8 std::bad_alloc::~bad_alloc
+12 std::bad_alloc::~bad_alloc
+16 std::bad_alloc::what
+
+Class std::bad_alloc
+ size=4 align=4
+ base size=4 base align=4
+std::bad_alloc (0xb6a04c80) 0 nearly-empty
+ vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 8u)
+ std::exception (0xb6a05fb4) 0 nearly-empty
+ primary-for std::bad_alloc (0xb6a04c80)
+
+Class std::nothrow_t
+ size=1 align=1
+ base size=0 base align=1
+std::nothrow_t (0xb6a1b21c) 0 empty
+
+Class __locale_struct
+ size=116 align=4
+ base size=116 base align=4
+__locale_struct (0xb6a1b2d0) 0
+
+Class QListData::Data
+ size=24 align=4
+ base size=24 base align=4
+QListData::Data (0xb6a1b348) 0
+
+Class QListData
+ size=4 align=4
+ base size=4 base align=4
+QListData (0xb6a1b30c) 0
+
+Class QScopedPointerPodDeleter
+ size=1 align=1
+ base size=0 base align=1
+QScopedPointerPodDeleter (0xb6a1bb7c) 0 empty
+
+Class QInternal
+ size=1 align=1
+ base size=0 base align=1
+QInternal (0xb6763b40) 0 empty
+
+Class QGenericArgument
+ size=8 align=4
+ base size=8 base align=4
+QGenericArgument (0xb6763b7c) 0
+
+Class QGenericReturnArgument
+ size=8 align=4
+ base size=8 base align=4
+QGenericReturnArgument (0xb67c1940) 0
+ QGenericArgument (0xb6763d98) 0
+
+Class QMetaObject
+ size=16 align=4
+ base size=16 base align=4
+QMetaObject (0xb6763f00) 0
+
+Class QMetaObjectExtraData
+ size=8 align=4
+ base size=8 base align=4
+QMetaObjectExtraData (0xb682d03c) 0
+
+Class QByteArray::Data
+ size=20 align=4
+ base size=20 base align=4
+QByteArray::Data (0xb682d654) 0
+
+Class QByteArray
+ size=4 align=4
+ base size=4 base align=4
+QByteArray (0xb682d618) 0
+
+Class QByteRef
+ size=8 align=4
+ base size=8 base align=4
+QByteRef (0xb6686564) 0
+
+Class QString::Null
+ size=1 align=1
+ base size=0 base align=1
+QString::Null (0xb66a0d20) 0 empty
+
+Class QString::Data
+ size=20 align=4
+ base size=20 base align=4
+QString::Data (0xb66a0d5c) 0
+
+Class QString
+ size=4 align=4
+ base size=4 base align=4
+QString (0xb66a0ce4) 0
+
+Class QLatin1String
+ size=4 align=4
+ base size=4 base align=4
+QLatin1String (0xb65809d8) 0
+
+Class QCharRef
+ size=8 align=4
+ base size=8 base align=4
+QCharRef (0xb65e36cc) 0
+
+Class QConstString
+ size=4 align=4
+ base size=4 base align=4
+QConstString (0xb6646fc0) 0
+ QString (0xb646de10) 0
+
+Class QStringRef
+ size=12 align=4
+ base size=12 base align=4
+QStringRef (0xb649c168) 0
+
+Vtable for QObjectData
+QObjectData::_ZTV11QObjectData: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QObjectData)
+8 __cxa_pure_virtual
+12 __cxa_pure_virtual
+
+Class QObjectData
+ size=28 align=4
+ base size=28 base align=4
+QObjectData (0xb64ec0b4) 0
+ vptr=((& QObjectData::_ZTV11QObjectData) + 8u)
+
+Vtable for QObject
+QObject::_ZTV7QObject: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QObject)
+8 QObject::metaObject
+12 QObject::qt_metacast
+16 QObject::qt_metacall
+20 QObject::~QObject
+24 QObject::~QObject
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class QObject
+ size=8 align=4
+ base size=8 base align=4
+QObject (0xb64ec168) 0
+ vptr=((& QObject::_ZTV7QObject) + 8u)
+
+Vtable for QObjectUserData
+QObjectUserData::_ZTV15QObjectUserData: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI15QObjectUserData)
+8 QObjectUserData::~QObjectUserData
+12 QObjectUserData::~QObjectUserData
+
+Class QObjectUserData
+ size=4 align=4
+ base size=4 base align=4
+QObjectUserData (0xb64ec9d8) 0 nearly-empty
+ vptr=((& QObjectUserData::_ZTV15QObjectUserData) + 8u)
+
+Vtable for QIODevice
+QIODevice::_ZTV9QIODevice: 30u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI9QIODevice)
+8 QIODevice::metaObject
+12 QIODevice::qt_metacast
+16 QIODevice::qt_metacall
+20 QIODevice::~QIODevice
+24 QIODevice::~QIODevice
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QIODevice::isSequential
+60 QIODevice::open
+64 QIODevice::close
+68 QIODevice::pos
+72 QIODevice::size
+76 QIODevice::seek
+80 QIODevice::atEnd
+84 QIODevice::reset
+88 QIODevice::bytesAvailable
+92 QIODevice::bytesToWrite
+96 QIODevice::canReadLine
+100 QIODevice::waitForReadyRead
+104 QIODevice::waitForBytesWritten
+108 __cxa_pure_virtual
+112 QIODevice::readLineData
+116 __cxa_pure_virtual
+
+Class QIODevice
+ size=8 align=4
+ base size=8 base align=4
+QIODevice (0xb652f780) 0
+ vptr=((& QIODevice::_ZTV9QIODevice) + 8u)
+ QObject (0xb64ecb04) 0
+ primary-for QIODevice (0xb652f780)
+
+Vtable for QDataStream
+QDataStream::_ZTV11QDataStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QDataStream)
+8 QDataStream::~QDataStream
+12 QDataStream::~QDataStream
+
+Class QDataStream
+ size=28 align=4
+ base size=28 base align=4
+QDataStream (0xb635f870) 0
+ vptr=((& QDataStream::_ZTV11QDataStream) + 8u)
+
+Class QHashData::Node
+ size=8 align=4
+ base size=8 base align=4
+QHashData::Node (0xb63bd438) 0
+
+Class QHashData
+ size=32 align=4
+ base size=32 base align=4
+QHashData (0xb63bd3fc) 0
+
+Class QHashDummyValue
+ size=1 align=1
+ base size=0 base align=1
+QHashDummyValue (0xb63bdb40) 0 empty
+
+Class QMapData::Node
+ size=8 align=4
+ base size=8 base align=4
+QMapData::Node (0xb63e6294) 0
+
+Class QMapData
+ size=72 align=4
+ base size=72 base align=4
+QMapData (0xb63e6258) 0
+
+Vtable for QSystemLocale
+QSystemLocale::_ZTV13QSystemLocale: 6u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI13QSystemLocale)
+8 QSystemLocale::~QSystemLocale
+12 QSystemLocale::~QSystemLocale
+16 QSystemLocale::query
+20 QSystemLocale::fallbackLocale
+
+Class QSystemLocale
+ size=4 align=4
+ base size=4 base align=4
+QSystemLocale (0xb63e65a0) 0 nearly-empty
+ vptr=((& QSystemLocale::_ZTV13QSystemLocale) + 8u)
+
+Class QLocale::Data
+ size=4 align=2
+ base size=4 base align=2
+QLocale::Data (0xb63e6618) 0
+
+Class QLocale
+ size=4 align=4
+ base size=4 base align=4
+QLocale (0xb63e65dc) 0
+
+Class QTextCodec::ConverterState
+ size=28 align=4
+ base size=28 base align=4
+QTextCodec::ConverterState (0xb63e6c6c) 0
+
+Vtable for QTextCodec
+QTextCodec::_ZTV10QTextCodec: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI10QTextCodec)
+8 __cxa_pure_virtual
+12 QTextCodec::aliases
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 QTextCodec::~QTextCodec
+32 QTextCodec::~QTextCodec
+
+Class QTextCodec
+ size=4 align=4
+ base size=4 base align=4
+QTextCodec (0xb63e6c30) 0 nearly-empty
+ vptr=((& QTextCodec::_ZTV10QTextCodec) + 8u)
+
+Class QTextEncoder
+ size=32 align=4
+ base size=32 base align=4
+QTextEncoder (0xb6170960) 0
+
+Class QTextDecoder
+ size=32 align=4
+ base size=32 base align=4
+QTextDecoder (0xb6170bb8) 0
+
+Class _IO_marker
+ size=12 align=4
+ base size=12 base align=4
+_IO_marker (0xb6170f3c) 0
+
+Class _IO_FILE
+ size=148 align=4
+ base size=148 base align=4
+_IO_FILE (0xb6170f78) 0
+
+Vtable for QTextStream
+QTextStream::_ZTV11QTextStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QTextStream)
+8 QTextStream::~QTextStream
+12 QTextStream::~QTextStream
+
+Class QTextStream
+ size=8 align=4
+ base size=8 base align=4
+QTextStream (0xb61c2000) 0
+ vptr=((& QTextStream::_ZTV11QTextStream) + 8u)
+
+Class QTextStreamManipulator
+ size=24 align=4
+ base size=22 base align=4
+QTextStreamManipulator (0xb61c2690) 0
+
+Vtable for QTextIStream
+QTextIStream::_ZTV12QTextIStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QTextIStream)
+8 QTextIStream::~QTextIStream
+12 QTextIStream::~QTextIStream
+
+Class QTextIStream
+ size=8 align=4
+ base size=8 base align=4
+QTextIStream (0xb6212140) 0
+ vptr=((& QTextIStream::_ZTV12QTextIStream) + 8u)
+ QTextStream (0xb620e870) 0
+ primary-for QTextIStream (0xb6212140)
+
+Vtable for QTextOStream
+QTextOStream::_ZTV12QTextOStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QTextOStream)
+8 QTextOStream::~QTextOStream
+12 QTextOStream::~QTextOStream
+
+Class QTextOStream
+ size=8 align=4
+ base size=8 base align=4
+QTextOStream (0xb6212400) 0
+ vptr=((& QTextOStream::_ZTV12QTextOStream) + 8u)
+ QTextStream (0xb620ef00) 0
+ primary-for QTextOStream (0xb6212400)
+
+Class wait
+ size=4 align=4
+ base size=4 base align=4
+wait (0xb62245a0) 0
+
+Class timespec
+ size=8 align=4
+ base size=8 base align=4
+timespec (0xb6224744) 0
+
+Class timeval
+ size=8 align=4
+ base size=8 base align=4
+timeval (0xb6224780) 0
+
+Class __pthread_internal_slist
+ size=4 align=4
+ base size=4 base align=4
+__pthread_internal_slist (0xb6224834) 0
+
+Class random_data
+ size=28 align=4
+ base size=28 base align=4
+random_data (0xb6224b40) 0
+
+Class drand48_data
+ size=24 align=4
+ base size=24 base align=4
+drand48_data (0xb6224b7c) 0
+
+Class QVectorData
+ size=16 align=4
+ base size=16 base align=4
+QVectorData (0xb6224bb8) 0
+
+Class QContiguousCacheData
+ size=24 align=4
+ base size=24 base align=4
+QContiguousCacheData (0xb6224ec4) 0
+
+Class QDebug::Stream
+ size=24 align=4
+ base size=22 base align=4
+QDebug::Stream (0xb61440b4) 0
+
+Class QDebug
+ size=4 align=4
+ base size=4 base align=4
+QDebug (0xb6144078) 0
+
+Class QNoDebug
+ size=1 align=1
+ base size=0 base align=1
+QNoDebug (0xb5f9ace4) 0 empty
+
+Class QMetaType
+ size=1 align=1
+ base size=0 base align=1
+QMetaType (0xb5f9af78) 0 empty
+
+Class QVariant::PrivateShared
+ size=8 align=4
+ base size=8 base align=4
+QVariant::PrivateShared (0xb6014c30) 0
+
+Class QVariant::Private::Data
+ size=8 align=4
+ base size=8 base align=4
+QVariant::Private::Data (0xb6014ca8) 0
+
+Class QVariant::Private
+ size=12 align=4
+ base size=12 base align=4
+QVariant::Private (0xb6014c6c) 0
+
+Class QVariant::Handler
+ size=36 align=4
+ base size=36 base align=4
+QVariant::Handler (0xb6014d20) 0
+
+Class QVariant
+ size=12 align=4
+ base size=12 base align=4
+QVariant (0xb6014bf4) 0
+
+Class QVariantComparisonHelper
+ size=4 align=4
+ base size=4 base align=4
+QVariantComparisonHelper (0xb5eb25dc) 0
+
+Class Phonon::ObjectDescriptionData
+ size=8 align=4
+ base size=8 base align=4
+Phonon::ObjectDescriptionData (0xb5eb5dc0) 0
+ QSharedData (0xb5eb2bf4) 0
+
+Class Phonon::Path
+ size=4 align=4
+ base size=4 base align=4
+Phonon::Path (0xb5ef84ec) 0
+
+Vtable for Phonon::MediaNode
+Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon9MediaNodeE)
+8 Phonon::MediaNode::~MediaNode
+12 Phonon::MediaNode::~MediaNode
+
+Class Phonon::MediaNode
+ size=8 align=4
+ base size=8 base align=4
+Phonon::MediaNode (0xb5ef8564) 0
+ vptr=((& Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE) + 8u)
+
+Vtable for Phonon::AbstractAudioOutput
+Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+8 Phonon::AbstractAudioOutput::metaObject
+12 Phonon::AbstractAudioOutput::qt_metacast
+16 Phonon::AbstractAudioOutput::qt_metacall
+20 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+24 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+64 Phonon::AbstractAudioOutput::_ZThn8_N6Phonon19AbstractAudioOutputD1Ev
+68 Phonon::AbstractAudioOutput::_ZThn8_N6Phonon19AbstractAudioOutputD0Ev
+
+Class Phonon::AbstractAudioOutput
+ size=16 align=4
+ base size=16 base align=4
+Phonon::AbstractAudioOutput (0xb5f18eb0) 0
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 8u)
+ QObject (0xb5ef8618) 0
+ primary-for Phonon::AbstractAudioOutput (0xb5f18eb0)
+ Phonon::MediaNode (0xb5ef8654) 8
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 64u)
+
+Vtable for Phonon::AbstractMediaStream
+Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractMediaStreamE)
+8 Phonon::AbstractMediaStream::metaObject
+12 Phonon::AbstractMediaStream::qt_metacast
+16 Phonon::AbstractMediaStream::qt_metacall
+20 Phonon::AbstractMediaStream::~AbstractMediaStream
+24 Phonon::AbstractMediaStream::~AbstractMediaStream
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 Phonon::AbstractMediaStream::enoughData
+68 Phonon::AbstractMediaStream::seekStream
+
+Class Phonon::AbstractMediaStream
+ size=12 align=4
+ base size=12 base align=4
+Phonon::AbstractMediaStream (0xb5f0e7c0) 0
+ vptr=((& Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE) + 8u)
+ QObject (0xb5ef8a8c) 0
+ primary-for Phonon::AbstractMediaStream (0xb5f0e7c0)
+
+Vtable for Phonon::AbstractVideoOutput
+Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractVideoOutputE)
+8 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+12 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+
+Class Phonon::AbstractVideoOutput
+ size=8 align=4
+ base size=8 base align=4
+Phonon::AbstractVideoOutput (0xb5f0eac0) 0
+ vptr=((& Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE) + 8u)
+ Phonon::MediaNode (0xb5ef8ce4) 0
+ primary-for Phonon::AbstractVideoOutput (0xb5f0eac0)
+
+Vtable for Phonon::AddonInterface
+Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE: 6u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon14AddonInterfaceE)
+8 Phonon::AddonInterface::~AddonInterface
+12 Phonon::AddonInterface::~AddonInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+
+Class Phonon::AddonInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AddonInterface (0xb5ef8e10) 0 nearly-empty
+ vptr=((& Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE) + 8u)
+
+Vtable for Phonon::AudioOutput
+Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+8 Phonon::AudioOutput::metaObject
+12 Phonon::AudioOutput::qt_metacast
+16 Phonon::AudioOutput::qt_metacall
+20 Phonon::AudioOutput::~AudioOutput
+24 Phonon::AudioOutput::~AudioOutput
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+64 Phonon::AudioOutput::_ZThn8_N6Phonon11AudioOutputD1Ev
+68 Phonon::AudioOutput::_ZThn8_N6Phonon11AudioOutputD0Ev
+
+Class Phonon::AudioOutput
+ size=16 align=4
+ base size=16 base align=4
+Phonon::AudioOutput (0xb5d48040) 0
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 8u)
+ Phonon::AbstractAudioOutput (0xb5d41eb0) 0
+ primary-for Phonon::AudioOutput (0xb5d48040)
+ QObject (0xb5d44384) 0
+ primary-for Phonon::AbstractAudioOutput (0xb5d41eb0)
+ Phonon::MediaNode (0xb5d443c0) 8
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 64u)
+
+Vtable for Phonon::AudioOutputInterface40
+Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E: 8u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface40E)
+8 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+12 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface40
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AudioOutputInterface40 (0xb5d445dc) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E) + 8u)
+
+Vtable for Phonon::AudioOutputInterface42
+Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface42E)
+8 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+12 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface42
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AudioOutputInterface42 (0xb5d48500) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E) + 8u)
+ Phonon::AudioOutputInterface40 (0xb5d447f8) 0 nearly-empty
+ primary-for Phonon::AudioOutputInterface42 (0xb5d48500)
+
+Vtable for Phonon::BackendCapabilities::Notifier
+Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19BackendCapabilities8NotifierE)
+8 Phonon::BackendCapabilities::Notifier::metaObject
+12 Phonon::BackendCapabilities::Notifier::qt_metacast
+16 Phonon::BackendCapabilities::Notifier::qt_metacall
+20 Phonon::BackendCapabilities::Notifier::~Notifier
+24 Phonon::BackendCapabilities::Notifier::~Notifier
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class Phonon::BackendCapabilities::Notifier
+ size=8 align=4
+ base size=8 base align=4
+Phonon::BackendCapabilities::Notifier (0xb5d48b00) 0
+ vptr=((& Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE) + 8u)
+ QObject (0xb5d44d5c) 0
+ primary-for Phonon::BackendCapabilities::Notifier (0xb5d48b00)
+
+Vtable for Phonon::BackendInterface
+Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE: 12u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon16BackendInterfaceE)
+8 Phonon::BackendInterface::~BackendInterface
+12 Phonon::BackendInterface::~BackendInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+
+Class Phonon::BackendInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::BackendInterface (0xb5d44e88) 0 nearly-empty
+ vptr=((& Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE) + 8u)
+
+Vtable for Phonon::Effect
+Phonon::Effect::_ZTVN6Phonon6EffectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+8 Phonon::Effect::metaObject
+12 Phonon::Effect::qt_metacast
+16 Phonon::Effect::qt_metacall
+20 Phonon::Effect::~Effect
+24 Phonon::Effect::~Effect
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+64 Phonon::Effect::_ZThn8_N6Phonon6EffectD1Ev
+68 Phonon::Effect::_ZThn8_N6Phonon6EffectD0Ev
+
+Class Phonon::Effect
+ size=16 align=4
+ base size=16 base align=4
+Phonon::Effect (0xb5d70e10) 0
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 8u)
+ QObject (0xb5d743fc) 0
+ primary-for Phonon::Effect (0xb5d70e10)
+ Phonon::MediaNode (0xb5d74438) 8
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 64u)
+
+Vtable for Phonon::EffectInterface
+Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15EffectInterfaceE)
+8 Phonon::EffectInterface::~EffectInterface
+12 Phonon::EffectInterface::~EffectInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+
+Class Phonon::EffectInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::EffectInterface (0xb5d74654) 0 nearly-empty
+ vptr=((& Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE) + 8u)
+
+Class Phonon::EffectParameter
+ size=4 align=4
+ base size=4 base align=4
+Phonon::EffectParameter (0xb5d74bb8) 0
+
+Class QMargins
+ size=16 align=4
+ base size=16 base align=4
+QMargins (0xb5d74d20) 0
+
+Class QSize
+ size=8 align=4
+ base size=8 base align=4
+QSize (0xb5db4e4c) 0
+
+Class QSizeF
+ size=16 align=4
+ base size=16 base align=4
+QSizeF (0xb5dda8e8) 0
+
+Class QPoint
+ size=8 align=4
+ base size=8 base align=4
+QPoint (0xb5e084ec) 0
+
+Class QPointF
+ size=16 align=4
+ base size=16 base align=4
+QPointF (0xb5e21a8c) 0
+
+Class QRect
+ size=16 align=4
+ base size=16 base align=4
+QRect (0xb5c471a4) 0
+
+Class QRectF
+ size=32 align=4
+ base size=32 base align=4
+QRectF (0xb5c93dd4) 0
+
+Vtable for QPaintDevice
+QPaintDevice::_ZTV12QPaintDevice: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QPaintDevice)
+8 QPaintDevice::~QPaintDevice
+12 QPaintDevice::~QPaintDevice
+16 QPaintDevice::devType
+20 __cxa_pure_virtual
+24 QPaintDevice::metric
+
+Class QPaintDevice
+ size=8 align=4
+ base size=6 base align=4
+QPaintDevice (0xb5cf0b40) 0
+ vptr=((& QPaintDevice::_ZTV12QPaintDevice) + 8u)
+
+Class QRegExp
+ size=4 align=4
+ base size=4 base align=4
+QRegExp (0xb5d0d708) 0
+
+Class QStringMatcher::Data
+ size=264 align=4
+ base size=264 base align=4
+QStringMatcher::Data (0xb5d3112c) 0
+
+Class QStringMatcher
+ size=1036 align=4
+ base size=1036 base align=4
+QStringMatcher (0xb5d310f0) 0
+
+Class QStringList
+ size=4 align=4
+ base size=4 base align=4
+QStringList (0xb5d17bc0) 0
+ QList<QString> (0xb5d31258) 0
+
+Class QColor
+ size=16 align=4
+ base size=14 base align=4
+QColor (0xb5b787bc) 0
+
+Class QPolygon
+ size=4 align=4
+ base size=4 base align=4
+QPolygon (0xb5bb3380) 0
+ QVector<QPoint> (0xb5b78e4c) 0
+
+Class QPolygonF
+ size=4 align=4
+ base size=4 base align=4
+QPolygonF (0xb5bb39c0) 0
+ QVector<QPointF> (0xb5bd9834) 0
+
+Class QRegion::QRegionData
+ size=16 align=4
+ base size=16 base align=4
+QRegion::QRegionData (0xb5c041a4) 0
+
+Class QRegion
+ size=4 align=4
+ base size=4 base align=4
+QRegion (0xb5c04168) 0
+
+Class QLine
+ size=16 align=4
+ base size=16 base align=4
+QLine (0xb5c044ec) 0
+
+Class QLineF
+ size=32 align=4
+ base size=32 base align=4
+QLineF (0xb5c3f21c) 0
+
+Class QMatrix
+ size=48 align=4
+ base size=48 base align=4
+QMatrix (0xb5a6630c) 0
+
+Class QPainterPath::Element
+ size=20 align=4
+ base size=20 base align=4
+QPainterPath::Element (0xb5a874b0) 0
+
+Class QPainterPath
+ size=4 align=4
+ base size=4 base align=4
+QPainterPath (0xb5a87474) 0
+
+Class QPainterPathPrivate
+ size=8 align=4
+ base size=8 base align=4
+QPainterPathPrivate (0xb5a8799c) 0
+
+Class QPainterPathStroker
+ size=4 align=4
+ base size=4 base align=4
+QPainterPathStroker (0xb5a87ac8) 0
+
+Class QTransform
+ size=80 align=4
+ base size=80 base align=4
+QTransform (0xb5aeaa50) 0
+
+Class QImageTextKeyLang
+ size=8 align=4
+ base size=8 base align=4
+QImageTextKeyLang (0xb594f99c) 0
+
+Vtable for QImage
+QImage::_ZTV6QImage: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI6QImage)
+8 QImage::~QImage
+12 QImage::~QImage
+16 QImage::devType
+20 QImage::paintEngine
+24 QImage::metric
+
+Class QImage
+ size=12 align=4
+ base size=12 base align=4
+QImage (0xb594b600) 0
+ vptr=((& QImage::_ZTV6QImage) + 8u)
+ QPaintDevice (0xb596e384) 0
+ primary-for QImage (0xb594b600)
+
+Vtable for QtSharedPointer::ExternalRefCountData
+QtSharedPointer::ExternalRefCountData::_ZTVN15QtSharedPointer20ExternalRefCountDataE: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN15QtSharedPointer20ExternalRefCountDataE)
+8 QtSharedPointer::ExternalRefCountData::~ExternalRefCountData
+12 QtSharedPointer::ExternalRefCountData::~ExternalRefCountData
+16 QtSharedPointer::ExternalRefCountData::destroy
+
+Class QtSharedPointer::ExternalRefCountData
+ size=12 align=4
+ base size=12 base align=4
+QtSharedPointer::ExternalRefCountData (0xb59cd0b4) 0
+ vptr=((& QtSharedPointer::ExternalRefCountData::_ZTVN15QtSharedPointer20ExternalRefCountDataE) + 8u)
+
+Vtable for QtSharedPointer::ExternalRefCountWithDestroyFn
+QtSharedPointer::ExternalRefCountWithDestroyFn::_ZTVN15QtSharedPointer29ExternalRefCountWithDestroyFnE: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN15QtSharedPointer29ExternalRefCountWithDestroyFnE)
+8 QtSharedPointer::ExternalRefCountWithDestroyFn::~ExternalRefCountWithDestroyFn
+12 QtSharedPointer::ExternalRefCountWithDestroyFn::~ExternalRefCountWithDestroyFn
+16 QtSharedPointer::ExternalRefCountWithDestroyFn::destroy
+
+Class QtSharedPointer::ExternalRefCountWithDestroyFn
+ size=16 align=4
+ base size=16 base align=4
+QtSharedPointer::ExternalRefCountWithDestroyFn (0xb59c6cc0) 0
+ vptr=((& QtSharedPointer::ExternalRefCountWithDestroyFn::_ZTVN15QtSharedPointer29ExternalRefCountWithDestroyFnE) + 8u)
+ QtSharedPointer::ExternalRefCountData (0xb59cd8ac) 0
+ primary-for QtSharedPointer::ExternalRefCountWithDestroyFn (0xb59c6cc0)
+
+Vtable for QPixmap
+QPixmap::_ZTV7QPixmap: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QPixmap)
+8 QPixmap::~QPixmap
+12 QPixmap::~QPixmap
+16 QPixmap::devType
+20 QPixmap::paintEngine
+24 QPixmap::metric
+
+Class QPixmap
+ size=12 align=4
+ base size=12 base align=4
+QPixmap (0xb5a2c740) 0
+ vptr=((& QPixmap::_ZTV7QPixmap) + 8u)
+ QPaintDevice (0xb59cddd4) 0
+ primary-for QPixmap (0xb5a2c740)
+
+Class QBrush
+ size=4 align=4
+ base size=4 base align=4
+QBrush (0xb585c474) 0
+
+Class QBrushData
+ size=104 align=4
+ base size=104 base align=4
+QBrushData (0xb585c618) 0
+
+Class QGradient
+ size=56 align=4
+ base size=56 base align=4
+QGradient (0xb585c9d8) 0
+
+Class QLinearGradient
+ size=56 align=4
+ base size=56 base align=4
+QLinearGradient (0xb58795c0) 0
+ QGradient (0xb585cc6c) 0
+
+Class QRadialGradient
+ size=56 align=4
+ base size=56 base align=4
+QRadialGradient (0xb58796c0) 0
+ QGradient (0xb585cca8) 0
+
+Class QConicalGradient
+ size=56 align=4
+ base size=56 base align=4
+QConicalGradient (0xb58797c0) 0
+ QGradient (0xb585cce4) 0
+
+Class QPalette
+ size=8 align=4
+ base size=8 base align=4
+QPalette (0xb585cd20) 0
+
+Class QColorGroup
+ size=8 align=4
+ base size=8 base align=4
+QColorGroup (0xb58d3200) 0
+ QPalette (0xb58c7618) 0
+
+Class QFont
+ size=8 align=4
+ base size=8 base align=4
+QFont (0xb58eb780) 0
+
+Class QFontMetrics
+ size=4 align=4
+ base size=4 base align=4
+QFontMetrics (0xb58eb99c) 0
+
+Class QFontMetricsF
+ size=4 align=4
+ base size=4 base align=4
+QFontMetricsF (0xb58ebbf4) 0
+
+Class QFontInfo
+ size=4 align=4
+ base size=4 base align=4
+QFontInfo (0xb58ebca8) 0
+
+Class QSizePolicy
+ size=4 align=4
+ base size=4 base align=4
+QSizePolicy (0xb58ebce4) 0
+
+Class QCursor
+ size=4 align=4
+ base size=4 base align=4
+QCursor (0xb5775bb8) 0
+
+Class QKeySequence
+ size=4 align=4
+ base size=4 base align=4
+QKeySequence (0xb5775bf4) 0
+
+Class QWidgetData
+ size=64 align=4
+ base size=64 base align=4
+QWidgetData (0xb5775e10) 0
+
+Vtable for QWidget
+QWidget::_ZTV7QWidget: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QWidget)
+8 QWidget::metaObject
+12 QWidget::qt_metacast
+16 QWidget::qt_metacall
+20 QWidget::~QWidget
+24 QWidget::~QWidget
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTI7QWidget)
+232 QWidget::_ZThn8_N7QWidgetD1Ev
+236 QWidget::_ZThn8_N7QWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class QWidget
+ size=20 align=4
+ base size=20 base align=4
+QWidget (0xb57c4dc0) 0
+ vptr=((& QWidget::_ZTV7QWidget) + 8u)
+ QObject (0xb5775e4c) 0
+ primary-for QWidget (0xb57c4dc0)
+ QPaintDevice (0xb5775e88) 8
+ vptr=((& QWidget::_ZTV7QWidget) + 232u)
+
+Vtable for Phonon::EffectWidget
+Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+8 Phonon::EffectWidget::metaObject
+12 Phonon::EffectWidget::qt_metacast
+16 Phonon::EffectWidget::qt_metacall
+20 Phonon::EffectWidget::~EffectWidget
+24 Phonon::EffectWidget::~EffectWidget
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+232 Phonon::EffectWidget::_ZThn8_N6Phonon12EffectWidgetD1Ev
+236 Phonon::EffectWidget::_ZThn8_N6Phonon12EffectWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::EffectWidget
+ size=24 align=4
+ base size=24 base align=4
+Phonon::EffectWidget (0xb5680080) 0
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 8u)
+ QWidget (0xb567f5f0) 0
+ primary-for Phonon::EffectWidget (0xb5680080)
+ QObject (0xb56685dc) 0
+ primary-for QWidget (0xb567f5f0)
+ QPaintDevice (0xb5668618) 8
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 232u)
+
+Vtable for Phonon::MediaController
+Phonon::MediaController::_ZTVN6Phonon15MediaControllerE: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15MediaControllerE)
+8 Phonon::MediaController::metaObject
+12 Phonon::MediaController::qt_metacast
+16 Phonon::MediaController::qt_metacall
+20 Phonon::MediaController::~MediaController
+24 Phonon::MediaController::~MediaController
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class Phonon::MediaController
+ size=12 align=4
+ base size=12 base align=4
+Phonon::MediaController (0xb5680340) 0
+ vptr=((& Phonon::MediaController::_ZTVN6Phonon15MediaControllerE) + 8u)
+ QObject (0xb56687bc) 0
+ primary-for Phonon::MediaController (0xb5680340)
+
+Class Phonon::MediaSource
+ size=4 align=4
+ base size=4 base align=4
+Phonon::MediaSource (0xb56689d8) 0
+
+Vtable for Phonon::MediaObject
+Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+8 Phonon::MediaObject::metaObject
+12 Phonon::MediaObject::qt_metacast
+16 Phonon::MediaObject::qt_metacall
+20 Phonon::MediaObject::~MediaObject
+24 Phonon::MediaObject::~MediaObject
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+64 Phonon::MediaObject::_ZThn8_N6Phonon11MediaObjectD1Ev
+68 Phonon::MediaObject::_ZThn8_N6Phonon11MediaObjectD0Ev
+
+Class Phonon::MediaObject
+ size=16 align=4
+ base size=16 base align=4
+Phonon::MediaObject (0xb56bc640) 0
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 8u)
+ QObject (0xb5668a50) 0
+ primary-for Phonon::MediaObject (0xb56bc640)
+ Phonon::MediaNode (0xb5668a8c) 8
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 64u)
+
+Vtable for Phonon::MediaObjectInterface
+Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE: 25u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20MediaObjectInterfaceE)
+8 Phonon::MediaObjectInterface::~MediaObjectInterface
+12 Phonon::MediaObjectInterface::~MediaObjectInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 __cxa_pure_virtual
+76 __cxa_pure_virtual
+80 Phonon::MediaObjectInterface::remainingTime
+84 __cxa_pure_virtual
+88 __cxa_pure_virtual
+92 __cxa_pure_virtual
+96 __cxa_pure_virtual
+
+Class Phonon::MediaObjectInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::MediaObjectInterface (0xb5668ca8) 0 nearly-empty
+ vptr=((& Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE) + 8u)
+
+Class QModelIndex
+ size=16 align=4
+ base size=16 base align=4
+QModelIndex (0xb56d8294) 0
+
+Class QPersistentModelIndex
+ size=4 align=4
+ base size=4 base align=4
+QPersistentModelIndex (0xb56ea744) 0
+
+Vtable for QAbstractItemModel
+QAbstractItemModel::_ZTV18QAbstractItemModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI18QAbstractItemModel)
+8 QAbstractItemModel::metaObject
+12 QAbstractItemModel::qt_metacast
+16 QAbstractItemModel::qt_metacall
+20 QAbstractItemModel::~QAbstractItemModel
+24 QAbstractItemModel::~QAbstractItemModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 QAbstractItemModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractItemModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractItemModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractItemModel (0xb56e1940) 0
+ vptr=((& QAbstractItemModel::_ZTV18QAbstractItemModel) + 8u)
+ QObject (0xb56ea8ac) 0
+ primary-for QAbstractItemModel (0xb56e1940)
+
+Vtable for QAbstractTableModel
+QAbstractTableModel::_ZTV19QAbstractTableModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI19QAbstractTableModel)
+8 QAbstractTableModel::metaObject
+12 QAbstractTableModel::qt_metacast
+16 QAbstractTableModel::qt_metacall
+20 QAbstractTableModel::~QAbstractTableModel
+24 QAbstractTableModel::~QAbstractTableModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QAbstractTableModel::index
+60 QAbstractTableModel::parent
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 QAbstractTableModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractTableModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractTableModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractTableModel (0xb56e1f80) 0
+ vptr=((& QAbstractTableModel::_ZTV19QAbstractTableModel) + 8u)
+ QAbstractItemModel (0xb56e1fc0) 0
+ primary-for QAbstractTableModel (0xb56e1f80)
+ QObject (0xb572621c) 0
+ primary-for QAbstractItemModel (0xb56e1fc0)
+
+Vtable for QAbstractListModel
+QAbstractListModel::_ZTV18QAbstractListModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI18QAbstractListModel)
+8 QAbstractListModel::metaObject
+12 QAbstractListModel::qt_metacast
+16 QAbstractListModel::qt_metacall
+20 QAbstractListModel::~QAbstractListModel
+24 QAbstractListModel::~QAbstractListModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QAbstractListModel::index
+60 QAbstractListModel::parent
+64 __cxa_pure_virtual
+68 QAbstractListModel::columnCount
+72 QAbstractListModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractListModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractListModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractListModel (0xb572a200) 0
+ vptr=((& QAbstractListModel::_ZTV18QAbstractListModel) + 8u)
+ QAbstractItemModel (0xb572a240) 0
+ primary-for QAbstractListModel (0xb572a200)
+ QObject (0xb5726348) 0
+ primary-for QAbstractItemModel (0xb572a240)
+
+Class Phonon::ObjectDescriptionModelData
+ size=4 align=4
+ base size=4 base align=4
+Phonon::ObjectDescriptionModelData (0xb554f21c) 0
+
+Vtable for Phonon::PlatformPlugin
+Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE: 16u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon14PlatformPluginE)
+8 Phonon::PlatformPlugin::~PlatformPlugin
+12 Phonon::PlatformPlugin::~PlatformPlugin
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 Phonon::PlatformPlugin::deviceAccessListFor
+
+Class Phonon::PlatformPlugin
+ size=4 align=4
+ base size=4 base align=4
+Phonon::PlatformPlugin (0xb554f384) 0 nearly-empty
+ vptr=((& Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE) + 8u)
+
+Vtable for Phonon::SeekSlider
+Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+8 Phonon::SeekSlider::metaObject
+12 Phonon::SeekSlider::qt_metacast
+16 Phonon::SeekSlider::qt_metacall
+20 Phonon::SeekSlider::~SeekSlider
+24 Phonon::SeekSlider::~SeekSlider
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+232 Phonon::SeekSlider::_ZThn8_N6Phonon10SeekSliderD1Ev
+236 Phonon::SeekSlider::_ZThn8_N6Phonon10SeekSliderD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::SeekSlider
+ size=24 align=4
+ base size=24 base align=4
+Phonon::SeekSlider (0xb5573840) 0
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 8u)
+ QWidget (0xb55a5e10) 0
+ primary-for Phonon::SeekSlider (0xb5573840)
+ QObject (0xb554f924) 0
+ primary-for QWidget (0xb55a5e10)
+ QPaintDevice (0xb554f960) 8
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 232u)
+
+Vtable for Phonon::StreamInterface
+Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE: 8u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15StreamInterfaceE)
+8 Phonon::StreamInterface::~StreamInterface
+12 Phonon::StreamInterface::~StreamInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+
+Class Phonon::StreamInterface
+ size=8 align=4
+ base size=8 base align=4
+Phonon::StreamInterface (0xb554fb04) 0
+ vptr=((& Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE) + 8u)
+
+Vtable for Phonon::VideoPlayer
+Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+8 Phonon::VideoPlayer::metaObject
+12 Phonon::VideoPlayer::qt_metacast
+16 Phonon::VideoPlayer::qt_metacall
+20 Phonon::VideoPlayer::~VideoPlayer
+24 Phonon::VideoPlayer::~VideoPlayer
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+232 Phonon::VideoPlayer::_ZThn8_N6Phonon11VideoPlayerD1Ev
+236 Phonon::VideoPlayer::_ZThn8_N6Phonon11VideoPlayerD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VideoPlayer
+ size=24 align=4
+ base size=24 base align=4
+Phonon::VideoPlayer (0xb5573d80) 0
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 8u)
+ QWidget (0xb55ba730) 0
+ primary-for Phonon::VideoPlayer (0xb5573d80)
+ QObject (0xb554fec4) 0
+ primary-for QWidget (0xb55ba730)
+ QPaintDevice (0xb554ff00) 8
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 232u)
+
+Vtable for Phonon::VideoWidget
+Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE: 67u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+8 Phonon::VideoWidget::metaObject
+12 Phonon::VideoWidget::qt_metacast
+16 Phonon::VideoWidget::qt_metacall
+20 Phonon::VideoWidget::~VideoWidget
+24 Phonon::VideoWidget::~VideoWidget
+28 Phonon::VideoWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 Phonon::VideoWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+232 Phonon::VideoWidget::_ZThn8_N6Phonon11VideoWidgetD1Ev
+236 Phonon::VideoWidget::_ZThn8_N6Phonon11VideoWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+252 (int (*)(...))-0x000000014
+256 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+260 Phonon::VideoWidget::_ZThn20_N6Phonon11VideoWidgetD1Ev
+264 Phonon::VideoWidget::_ZThn20_N6Phonon11VideoWidgetD0Ev
+
+Class Phonon::VideoWidget
+ size=28 align=4
+ base size=28 base align=4
+Phonon::VideoWidget (0xb55c6b90) 0
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 8u)
+ QWidget (0xb55d0000) 0
+ primary-for Phonon::VideoWidget (0xb55c6b90)
+ QObject (0xb55cf03c) 0
+ primary-for QWidget (0xb55d0000)
+ QPaintDevice (0xb55cf078) 8
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 232u)
+ Phonon::AbstractVideoOutput (0xb5573fc0) 20
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 260u)
+ Phonon::MediaNode (0xb55cf0b4) 20
+ primary-for Phonon::AbstractVideoOutput (0xb5573fc0)
+
+Vtable for Phonon::VideoWidgetInterface
+Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE: 17u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20VideoWidgetInterfaceE)
+8 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+12 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+
+Class Phonon::VideoWidgetInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::VideoWidgetInterface (0xb55cf2d0) 0 nearly-empty
+ vptr=((& Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE) + 8u)
+
+Vtable for Phonon::VolumeFaderEffect
+Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+8 Phonon::VolumeFaderEffect::metaObject
+12 Phonon::VolumeFaderEffect::qt_metacast
+16 Phonon::VolumeFaderEffect::qt_metacall
+20 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+24 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+64 Phonon::VolumeFaderEffect::_ZThn8_N6Phonon17VolumeFaderEffectD1Ev
+68 Phonon::VolumeFaderEffect::_ZThn8_N6Phonon17VolumeFaderEffectD0Ev
+
+Class Phonon::VolumeFaderEffect
+ size=16 align=4
+ base size=16 base align=4
+Phonon::VolumeFaderEffect (0xb55d3780) 0
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 8u)
+ Phonon::Effect (0xb55e8500) 0
+ primary-for Phonon::VolumeFaderEffect (0xb55d3780)
+ QObject (0xb55cf7bc) 0
+ primary-for Phonon::Effect (0xb55e8500)
+ Phonon::MediaNode (0xb55cf7f8) 8
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 64u)
+
+Vtable for Phonon::VolumeFaderInterface
+Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20VolumeFaderInterfaceE)
+8 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+12 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+16 Phonon::VolumeFaderInterface::volume
+20 Phonon::VolumeFaderInterface::setVolume
+24 Phonon::VolumeFaderInterface::fadeCurve
+28 Phonon::VolumeFaderInterface::setFadeCurve
+32 Phonon::VolumeFaderInterface::fadeTo
+
+Class Phonon::VolumeFaderInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::VolumeFaderInterface (0xb55cfa14) 0 nearly-empty
+ vptr=((& Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE) + 8u)
+
+Vtable for Phonon::VolumeSlider
+Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+8 Phonon::VolumeSlider::metaObject
+12 Phonon::VolumeSlider::qt_metacast
+16 Phonon::VolumeSlider::qt_metacall
+20 Phonon::VolumeSlider::~VolumeSlider
+24 Phonon::VolumeSlider::~VolumeSlider
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+232 Phonon::VolumeSlider::_ZThn8_N6Phonon12VolumeSliderD1Ev
+236 Phonon::VolumeSlider::_ZThn8_N6Phonon12VolumeSliderD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VolumeSlider
+ size=24 align=4
+ base size=24 base align=4
+Phonon::VolumeSlider (0xb5602080) 0
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 8u)
+ QWidget (0xb5600280) 0
+ primary-for Phonon::VolumeSlider (0xb5602080)
+ QObject (0xb55cff78) 0
+ primary-for QWidget (0xb5600280)
+ QPaintDevice (0xb55cffb4) 8
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 232u)
+
diff --git a/tests/auto/bic/data/phonon.4.7.0.linux-gcc-ia32.txt b/tests/auto/bic/data/phonon.4.7.0.linux-gcc-ia32.txt
new file mode 100644
index 0000000..69753ab
--- /dev/null
+++ b/tests/auto/bic/data/phonon.4.7.0.linux-gcc-ia32.txt
@@ -0,0 +1,2095 @@
+Class QSysInfo
+ size=1 align=1
+ base size=0 base align=1
+QSysInfo (0xb6dedec4) 0 empty
+
+Class QBool
+ size=1 align=1
+ base size=1 base align=1
+QBool (0xb6d3a078) 0
+
+Class qIsNull(double)::U
+ size=8 align=4
+ base size=8 base align=4
+qIsNull(double)::U (0xb6d3a744) 0
+
+Class qIsNull(float)::U
+ size=4 align=4
+ base size=4 base align=4
+qIsNull(float)::U (0xb6d3a7f8) 0
+
+Class QFlag
+ size=4 align=4
+ base size=4 base align=4
+QFlag (0xb6d6d03c) 0
+
+Class QIncompatibleFlag
+ size=4 align=4
+ base size=4 base align=4
+QIncompatibleFlag (0xb6d6d168) 0
+
+Class QBasicAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QBasicAtomicInt (0xb6d6d3c0) 0
+
+Class QAtomicInt
+ size=4 align=4
+ base size=4 base align=4
+QAtomicInt (0xb681d480) 0
+ QBasicAtomicInt (0xb6d6dac8) 0
+
+Class QSharedData
+ size=4 align=4
+ base size=4 base align=4
+QSharedData (0xb6d6dfb4) 0
+
+Class QLatin1Char
+ size=1 align=1
+ base size=1 base align=1
+QLatin1Char (0xb6832348) 0
+
+Class QChar
+ size=2 align=2
+ base size=2 base align=2
+QChar (0xb6832528) 0
+
+Vtable for std::exception
+std::exception::_ZTVSt9exception: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt9exception)
+8 std::exception::~exception
+12 std::exception::~exception
+16 std::exception::what
+
+Class std::exception
+ size=4 align=4
+ base size=4 base align=4
+std::exception (0xb68adc6c) 0 nearly-empty
+ vptr=((& std::exception::_ZTVSt9exception) + 8u)
+
+Vtable for std::bad_exception
+std::bad_exception::_ZTVSt13bad_exception: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt13bad_exception)
+8 std::bad_exception::~bad_exception
+12 std::bad_exception::~bad_exception
+16 std::bad_exception::what
+
+Class std::bad_exception
+ size=4 align=4
+ base size=4 base align=4
+std::bad_exception (0xb68a9dc0) 0 nearly-empty
+ vptr=((& std::bad_exception::_ZTVSt13bad_exception) + 8u)
+ std::exception (0xb68add5c) 0 nearly-empty
+ primary-for std::bad_exception (0xb68a9dc0)
+
+Vtable for std::bad_alloc
+std::bad_alloc::_ZTVSt9bad_alloc: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTISt9bad_alloc)
+8 std::bad_alloc::~bad_alloc
+12 std::bad_alloc::~bad_alloc
+16 std::bad_alloc::what
+
+Class std::bad_alloc
+ size=4 align=4
+ base size=4 base align=4
+std::bad_alloc (0xb68a9f40) 0 nearly-empty
+ vptr=((& std::bad_alloc::_ZTVSt9bad_alloc) + 8u)
+ std::exception (0xb68adfb4) 0 nearly-empty
+ primary-for std::bad_alloc (0xb68a9f40)
+
+Class std::nothrow_t
+ size=1 align=1
+ base size=0 base align=1
+std::nothrow_t (0xb68c621c) 0 empty
+
+Class __locale_struct
+ size=116 align=4
+ base size=116 base align=4
+__locale_struct (0xb68c62d0) 0
+
+Class QListData::Data
+ size=24 align=4
+ base size=24 base align=4
+QListData::Data (0xb68c6348) 0
+
+Class QListData
+ size=4 align=4
+ base size=4 base align=4
+QListData (0xb68c630c) 0
+
+Class QScopedPointerPodDeleter
+ size=1 align=1
+ base size=0 base align=1
+QScopedPointerPodDeleter (0xb68c6b7c) 0 empty
+
+Class QInternal
+ size=1 align=1
+ base size=0 base align=1
+QInternal (0xb6616b40) 0 empty
+
+Class QGenericArgument
+ size=8 align=4
+ base size=8 base align=4
+QGenericArgument (0xb6616b7c) 0
+
+Class QGenericReturnArgument
+ size=8 align=4
+ base size=8 base align=4
+QGenericReturnArgument (0xb66c42c0) 0
+ QGenericArgument (0xb6616d98) 0
+
+Class QMetaObject
+ size=16 align=4
+ base size=16 base align=4
+QMetaObject (0xb6616f3c) 0
+
+Class QMetaObjectExtraData
+ size=8 align=4
+ base size=8 base align=4
+QMetaObjectExtraData (0xb66e1078) 0
+
+Class QByteArray::Data
+ size=20 align=4
+ base size=20 base align=4
+QByteArray::Data (0xb66e1690) 0
+
+Class QByteArray
+ size=4 align=4
+ base size=4 base align=4
+QByteArray (0xb66e1654) 0
+
+Class QByteRef
+ size=8 align=4
+ base size=8 base align=4
+QByteRef (0xb653a5a0) 0
+
+Class QString::Null
+ size=1 align=1
+ base size=0 base align=1
+QString::Null (0xb6556d5c) 0 empty
+
+Class QString::Data
+ size=20 align=4
+ base size=20 base align=4
+QString::Data (0xb6556d98) 0
+
+Class QString
+ size=4 align=4
+ base size=4 base align=4
+QString (0xb6556d20) 0
+
+Class QLatin1String
+ size=4 align=4
+ base size=4 base align=4
+QLatin1String (0xb643899c) 0
+
+Class QCharRef
+ size=8 align=4
+ base size=8 base align=4
+QCharRef (0xb649a690) 0
+
+Class QConstString
+ size=4 align=4
+ base size=4 base align=4
+QConstString (0xb63109c0) 0
+ QString (0xb6324dd4) 0
+
+Class QStringRef
+ size=12 align=4
+ base size=12 base align=4
+QStringRef (0xb635212c) 0
+
+Vtable for QObjectData
+QObjectData::_ZTV11QObjectData: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QObjectData)
+8 __cxa_pure_virtual
+12 __cxa_pure_virtual
+
+Class QObjectData
+ size=28 align=4
+ base size=28 base align=4
+QObjectData (0xb63a1078) 0
+ vptr=((& QObjectData::_ZTV11QObjectData) + 8u)
+
+Vtable for QObject
+QObject::_ZTV7QObject: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QObject)
+8 QObject::metaObject
+12 QObject::qt_metacast
+16 QObject::qt_metacall
+20 QObject::~QObject
+24 QObject::~QObject
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class QObject
+ size=8 align=4
+ base size=8 base align=4
+QObject (0xb63a112c) 0
+ vptr=((& QObject::_ZTV7QObject) + 8u)
+
+Vtable for QObjectUserData
+QObjectUserData::_ZTV15QObjectUserData: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI15QObjectUserData)
+8 QObjectUserData::~QObjectUserData
+12 QObjectUserData::~QObjectUserData
+
+Class QObjectUserData
+ size=4 align=4
+ base size=4 base align=4
+QObjectUserData (0xb63a199c) 0 nearly-empty
+ vptr=((& QObjectUserData::_ZTV15QObjectUserData) + 8u)
+
+Vtable for QIODevice
+QIODevice::_ZTV9QIODevice: 30u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI9QIODevice)
+8 QIODevice::metaObject
+12 QIODevice::qt_metacast
+16 QIODevice::qt_metacall
+20 QIODevice::~QIODevice
+24 QIODevice::~QIODevice
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QIODevice::isSequential
+60 QIODevice::open
+64 QIODevice::close
+68 QIODevice::pos
+72 QIODevice::size
+76 QIODevice::seek
+80 QIODevice::atEnd
+84 QIODevice::reset
+88 QIODevice::bytesAvailable
+92 QIODevice::bytesToWrite
+96 QIODevice::canReadLine
+100 QIODevice::waitForReadyRead
+104 QIODevice::waitForBytesWritten
+108 __cxa_pure_virtual
+112 QIODevice::readLineData
+116 __cxa_pure_virtual
+
+Class QIODevice
+ size=8 align=4
+ base size=8 base align=4
+QIODevice (0xb63f1180) 0
+ vptr=((& QIODevice::_ZTV9QIODevice) + 8u)
+ QObject (0xb63a1ac8) 0
+ primary-for QIODevice (0xb63f1180)
+
+Vtable for QDataStream
+QDataStream::_ZTV11QDataStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QDataStream)
+8 QDataStream::~QDataStream
+12 QDataStream::~QDataStream
+
+Class QDataStream
+ size=28 align=4
+ base size=28 base align=4
+QDataStream (0xb6218834) 0
+ vptr=((& QDataStream::_ZTV11QDataStream) + 8u)
+
+Class QHashData::Node
+ size=8 align=4
+ base size=8 base align=4
+QHashData::Node (0xb62753fc) 0
+
+Class QHashData
+ size=32 align=4
+ base size=32 base align=4
+QHashData (0xb62753c0) 0
+
+Class QHashDummyValue
+ size=1 align=1
+ base size=0 base align=1
+QHashDummyValue (0xb6275b04) 0 empty
+
+Class QMapData::Node
+ size=8 align=4
+ base size=8 base align=4
+QMapData::Node (0xb62a0258) 0
+
+Class QMapData
+ size=72 align=4
+ base size=72 base align=4
+QMapData (0xb62a021c) 0
+
+Vtable for QSystemLocale
+QSystemLocale::_ZTV13QSystemLocale: 6u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI13QSystemLocale)
+8 QSystemLocale::~QSystemLocale
+12 QSystemLocale::~QSystemLocale
+16 QSystemLocale::query
+20 QSystemLocale::fallbackLocale
+
+Class QSystemLocale
+ size=4 align=4
+ base size=4 base align=4
+QSystemLocale (0xb62a0564) 0 nearly-empty
+ vptr=((& QSystemLocale::_ZTV13QSystemLocale) + 8u)
+
+Class QLocale::Data
+ size=4 align=2
+ base size=4 base align=2
+QLocale::Data (0xb62a05dc) 0
+
+Class QLocale
+ size=4 align=4
+ base size=4 base align=4
+QLocale (0xb62a05a0) 0
+
+Class QTextCodec::ConverterState
+ size=28 align=4
+ base size=28 base align=4
+QTextCodec::ConverterState (0xb62a0c30) 0
+
+Vtable for QTextCodec
+QTextCodec::_ZTV10QTextCodec: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI10QTextCodec)
+8 __cxa_pure_virtual
+12 QTextCodec::aliases
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 QTextCodec::~QTextCodec
+32 QTextCodec::~QTextCodec
+
+Class QTextCodec
+ size=4 align=4
+ base size=4 base align=4
+QTextCodec (0xb62a0bf4) 0 nearly-empty
+ vptr=((& QTextCodec::_ZTV10QTextCodec) + 8u)
+
+Class QTextEncoder
+ size=32 align=4
+ base size=32 base align=4
+QTextEncoder (0xb6028924) 0
+
+Class QTextDecoder
+ size=32 align=4
+ base size=32 base align=4
+QTextDecoder (0xb6028b7c) 0
+
+Class _IO_marker
+ size=12 align=4
+ base size=12 base align=4
+_IO_marker (0xb6028f00) 0
+
+Class _IO_FILE
+ size=148 align=4
+ base size=148 base align=4
+_IO_FILE (0xb6028f3c) 0
+
+Vtable for QTextStream
+QTextStream::_ZTV11QTextStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI11QTextStream)
+8 QTextStream::~QTextStream
+12 QTextStream::~QTextStream
+
+Class QTextStream
+ size=8 align=4
+ base size=8 base align=4
+QTextStream (0xb6028fb4) 0
+ vptr=((& QTextStream::_ZTV11QTextStream) + 8u)
+
+Class QTextStreamManipulator
+ size=24 align=4
+ base size=22 base align=4
+QTextStreamManipulator (0xb609a654) 0
+
+Vtable for QTextIStream
+QTextIStream::_ZTV12QTextIStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QTextIStream)
+8 QTextIStream::~QTextIStream
+12 QTextIStream::~QTextIStream
+
+Class QTextIStream
+ size=8 align=4
+ base size=8 base align=4
+QTextIStream (0xb60a2bc0) 0
+ vptr=((& QTextIStream::_ZTV12QTextIStream) + 8u)
+ QTextStream (0xb60c6834) 0
+ primary-for QTextIStream (0xb60a2bc0)
+
+Vtable for QTextOStream
+QTextOStream::_ZTV12QTextOStream: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QTextOStream)
+8 QTextOStream::~QTextOStream
+12 QTextOStream::~QTextOStream
+
+Class QTextOStream
+ size=8 align=4
+ base size=8 base align=4
+QTextOStream (0xb60a2e80) 0
+ vptr=((& QTextOStream::_ZTV12QTextOStream) + 8u)
+ QTextStream (0xb60c6ec4) 0
+ primary-for QTextOStream (0xb60a2e80)
+
+Class wait
+ size=4 align=4
+ base size=4 base align=4
+wait (0xb60db564) 0
+
+Class timespec
+ size=8 align=4
+ base size=8 base align=4
+timespec (0xb60db708) 0
+
+Class timeval
+ size=8 align=4
+ base size=8 base align=4
+timeval (0xb60db744) 0
+
+Class __pthread_internal_slist
+ size=4 align=4
+ base size=4 base align=4
+__pthread_internal_slist (0xb60db7f8) 0
+
+Class random_data
+ size=28 align=4
+ base size=28 base align=4
+random_data (0xb60dbb04) 0
+
+Class drand48_data
+ size=24 align=4
+ base size=24 base align=4
+drand48_data (0xb60dbb40) 0
+
+Class QVectorData
+ size=16 align=4
+ base size=16 base align=4
+QVectorData (0xb60dbb7c) 0
+
+Class QContiguousCacheData
+ size=24 align=4
+ base size=24 base align=4
+QContiguousCacheData (0xb60dbe88) 0
+
+Class QDebug::Stream
+ size=24 align=4
+ base size=22 base align=4
+QDebug::Stream (0xb5e06078) 0
+
+Class QDebug
+ size=4 align=4
+ base size=4 base align=4
+QDebug (0xb5e0603c) 0
+
+Class QNoDebug
+ size=1 align=1
+ base size=0 base align=1
+QNoDebug (0xb5e57ca8) 0 empty
+
+Class QMetaType
+ size=1 align=1
+ base size=0 base align=1
+QMetaType (0xb5e57f3c) 0 empty
+
+Class QVariant::PrivateShared
+ size=8 align=4
+ base size=8 base align=4
+QVariant::PrivateShared (0xb5ed9d5c) 0
+
+Class QVariant::Private::Data
+ size=8 align=4
+ base size=8 base align=4
+QVariant::Private::Data (0xb5ed9dd4) 0
+
+Class QVariant::Private
+ size=12 align=4
+ base size=12 base align=4
+QVariant::Private (0xb5ed9d98) 0
+
+Class QVariant::Handler
+ size=36 align=4
+ base size=36 base align=4
+QVariant::Handler (0xb5ed9e4c) 0
+
+Class QVariant
+ size=12 align=4
+ base size=12 base align=4
+QVariant (0xb5ed9d20) 0
+
+Class QVariantComparisonHelper
+ size=4 align=4
+ base size=4 base align=4
+QVariantComparisonHelper (0xb5d66708) 0
+
+Class Phonon::ObjectDescriptionData
+ size=8 align=4
+ base size=8 base align=4
+Phonon::ObjectDescriptionData (0xb5d7ae40) 0
+ QSharedData (0xb5d66b7c) 0
+
+Class Phonon::Path
+ size=4 align=4
+ base size=4 base align=4
+Phonon::Path (0xb5dc7474) 0
+
+Vtable for Phonon::MediaNode
+Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon9MediaNodeE)
+8 Phonon::MediaNode::~MediaNode
+12 Phonon::MediaNode::~MediaNode
+
+Class Phonon::MediaNode
+ size=8 align=4
+ base size=8 base align=4
+Phonon::MediaNode (0xb5dc74ec) 0
+ vptr=((& Phonon::MediaNode::_ZTVN6Phonon9MediaNodeE) + 8u)
+
+Vtable for Phonon::AbstractAudioOutput
+Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+8 Phonon::AbstractAudioOutput::metaObject
+12 Phonon::AbstractAudioOutput::qt_metacast
+16 Phonon::AbstractAudioOutput::qt_metacall
+20 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+24 Phonon::AbstractAudioOutput::~AbstractAudioOutput
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon19AbstractAudioOutputE)
+64 Phonon::AbstractAudioOutput::_ZThn8_N6Phonon19AbstractAudioOutputD1Ev
+68 Phonon::AbstractAudioOutput::_ZThn8_N6Phonon19AbstractAudioOutputD0Ev
+
+Class Phonon::AbstractAudioOutput
+ size=16 align=4
+ base size=16 base align=4
+Phonon::AbstractAudioOutput (0xb5de4d70) 0
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 8u)
+ QObject (0xb5dc75a0) 0
+ primary-for Phonon::AbstractAudioOutput (0xb5de4d70)
+ Phonon::MediaNode (0xb5dc75dc) 8
+ vptr=((& Phonon::AbstractAudioOutput::_ZTVN6Phonon19AbstractAudioOutputE) + 64u)
+
+Vtable for Phonon::AbstractMediaStream
+Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractMediaStreamE)
+8 Phonon::AbstractMediaStream::metaObject
+12 Phonon::AbstractMediaStream::qt_metacast
+16 Phonon::AbstractMediaStream::qt_metacall
+20 Phonon::AbstractMediaStream::~AbstractMediaStream
+24 Phonon::AbstractMediaStream::~AbstractMediaStream
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 Phonon::AbstractMediaStream::enoughData
+68 Phonon::AbstractMediaStream::seekStream
+
+Class Phonon::AbstractMediaStream
+ size=12 align=4
+ base size=12 base align=4
+Phonon::AbstractMediaStream (0xb5dd7840) 0
+ vptr=((& Phonon::AbstractMediaStream::_ZTVN6Phonon19AbstractMediaStreamE) + 8u)
+ QObject (0xb5dc7a14) 0
+ primary-for Phonon::AbstractMediaStream (0xb5dd7840)
+
+Vtable for Phonon::AbstractVideoOutput
+Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19AbstractVideoOutputE)
+8 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+12 Phonon::AbstractVideoOutput::~AbstractVideoOutput
+
+Class Phonon::AbstractVideoOutput
+ size=8 align=4
+ base size=8 base align=4
+Phonon::AbstractVideoOutput (0xb5dd7b40) 0
+ vptr=((& Phonon::AbstractVideoOutput::_ZTVN6Phonon19AbstractVideoOutputE) + 8u)
+ Phonon::MediaNode (0xb5dc7c6c) 0
+ primary-for Phonon::AbstractVideoOutput (0xb5dd7b40)
+
+Vtable for Phonon::AddonInterface
+Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE: 6u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon14AddonInterfaceE)
+8 Phonon::AddonInterface::~AddonInterface
+12 Phonon::AddonInterface::~AddonInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+
+Class Phonon::AddonInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AddonInterface (0xb5dc7d98) 0 nearly-empty
+ vptr=((& Phonon::AddonInterface::_ZTVN6Phonon14AddonInterfaceE) + 8u)
+
+Vtable for Phonon::AudioDataOutput
+Phonon::AudioDataOutput::_ZTVN6Phonon15AudioDataOutputE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15AudioDataOutputE)
+8 Phonon::AudioDataOutput::metaObject
+12 Phonon::AudioDataOutput::qt_metacast
+16 Phonon::AudioDataOutput::qt_metacall
+20 Phonon::AudioDataOutput::~AudioDataOutput
+24 Phonon::AudioDataOutput::~AudioDataOutput
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon15AudioDataOutputE)
+64 Phonon::AudioDataOutput::_ZThn8_N6Phonon15AudioDataOutputD1Ev
+68 Phonon::AudioDataOutput::_ZThn8_N6Phonon15AudioDataOutputD0Ev
+
+Class Phonon::AudioDataOutput
+ size=16 align=4
+ base size=16 base align=4
+Phonon::AudioDataOutput (0xb5c110c0) 0
+ vptr=((& Phonon::AudioDataOutput::_ZTVN6Phonon15AudioDataOutputE) + 8u)
+ Phonon::AbstractAudioOutput (0xb5c0bc30) 0
+ primary-for Phonon::AudioDataOutput (0xb5c110c0)
+ QObject (0xb5c0d30c) 0
+ primary-for Phonon::AbstractAudioOutput (0xb5c0bc30)
+ Phonon::MediaNode (0xb5c0d348) 8
+ vptr=((& Phonon::AudioDataOutput::_ZTVN6Phonon15AudioDataOutputE) + 64u)
+
+Vtable for Phonon::AudioDataOutputInterface
+Phonon::AudioDataOutputInterface::_ZTVN6Phonon24AudioDataOutputInterfaceE: 6u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon24AudioDataOutputInterfaceE)
+8 Phonon::AudioDataOutputInterface::~AudioDataOutputInterface
+12 Phonon::AudioDataOutputInterface::~AudioDataOutputInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+
+Class Phonon::AudioDataOutputInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AudioDataOutputInterface (0xb5c0d564) 0 nearly-empty
+ vptr=((& Phonon::AudioDataOutputInterface::_ZTVN6Phonon24AudioDataOutputInterfaceE) + 8u)
+
+Vtable for Phonon::AudioOutput
+Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+8 Phonon::AudioOutput::metaObject
+12 Phonon::AudioOutput::qt_metacast
+16 Phonon::AudioOutput::qt_metacall
+20 Phonon::AudioOutput::~AudioOutput
+24 Phonon::AudioOutput::~AudioOutput
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon11AudioOutputE)
+64 Phonon::AudioOutput::_ZThn8_N6Phonon11AudioOutputD1Ev
+68 Phonon::AudioOutput::_ZThn8_N6Phonon11AudioOutputD0Ev
+
+Class Phonon::AudioOutput
+ size=16 align=4
+ base size=16 base align=4
+Phonon::AudioOutput (0xb5c11780) 0
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 8u)
+ Phonon::AbstractAudioOutput (0xb5c24460) 0
+ primary-for Phonon::AudioOutput (0xb5c11780)
+ QObject (0xb5c0da14) 0
+ primary-for Phonon::AbstractAudioOutput (0xb5c24460)
+ Phonon::MediaNode (0xb5c0da50) 8
+ vptr=((& Phonon::AudioOutput::_ZTVN6Phonon11AudioOutputE) + 64u)
+
+Vtable for Phonon::AudioOutputInterface40
+Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E: 8u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface40E)
+8 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+12 Phonon::AudioOutputInterface40::~AudioOutputInterface40
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface40
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AudioOutputInterface40 (0xb5c0dc6c) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface40::_ZTVN6Phonon22AudioOutputInterface40E) + 8u)
+
+Vtable for Phonon::AudioOutputInterface42
+Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon22AudioOutputInterface42E)
+8 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+12 Phonon::AudioOutputInterface42::~AudioOutputInterface42
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+
+Class Phonon::AudioOutputInterface42
+ size=4 align=4
+ base size=4 base align=4
+Phonon::AudioOutputInterface42 (0xb5c11c40) 0 nearly-empty
+ vptr=((& Phonon::AudioOutputInterface42::_ZTVN6Phonon22AudioOutputInterface42E) + 8u)
+ Phonon::AudioOutputInterface40 (0xb5c0de88) 0 nearly-empty
+ primary-for Phonon::AudioOutputInterface42 (0xb5c11c40)
+
+Vtable for Phonon::BackendCapabilities::Notifier
+Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon19BackendCapabilities8NotifierE)
+8 Phonon::BackendCapabilities::Notifier::metaObject
+12 Phonon::BackendCapabilities::Notifier::qt_metacast
+16 Phonon::BackendCapabilities::Notifier::qt_metacall
+20 Phonon::BackendCapabilities::Notifier::~Notifier
+24 Phonon::BackendCapabilities::Notifier::~Notifier
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class Phonon::BackendCapabilities::Notifier
+ size=8 align=4
+ base size=8 base align=4
+Phonon::BackendCapabilities::Notifier (0xb5c42240) 0
+ vptr=((& Phonon::BackendCapabilities::Notifier::_ZTVN6Phonon19BackendCapabilities8NotifierE) + 8u)
+ QObject (0xb5c3f3fc) 0
+ primary-for Phonon::BackendCapabilities::Notifier (0xb5c42240)
+
+Vtable for Phonon::BackendInterface
+Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE: 12u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon16BackendInterfaceE)
+8 Phonon::BackendInterface::~BackendInterface
+12 Phonon::BackendInterface::~BackendInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+
+Class Phonon::BackendInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::BackendInterface (0xb5c3f528) 0 nearly-empty
+ vptr=((& Phonon::BackendInterface::_ZTVN6Phonon16BackendInterfaceE) + 8u)
+
+Vtable for Phonon::Effect
+Phonon::Effect::_ZTVN6Phonon6EffectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+8 Phonon::Effect::metaObject
+12 Phonon::Effect::qt_metacast
+16 Phonon::Effect::qt_metacall
+20 Phonon::Effect::~Effect
+24 Phonon::Effect::~Effect
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon6EffectE)
+64 Phonon::Effect::_ZThn8_N6Phonon6EffectD1Ev
+68 Phonon::Effect::_ZThn8_N6Phonon6EffectD0Ev
+
+Class Phonon::Effect
+ size=16 align=4
+ base size=16 base align=4
+Phonon::Effect (0xb5c55370) 0
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 8u)
+ QObject (0xb5c3fa8c) 0
+ primary-for Phonon::Effect (0xb5c55370)
+ Phonon::MediaNode (0xb5c3fac8) 8
+ vptr=((& Phonon::Effect::_ZTVN6Phonon6EffectE) + 64u)
+
+Vtable for Phonon::EffectInterface
+Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15EffectInterfaceE)
+8 Phonon::EffectInterface::~EffectInterface
+12 Phonon::EffectInterface::~EffectInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+
+Class Phonon::EffectInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::EffectInterface (0xb5c3fce4) 0 nearly-empty
+ vptr=((& Phonon::EffectInterface::_ZTVN6Phonon15EffectInterfaceE) + 8u)
+
+Class Phonon::EffectParameter
+ size=4 align=4
+ base size=4 base align=4
+Phonon::EffectParameter (0xb5c67258) 0
+
+Class QMargins
+ size=16 align=4
+ base size=16 base align=4
+QMargins (0xb5c673c0) 0
+
+Class QSize
+ size=8 align=4
+ base size=8 base align=4
+QSize (0xb5c984ec) 0
+
+Class QSizeF
+ size=16 align=4
+ base size=16 base align=4
+QSizeF (0xb5cb0f78) 0
+
+Class QPoint
+ size=8 align=4
+ base size=8 base align=4
+QPoint (0xb5cdcb7c) 0
+
+Class QPointF
+ size=16 align=4
+ base size=16 base align=4
+QPointF (0xb5b0512c) 0
+
+Class QRect
+ size=16 align=4
+ base size=16 base align=4
+QRect (0xb5b1e834) 0
+
+Class QRectF
+ size=32 align=4
+ base size=32 base align=4
+QRectF (0xb5b7f474) 0
+
+Vtable for QPaintDevice
+QPaintDevice::_ZTV12QPaintDevice: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI12QPaintDevice)
+8 QPaintDevice::~QPaintDevice
+12 QPaintDevice::~QPaintDevice
+16 QPaintDevice::devType
+20 __cxa_pure_virtual
+24 QPaintDevice::metric
+
+Class QPaintDevice
+ size=8 align=4
+ base size=6 base align=4
+QPaintDevice (0xb5bda1e0) 0
+ vptr=((& QPaintDevice::_ZTV12QPaintDevice) + 8u)
+
+Class QRegExp
+ size=4 align=4
+ base size=4 base align=4
+QRegExp (0xb5bdad98) 0
+
+Class QStringMatcher::Data
+ size=264 align=4
+ base size=264 base align=4
+QStringMatcher::Data (0xb5a0c7bc) 0
+
+Class QStringMatcher
+ size=1036 align=4
+ base size=1036 base align=4
+QStringMatcher (0xb5a0c780) 0
+
+Class QStringList
+ size=4 align=4
+ base size=4 base align=4
+QStringList (0xb5a09300) 0
+ QList<QString> (0xb5a0c8e8) 0
+
+Class QColor
+ size=16 align=4
+ base size=14 base align=4
+QColor (0xb5a3be4c) 0
+
+Class QPolygon
+ size=4 align=4
+ base size=4 base align=4
+QPolygon (0xb5a65a80) 0
+ QVector<QPoint> (0xb5a8a4ec) 0
+
+Class QPolygonF
+ size=4 align=4
+ base size=4 base align=4
+QPolygonF (0xb5ac10c0) 0
+ QVector<QPointF> (0xb5a8aec4) 0
+
+Class QRegion::QRegionData
+ size=16 align=4
+ base size=16 base align=4
+QRegion::QRegionData (0xb5ada834) 0
+
+Class QRegion
+ size=4 align=4
+ base size=4 base align=4
+QRegion (0xb5ada7f8) 0
+
+Class QLine
+ size=16 align=4
+ base size=16 base align=4
+QLine (0xb5adab7c) 0
+
+Class QLineF
+ size=32 align=4
+ base size=32 base align=4
+QLineF (0xb59088ac) 0
+
+Class QMatrix
+ size=48 align=4
+ base size=48 base align=4
+QMatrix (0xb593399c) 0
+
+Class QPainterPath::Element
+ size=20 align=4
+ base size=20 base align=4
+QPainterPath::Element (0xb5961b40) 0
+
+Class QPainterPath
+ size=4 align=4
+ base size=4 base align=4
+QPainterPath (0xb5961b04) 0
+
+Class QPainterPathPrivate
+ size=8 align=4
+ base size=8 base align=4
+QPainterPathPrivate (0xb599f03c) 0
+
+Class QPainterPathStroker
+ size=4 align=4
+ base size=4 base align=4
+QPainterPathStroker (0xb599f168) 0
+
+Class QTransform
+ size=80 align=4
+ base size=80 base align=4
+QTransform (0xb59da0f0) 0
+
+Class QImageTextKeyLang
+ size=8 align=4
+ base size=8 base align=4
+QImageTextKeyLang (0xb583403c) 0
+
+Vtable for QImage
+QImage::_ZTV6QImage: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI6QImage)
+8 QImage::~QImage
+12 QImage::~QImage
+16 QImage::devType
+20 QImage::paintEngine
+24 QImage::metric
+
+Class QImage
+ size=12 align=4
+ base size=12 base align=4
+QImage (0xb5817d00) 0
+ vptr=((& QImage::_ZTV6QImage) + 8u)
+ QPaintDevice (0xb5834a14) 0
+ primary-for QImage (0xb5817d00)
+
+Vtable for QtSharedPointer::ExternalRefCountData
+QtSharedPointer::ExternalRefCountData::_ZTVN15QtSharedPointer20ExternalRefCountDataE: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN15QtSharedPointer20ExternalRefCountDataE)
+8 QtSharedPointer::ExternalRefCountData::~ExternalRefCountData
+12 QtSharedPointer::ExternalRefCountData::~ExternalRefCountData
+16 QtSharedPointer::ExternalRefCountData::destroy
+
+Class QtSharedPointer::ExternalRefCountData
+ size=12 align=4
+ base size=12 base align=4
+QtSharedPointer::ExternalRefCountData (0xb5898744) 0
+ vptr=((& QtSharedPointer::ExternalRefCountData::_ZTVN15QtSharedPointer20ExternalRefCountDataE) + 8u)
+
+Vtable for QtSharedPointer::ExternalRefCountWithDestroyFn
+QtSharedPointer::ExternalRefCountWithDestroyFn::_ZTVN15QtSharedPointer29ExternalRefCountWithDestroyFnE: 5u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN15QtSharedPointer29ExternalRefCountWithDestroyFnE)
+8 QtSharedPointer::ExternalRefCountWithDestroyFn::~ExternalRefCountWithDestroyFn
+12 QtSharedPointer::ExternalRefCountWithDestroyFn::~ExternalRefCountWithDestroyFn
+16 QtSharedPointer::ExternalRefCountWithDestroyFn::destroy
+
+Class QtSharedPointer::ExternalRefCountWithDestroyFn
+ size=16 align=4
+ base size=16 base align=4
+QtSharedPointer::ExternalRefCountWithDestroyFn (0xb58be3c0) 0
+ vptr=((& QtSharedPointer::ExternalRefCountWithDestroyFn::_ZTVN15QtSharedPointer29ExternalRefCountWithDestroyFnE) + 8u)
+ QtSharedPointer::ExternalRefCountData (0xb5898f3c) 0
+ primary-for QtSharedPointer::ExternalRefCountWithDestroyFn (0xb58be3c0)
+
+Vtable for QPixmap
+QPixmap::_ZTV7QPixmap: 7u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QPixmap)
+8 QPixmap::~QPixmap
+12 QPixmap::~QPixmap
+16 QPixmap::devType
+20 QPixmap::paintEngine
+24 QPixmap::metric
+
+Class QPixmap
+ size=12 align=4
+ base size=12 base align=4
+QPixmap (0xb57151c0) 0
+ vptr=((& QPixmap::_ZTV7QPixmap) + 8u)
+ QPaintDevice (0xb58c5474) 0
+ primary-for QPixmap (0xb57151c0)
+
+Class QBrush
+ size=4 align=4
+ base size=4 base align=4
+QBrush (0xb58c5ac8) 0
+
+Class QBrushData
+ size=104 align=4
+ base size=104 base align=4
+QBrushData (0xb58c5c6c) 0
+
+Class QGradient
+ size=56 align=4
+ base size=56 base align=4
+QGradient (0xb576803c) 0
+
+Class QLinearGradient
+ size=56 align=4
+ base size=56 base align=4
+QLinearGradient (0xb5784000) 0
+ QGradient (0xb57682d0) 0
+
+Class QRadialGradient
+ size=56 align=4
+ base size=56 base align=4
+QRadialGradient (0xb5784100) 0
+ QGradient (0xb576830c) 0
+
+Class QConicalGradient
+ size=56 align=4
+ base size=56 base align=4
+QConicalGradient (0xb5784200) 0
+ QGradient (0xb5768348) 0
+
+Class QPalette
+ size=8 align=4
+ base size=8 base align=4
+QPalette (0xb5768384) 0
+
+Class QColorGroup
+ size=8 align=4
+ base size=8 base align=4
+QColorGroup (0xb5784c40) 0
+ QPalette (0xb5768c6c) 0
+
+Class QFont
+ size=8 align=4
+ base size=8 base align=4
+QFont (0xb57c5dd4) 0
+
+Class QFontMetrics
+ size=4 align=4
+ base size=4 base align=4
+QFontMetrics (0xb5602000) 0
+
+Class QFontMetricsF
+ size=4 align=4
+ base size=4 base align=4
+QFontMetricsF (0xb5602258) 0
+
+Class QFontInfo
+ size=4 align=4
+ base size=4 base align=4
+QFontInfo (0xb560230c) 0
+
+Class QSizePolicy
+ size=4 align=4
+ base size=4 base align=4
+QSizePolicy (0xb5602348) 0
+
+Class QCursor
+ size=4 align=4
+ base size=4 base align=4
+QCursor (0xb567521c) 0
+
+Class QKeySequence
+ size=4 align=4
+ base size=4 base align=4
+QKeySequence (0xb5675258) 0
+
+Class QWidgetData
+ size=64 align=4
+ base size=64 base align=4
+QWidgetData (0xb5675474) 0
+
+Vtable for QWidget
+QWidget::_ZTV7QWidget: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI7QWidget)
+8 QWidget::metaObject
+12 QWidget::qt_metacast
+16 QWidget::qt_metacall
+20 QWidget::~QWidget
+24 QWidget::~QWidget
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTI7QWidget)
+232 QWidget::_ZThn8_N7QWidgetD1Ev
+236 QWidget::_ZThn8_N7QWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class QWidget
+ size=20 align=4
+ base size=20 base align=4
+QWidget (0xb56ab730) 0
+ vptr=((& QWidget::_ZTV7QWidget) + 8u)
+ QObject (0xb56754b0) 0
+ primary-for QWidget (0xb56ab730)
+ QPaintDevice (0xb56754ec) 8
+ vptr=((& QWidget::_ZTV7QWidget) + 232u)
+
+Vtable for Phonon::EffectWidget
+Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+8 Phonon::EffectWidget::metaObject
+12 Phonon::EffectWidget::qt_metacast
+16 Phonon::EffectWidget::qt_metacall
+20 Phonon::EffectWidget::~EffectWidget
+24 Phonon::EffectWidget::~EffectWidget
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon12EffectWidgetE)
+232 Phonon::EffectWidget::_ZThn8_N6Phonon12EffectWidgetD1Ev
+236 Phonon::EffectWidget::_ZThn8_N6Phonon12EffectWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::EffectWidget
+ size=24 align=4
+ base size=24 base align=4
+Phonon::EffectWidget (0xb554cac0) 0
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 8u)
+ QWidget (0xb5572000) 0
+ primary-for Phonon::EffectWidget (0xb554cac0)
+ QObject (0xb554fc30) 0
+ primary-for QWidget (0xb5572000)
+ QPaintDevice (0xb554fc6c) 8
+ vptr=((& Phonon::EffectWidget::_ZTVN6Phonon12EffectWidgetE) + 232u)
+
+Vtable for Phonon::GlobalConfig
+Phonon::GlobalConfig::_ZTVN6Phonon12GlobalConfigE: 4u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12GlobalConfigE)
+8 Phonon::GlobalConfig::~GlobalConfig
+12 Phonon::GlobalConfig::~GlobalConfig
+
+Class Phonon::GlobalConfig
+ size=8 align=4
+ base size=8 base align=4
+Phonon::GlobalConfig (0xb554fe10) 0
+ vptr=((& Phonon::GlobalConfig::_ZTVN6Phonon12GlobalConfigE) + 8u)
+
+Vtable for Phonon::MediaController
+Phonon::MediaController::_ZTVN6Phonon15MediaControllerE: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15MediaControllerE)
+8 Phonon::MediaController::metaObject
+12 Phonon::MediaController::qt_metacast
+16 Phonon::MediaController::qt_metacall
+20 Phonon::MediaController::~MediaController
+24 Phonon::MediaController::~MediaController
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class Phonon::MediaController
+ size=12 align=4
+ base size=12 base align=4
+Phonon::MediaController (0xb554ce40) 0
+ vptr=((& Phonon::MediaController::_ZTVN6Phonon15MediaControllerE) + 8u)
+ QObject (0xb554fec4) 0
+ primary-for Phonon::MediaController (0xb554ce40)
+
+Class Phonon::MediaSource
+ size=4 align=4
+ base size=4 base align=4
+Phonon::MediaSource (0xb558e0f0) 0
+
+Vtable for Phonon::MediaObject
+Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+8 Phonon::MediaObject::metaObject
+12 Phonon::MediaObject::qt_metacast
+16 Phonon::MediaObject::qt_metacall
+20 Phonon::MediaObject::~MediaObject
+24 Phonon::MediaObject::~MediaObject
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon11MediaObjectE)
+64 Phonon::MediaObject::_ZThn8_N6Phonon11MediaObjectD1Ev
+68 Phonon::MediaObject::_ZThn8_N6Phonon11MediaObjectD0Ev
+
+Class Phonon::MediaObject
+ size=16 align=4
+ base size=16 base align=4
+Phonon::MediaObject (0xb55aee60) 0
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 8u)
+ QObject (0xb558e168) 0
+ primary-for Phonon::MediaObject (0xb55aee60)
+ Phonon::MediaNode (0xb558e1a4) 8
+ vptr=((& Phonon::MediaObject::_ZTVN6Phonon11MediaObjectE) + 64u)
+
+Vtable for Phonon::MediaObjectInterface
+Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE: 25u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20MediaObjectInterfaceE)
+8 Phonon::MediaObjectInterface::~MediaObjectInterface
+12 Phonon::MediaObjectInterface::~MediaObjectInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 __cxa_pure_virtual
+76 __cxa_pure_virtual
+80 Phonon::MediaObjectInterface::remainingTime
+84 __cxa_pure_virtual
+88 __cxa_pure_virtual
+92 __cxa_pure_virtual
+96 __cxa_pure_virtual
+
+Class Phonon::MediaObjectInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::MediaObjectInterface (0xb558e3c0) 0 nearly-empty
+ vptr=((& Phonon::MediaObjectInterface::_ZTVN6Phonon20MediaObjectInterfaceE) + 8u)
+
+Class QModelIndex
+ size=16 align=4
+ base size=16 base align=4
+QModelIndex (0xb558e99c) 0
+
+Class QPersistentModelIndex
+ size=4 align=4
+ base size=4 base align=4
+QPersistentModelIndex (0xb55dae4c) 0
+
+Vtable for QAbstractItemModel
+QAbstractItemModel::_ZTV18QAbstractItemModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI18QAbstractItemModel)
+8 QAbstractItemModel::metaObject
+12 QAbstractItemModel::qt_metacast
+16 QAbstractItemModel::qt_metacall
+20 QAbstractItemModel::~QAbstractItemModel
+24 QAbstractItemModel::~QAbstractItemModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 QAbstractItemModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractItemModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractItemModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractItemModel (0xb53da440) 0
+ vptr=((& QAbstractItemModel::_ZTV18QAbstractItemModel) + 8u)
+ QObject (0xb55dafb4) 0
+ primary-for QAbstractItemModel (0xb53da440)
+
+Vtable for QAbstractTableModel
+QAbstractTableModel::_ZTV19QAbstractTableModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI19QAbstractTableModel)
+8 QAbstractTableModel::metaObject
+12 QAbstractTableModel::qt_metacast
+16 QAbstractTableModel::qt_metacall
+20 QAbstractTableModel::~QAbstractTableModel
+24 QAbstractTableModel::~QAbstractTableModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QAbstractTableModel::index
+60 QAbstractTableModel::parent
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+72 QAbstractTableModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractTableModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractTableModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractTableModel (0xb53daa80) 0
+ vptr=((& QAbstractTableModel::_ZTV19QAbstractTableModel) + 8u)
+ QAbstractItemModel (0xb53daac0) 0
+ primary-for QAbstractTableModel (0xb53daa80)
+ QObject (0xb5406924) 0
+ primary-for QAbstractItemModel (0xb53daac0)
+
+Vtable for QAbstractListModel
+QAbstractListModel::_ZTV18QAbstractListModel: 42u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTI18QAbstractListModel)
+8 QAbstractListModel::metaObject
+12 QAbstractListModel::qt_metacast
+16 QAbstractListModel::qt_metacall
+20 QAbstractListModel::~QAbstractListModel
+24 QAbstractListModel::~QAbstractListModel
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QAbstractListModel::index
+60 QAbstractListModel::parent
+64 __cxa_pure_virtual
+68 QAbstractListModel::columnCount
+72 QAbstractListModel::hasChildren
+76 __cxa_pure_virtual
+80 QAbstractItemModel::setData
+84 QAbstractItemModel::headerData
+88 QAbstractItemModel::setHeaderData
+92 QAbstractItemModel::itemData
+96 QAbstractItemModel::setItemData
+100 QAbstractItemModel::mimeTypes
+104 QAbstractItemModel::mimeData
+108 QAbstractListModel::dropMimeData
+112 QAbstractItemModel::supportedDropActions
+116 QAbstractItemModel::insertRows
+120 QAbstractItemModel::insertColumns
+124 QAbstractItemModel::removeRows
+128 QAbstractItemModel::removeColumns
+132 QAbstractItemModel::fetchMore
+136 QAbstractItemModel::canFetchMore
+140 QAbstractItemModel::flags
+144 QAbstractItemModel::sort
+148 QAbstractItemModel::buddy
+152 QAbstractItemModel::match
+156 QAbstractItemModel::span
+160 QAbstractItemModel::submit
+164 QAbstractItemModel::revert
+
+Class QAbstractListModel
+ size=8 align=4
+ base size=8 base align=4
+QAbstractListModel (0xb53dad00) 0
+ vptr=((& QAbstractListModel::_ZTV18QAbstractListModel) + 8u)
+ QAbstractItemModel (0xb53dad40) 0
+ primary-for QAbstractListModel (0xb53dad00)
+ QObject (0xb5406a50) 0
+ primary-for QAbstractItemModel (0xb53dad40)
+
+Class Phonon::ObjectDescriptionModelData
+ size=4 align=4
+ base size=4 base align=4
+Phonon::ObjectDescriptionModelData (0xb5432924) 0
+
+Vtable for Phonon::PlatformPlugin
+Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE: 16u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon14PlatformPluginE)
+8 Phonon::PlatformPlugin::~PlatformPlugin
+12 Phonon::PlatformPlugin::~PlatformPlugin
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 Phonon::PlatformPlugin::deviceAccessListFor
+
+Class Phonon::PlatformPlugin
+ size=4 align=4
+ base size=4 base align=4
+Phonon::PlatformPlugin (0xb5432a8c) 0 nearly-empty
+ vptr=((& Phonon::PlatformPlugin::_ZTVN6Phonon14PlatformPluginE) + 8u)
+
+Vtable for Phonon::PulseSupport
+Phonon::PulseSupport::_ZTVN6Phonon12PulseSupportE: 14u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12PulseSupportE)
+8 Phonon::PulseSupport::metaObject
+12 Phonon::PulseSupport::qt_metacast
+16 Phonon::PulseSupport::qt_metacall
+20 Phonon::PulseSupport::~PulseSupport
+24 Phonon::PulseSupport::~PulseSupport
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+
+Class Phonon::PulseSupport
+ size=12 align=4
+ base size=9 base align=4
+Phonon::PulseSupport (0xb547f340) 0
+ vptr=((& Phonon::PulseSupport::_ZTVN6Phonon12PulseSupportE) + 8u)
+ QObject (0xb549903c) 0
+ primary-for Phonon::PulseSupport (0xb547f340)
+
+Vtable for Phonon::SeekSlider
+Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+8 Phonon::SeekSlider::metaObject
+12 Phonon::SeekSlider::qt_metacast
+16 Phonon::SeekSlider::qt_metacall
+20 Phonon::SeekSlider::~SeekSlider
+24 Phonon::SeekSlider::~SeekSlider
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon10SeekSliderE)
+232 Phonon::SeekSlider::_ZThn8_N6Phonon10SeekSliderD1Ev
+236 Phonon::SeekSlider::_ZThn8_N6Phonon10SeekSliderD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::SeekSlider
+ size=24 align=4
+ base size=24 base align=4
+Phonon::SeekSlider (0xb547f580) 0
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 8u)
+ QWidget (0xb549e910) 0
+ primary-for Phonon::SeekSlider (0xb547f580)
+ QObject (0xb5499168) 0
+ primary-for QWidget (0xb549e910)
+ QPaintDevice (0xb54991a4) 8
+ vptr=((& Phonon::SeekSlider::_ZTVN6Phonon10SeekSliderE) + 232u)
+
+Vtable for Phonon::StreamInterface
+Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE: 8u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon15StreamInterfaceE)
+8 Phonon::StreamInterface::~StreamInterface
+12 Phonon::StreamInterface::~StreamInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+
+Class Phonon::StreamInterface
+ size=8 align=4
+ base size=8 base align=4
+Phonon::StreamInterface (0xb5499348) 0
+ vptr=((& Phonon::StreamInterface::_ZTVN6Phonon15StreamInterfaceE) + 8u)
+
+Vtable for Phonon::VideoPlayer
+Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+8 Phonon::VideoPlayer::metaObject
+12 Phonon::VideoPlayer::qt_metacast
+16 Phonon::VideoPlayer::qt_metacall
+20 Phonon::VideoPlayer::~VideoPlayer
+24 Phonon::VideoPlayer::~VideoPlayer
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon11VideoPlayerE)
+232 Phonon::VideoPlayer::_ZThn8_N6Phonon11VideoPlayerD1Ev
+236 Phonon::VideoPlayer::_ZThn8_N6Phonon11VideoPlayerD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VideoPlayer
+ size=24 align=4
+ base size=24 base align=4
+Phonon::VideoPlayer (0xb547fac0) 0
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 8u)
+ QWidget (0xb54ba1e0) 0
+ primary-for Phonon::VideoPlayer (0xb547fac0)
+ QObject (0xb5499708) 0
+ primary-for QWidget (0xb54ba1e0)
+ QPaintDevice (0xb5499744) 8
+ vptr=((& Phonon::VideoPlayer::_ZTVN6Phonon11VideoPlayerE) + 232u)
+
+Vtable for Phonon::VideoWidget
+Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE: 67u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+8 Phonon::VideoWidget::metaObject
+12 Phonon::VideoWidget::qt_metacast
+16 Phonon::VideoWidget::qt_metacall
+20 Phonon::VideoWidget::~VideoWidget
+24 Phonon::VideoWidget::~VideoWidget
+28 Phonon::VideoWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 Phonon::VideoWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+232 Phonon::VideoWidget::_ZThn8_N6Phonon11VideoWidgetD1Ev
+236 Phonon::VideoWidget::_ZThn8_N6Phonon11VideoWidgetD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+252 (int (*)(...))-0x000000014
+256 (int (*)(...))(& _ZTIN6Phonon11VideoWidgetE)
+260 Phonon::VideoWidget::_ZThn20_N6Phonon11VideoWidgetD1Ev
+264 Phonon::VideoWidget::_ZThn20_N6Phonon11VideoWidgetD0Ev
+
+Class Phonon::VideoWidget
+ size=28 align=4
+ base size=28 base align=4
+Phonon::VideoWidget (0xb54bfaa0) 0
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 8u)
+ QWidget (0xb54bfaf0) 0
+ primary-for Phonon::VideoWidget (0xb54bfaa0)
+ QObject (0xb5499870) 0
+ primary-for QWidget (0xb54bfaf0)
+ QPaintDevice (0xb54998ac) 8
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 232u)
+ Phonon::AbstractVideoOutput (0xb547fd00) 20
+ vptr=((& Phonon::VideoWidget::_ZTVN6Phonon11VideoWidgetE) + 260u)
+ Phonon::MediaNode (0xb54998e8) 20
+ primary-for Phonon::AbstractVideoOutput (0xb547fd00)
+
+Vtable for Phonon::VideoWidgetInterface
+Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE: 17u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20VideoWidgetInterfaceE)
+8 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+12 Phonon::VideoWidgetInterface::~VideoWidgetInterface
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+
+Class Phonon::VideoWidgetInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::VideoWidgetInterface (0xb5499b04) 0 nearly-empty
+ vptr=((& Phonon::VideoWidgetInterface::_ZTVN6Phonon20VideoWidgetInterfaceE) + 8u)
+
+Vtable for Phonon::VideoWidgetInterface44
+Phonon::VideoWidgetInterface44::_ZTVN6Phonon22VideoWidgetInterface44E: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon22VideoWidgetInterface44E)
+8 Phonon::VideoWidgetInterface44::~VideoWidgetInterface44
+12 Phonon::VideoWidgetInterface44::~VideoWidgetInterface44
+16 __cxa_pure_virtual
+20 __cxa_pure_virtual
+24 __cxa_pure_virtual
+28 __cxa_pure_virtual
+32 __cxa_pure_virtual
+36 __cxa_pure_virtual
+40 __cxa_pure_virtual
+44 __cxa_pure_virtual
+48 __cxa_pure_virtual
+52 __cxa_pure_virtual
+56 __cxa_pure_virtual
+60 __cxa_pure_virtual
+64 __cxa_pure_virtual
+68 __cxa_pure_virtual
+
+Class Phonon::VideoWidgetInterface44
+ size=4 align=4
+ base size=4 base align=4
+Phonon::VideoWidgetInterface44 (0xb52dd1c0) 0 nearly-empty
+ vptr=((& Phonon::VideoWidgetInterface44::_ZTVN6Phonon22VideoWidgetInterface44E) + 8u)
+ Phonon::VideoWidgetInterface (0xb5499d20) 0 nearly-empty
+ primary-for Phonon::VideoWidgetInterface44 (0xb52dd1c0)
+
+Vtable for Phonon::VolumeFaderEffect
+Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE: 18u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+8 Phonon::VolumeFaderEffect::metaObject
+12 Phonon::VolumeFaderEffect::qt_metacast
+16 Phonon::VolumeFaderEffect::qt_metacall
+20 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+24 Phonon::VolumeFaderEffect::~VolumeFaderEffect
+28 QObject::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 (int (*)(...))-0x000000008
+60 (int (*)(...))(& _ZTIN6Phonon17VolumeFaderEffectE)
+64 Phonon::VolumeFaderEffect::_ZThn8_N6Phonon17VolumeFaderEffectD1Ev
+68 Phonon::VolumeFaderEffect::_ZThn8_N6Phonon17VolumeFaderEffectD0Ev
+
+Class Phonon::VolumeFaderEffect
+ size=16 align=4
+ base size=16 base align=4
+Phonon::VolumeFaderEffect (0xb52dd840) 0
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 8u)
+ Phonon::Effect (0xb52e68c0) 0
+ primary-for Phonon::VolumeFaderEffect (0xb52dd840)
+ QObject (0xb52e730c) 0
+ primary-for Phonon::Effect (0xb52e68c0)
+ Phonon::MediaNode (0xb52e7348) 8
+ vptr=((& Phonon::VolumeFaderEffect::_ZTVN6Phonon17VolumeFaderEffectE) + 64u)
+
+Vtable for Phonon::VolumeFaderInterface
+Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE: 9u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon20VolumeFaderInterfaceE)
+8 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+12 Phonon::VolumeFaderInterface::~VolumeFaderInterface
+16 Phonon::VolumeFaderInterface::volume
+20 Phonon::VolumeFaderInterface::setVolume
+24 Phonon::VolumeFaderInterface::fadeCurve
+28 Phonon::VolumeFaderInterface::setFadeCurve
+32 Phonon::VolumeFaderInterface::fadeTo
+
+Class Phonon::VolumeFaderInterface
+ size=4 align=4
+ base size=4 base align=4
+Phonon::VolumeFaderInterface (0xb52e7564) 0 nearly-empty
+ vptr=((& Phonon::VolumeFaderInterface::_ZTVN6Phonon20VolumeFaderInterfaceE) + 8u)
+
+Vtable for Phonon::VolumeSlider
+Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE: 63u entries
+0 (int (*)(...))0
+4 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+8 Phonon::VolumeSlider::metaObject
+12 Phonon::VolumeSlider::qt_metacast
+16 Phonon::VolumeSlider::qt_metacall
+20 Phonon::VolumeSlider::~VolumeSlider
+24 Phonon::VolumeSlider::~VolumeSlider
+28 QWidget::event
+32 QObject::eventFilter
+36 QObject::timerEvent
+40 QObject::childEvent
+44 QObject::customEvent
+48 QObject::connectNotify
+52 QObject::disconnectNotify
+56 QWidget::devType
+60 QWidget::setVisible
+64 QWidget::sizeHint
+68 QWidget::minimumSizeHint
+72 QWidget::heightForWidth
+76 QWidget::paintEngine
+80 QWidget::mousePressEvent
+84 QWidget::mouseReleaseEvent
+88 QWidget::mouseDoubleClickEvent
+92 QWidget::mouseMoveEvent
+96 QWidget::wheelEvent
+100 QWidget::keyPressEvent
+104 QWidget::keyReleaseEvent
+108 QWidget::focusInEvent
+112 QWidget::focusOutEvent
+116 QWidget::enterEvent
+120 QWidget::leaveEvent
+124 QWidget::paintEvent
+128 QWidget::moveEvent
+132 QWidget::resizeEvent
+136 QWidget::closeEvent
+140 QWidget::contextMenuEvent
+144 QWidget::tabletEvent
+148 QWidget::actionEvent
+152 QWidget::dragEnterEvent
+156 QWidget::dragMoveEvent
+160 QWidget::dragLeaveEvent
+164 QWidget::dropEvent
+168 QWidget::showEvent
+172 QWidget::hideEvent
+176 QWidget::x11Event
+180 QWidget::changeEvent
+184 QWidget::metric
+188 QWidget::inputMethodEvent
+192 QWidget::inputMethodQuery
+196 QWidget::focusNextPrevChild
+200 QWidget::styleChange
+204 QWidget::enabledChange
+208 QWidget::paletteChange
+212 QWidget::fontChange
+216 QWidget::windowActivationChange
+220 QWidget::languageChange
+224 (int (*)(...))-0x000000008
+228 (int (*)(...))(& _ZTIN6Phonon12VolumeSliderE)
+232 Phonon::VolumeSlider::_ZThn8_N6Phonon12VolumeSliderD1Ev
+236 Phonon::VolumeSlider::_ZThn8_N6Phonon12VolumeSliderD0Ev
+240 QWidget::_ZThn8_NK7QWidget7devTypeEv
+244 QWidget::_ZThn8_NK7QWidget11paintEngineEv
+248 QWidget::_ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE
+
+Class Phonon::VolumeSlider
+ size=24 align=4
+ base size=24 base align=4
+Phonon::VolumeSlider (0xb5301140) 0
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 8u)
+ QWidget (0xb52fc640) 0
+ primary-for Phonon::VolumeSlider (0xb5301140)
+ QObject (0xb52e7ac8) 0
+ primary-for QWidget (0xb52fc640)
+ QPaintDevice (0xb52e7b04) 8
+ vptr=((& Phonon::VolumeSlider::_ZTVN6Phonon12VolumeSliderE) + 232u)
+
diff --git a/tests/auto/mediaobject/.gitignore b/tests/auto/mediaobject/.gitignore
new file mode 100644
index 0000000..2b4d356
--- /dev/null
+++ b/tests/auto/mediaobject/.gitignore
@@ -0,0 +1 @@
+tst_mediaobject
diff --git a/tests/auto/mediaobject/dummy/README b/tests/auto/mediaobject/dummy/README
new file mode 100644
index 0000000..43f69d9
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/README
@@ -0,0 +1 @@
+This is a dummy backend for phonon, used for testing purposes.
diff --git a/tests/auto/mediaobject/dummy/audiooutput.cpp b/tests/auto/mediaobject/dummy/audiooutput.cpp
new file mode 100644
index 0000000..2645e20
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/audiooutput.cpp
@@ -0,0 +1,94 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "audiooutput.h"
+#include "backend.h"
+#include <phonon/audiooutput.h>
+
+QT_BEGIN_NAMESPACE
+
+namespace Phonon
+{
+namespace Dummy
+{
+AudioOutput::AudioOutput(Backend *backend, QObject *parent)
+ : QObject(parent)
+{
+ Q_UNUSED(backend)
+
+ m_volumeLevel = 100;
+}
+
+AudioOutput::~AudioOutput()
+{
+}
+
+qreal AudioOutput::volume() const
+{
+ return m_volumeLevel;
+}
+
+int AudioOutput::outputDevice() const
+{
+ return m_device;
+}
+
+void AudioOutput::setVolume(qreal newVolume)
+{
+ m_volumeLevel = newVolume;
+ emit volumeChanged(newVolume);
+}
+
+bool AudioOutput::setOutputDevice(int newDevice)
+{
+ return (newDevice == 0);
+}
+
+bool AudioOutput::setOutputDevice(const AudioOutputDevice &newDevice)
+{
+ return setOutputDevice(newDevice.index());
+}
+
+}
+} //namespace Phonon::Dummy
+
+QT_END_NAMESPACE
+#include "moc_audiooutput.cpp"
diff --git a/tests/auto/mediaobject/dummy/audiooutput.h b/tests/auto/mediaobject/dummy/audiooutput.h
new file mode 100644
index 0000000..4acdd8a
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/audiooutput.h
@@ -0,0 +1,82 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef PHONON_DUMMY_AUDIOOUTPUT_H
+#define PHONON_DUMMY_AUDIOOUTPUT_H
+
+#include "backend.h"
+#include <phonon/audiooutputinterface.h>
+#include <phonon/phononnamespace.h>
+
+QT_BEGIN_NAMESPACE
+
+namespace Phonon
+{
+namespace Dummy
+{
+class AudioOutput : public QObject, public AudioOutputInterface
+{
+ Q_OBJECT
+ Q_INTERFACES(Phonon::AudioOutputInterface)
+public:
+ AudioOutput(Backend *backend, QObject *parent);
+ ~AudioOutput();
+
+ qreal volume() const;
+ int outputDevice() const;
+ void setVolume(qreal newVolume);
+ bool setOutputDevice(int newDevice);
+ bool setOutputDevice(const AudioOutputDevice &newDevice);
+
+Q_SIGNALS:
+ void volumeChanged(qreal newVolume);
+ void audioDeviceFailed();
+
+private:
+ qreal m_volumeLevel;
+ int m_device;
+};
+}
+} //namespace Phonon::Dummy
+
+QT_END_NAMESPACE
+
+#endif // PHONON_DUMMY_AUDIOOUTPUT_H
diff --git a/tests/auto/mediaobject/dummy/backend.cpp b/tests/auto/mediaobject/dummy/backend.cpp
new file mode 100644
index 0000000..1db89cc
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/backend.cpp
@@ -0,0 +1,190 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "audiooutput.h"
+#include "mediaobject.h"
+#include "videowidget.h"
+
+#include "backend.h"
+
+#include <QtCore/QSet>
+#include <QtCore/QVariant>
+#include <QtCore/QtPlugin>
+
+QT_BEGIN_NAMESPACE
+
+Q_EXPORT_PLUGIN2(phonon_dummy, Phonon::Dummy::Backend)
+
+namespace Phonon
+{
+namespace Dummy
+{
+
+Backend::Backend(QObject *parent, const QVariantList &)
+ : QObject(parent)
+{
+ qWarning()<<"Using TEST Phonon backend";
+}
+
+Backend::~Backend()
+{
+}
+
+/***
+ * !reimp
+ */
+QObject *Backend::createObject(BackendInterface::Class c, QObject *parent, const QList<QVariant> &args)
+{
+ Q_UNUSED(args)
+
+ switch (c) {
+ case MediaObjectClass:
+ return new MediaObject(this, parent);
+
+ case AudioOutputClass: {
+ AudioOutput *ao = new AudioOutput(this, parent);
+ m_audioOutputs.append(ao);
+ return ao;
+ }
+ case VideoWidgetClass: {
+ QWidget *widget = qobject_cast<QWidget*>(parent);
+ return new VideoWidget(this, widget);
+ }
+ default:
+ qWarning("createObject() : Backend object not available");
+ }
+ return 0;
+}
+
+/***
+ * !reimp
+ */
+QStringList Backend::availableMimeTypes() const
+{
+ QStringList availableMimeTypes;
+ // audio *.wav and *.mp3 files
+ availableMimeTypes << QLatin1String("audio/x-mp3");
+ availableMimeTypes << QLatin1String("audio/x-wav");
+
+ // video *.ogv, *.mp4, *.avi (some)
+
+ availableMimeTypes << QLatin1String("video/mpeg");
+ availableMimeTypes << QLatin1String("video/ogg");
+ availableMimeTypes << QLatin1String("video/mp4");
+
+ return availableMimeTypes;
+}
+
+/***
+ * !reimp
+ */
+QList<int> Backend::objectDescriptionIndexes(ObjectDescriptionType type) const
+{
+ QList<int> list;
+
+ if(type == Phonon::AudioOutputDeviceType)
+ list.append(0);
+
+ return list;
+}
+
+/***
+ * !reimp
+ */
+QHash<QByteArray, QVariant> Backend::objectDescriptionProperties(ObjectDescriptionType type, int index) const
+{
+ Q_UNUSED(index);
+ QHash<QByteArray, QVariant> ret;
+
+ if(type == Phonon::AudioOutputDeviceType)
+ ret["name"] = QLatin1String("default audio device");
+
+ return ret;
+}
+
+/***
+ * !reimp
+ */
+bool Backend::startConnectionChange(QSet<QObject *> objects)
+{
+ Q_UNUSED(objects)
+
+ return true;
+}
+
+/***
+ * !reimp
+ */
+bool Backend::connectNodes(QObject *source, QObject *sink)
+{
+ Q_UNUSED(source)
+ Q_UNUSED(sink)
+
+ return true;
+}
+
+/***
+ * !reimp
+ */
+bool Backend::disconnectNodes(QObject *source, QObject *sink)
+{
+ Q_UNUSED(source)
+ Q_UNUSED(sink)
+
+ return true;
+}
+
+/***
+ * !reimp
+ */
+bool Backend::endConnectionChange(QSet<QObject *> objects)
+{
+ Q_UNUSED(objects)
+
+ return true;
+}
+
+}
+}
+
+QT_END_NAMESPACE
+
+#include "moc_backend.cpp"
diff --git a/tests/auto/mediaobject/dummy/backend.h b/tests/auto/mediaobject/dummy/backend.h
new file mode 100644
index 0000000..40833ea
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/backend.h
@@ -0,0 +1,96 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef PHONON_DUMMY_BACKEND_H
+#define PHONON_DUMMY_BACKEND_H
+
+#include <phonon/objectdescription.h>
+#include <phonon/backendinterface.h>
+
+#include <phonon/medianode.h>
+
+#include <QtCore/QList>
+#include <QtCore/QPointer>
+#include <QtCore/QStringList>
+#include <QtCore/QTimer>
+
+QT_BEGIN_NAMESPACE
+
+namespace Phonon
+{
+namespace Dummy
+{
+class AudioOutput;
+class MediaObject;
+
+class Backend : public QObject, public BackendInterface
+{
+ Q_OBJECT
+ Q_INTERFACES(Phonon::BackendInterface)
+
+public:
+ Backend(QObject *parent = 0, const QVariantList & = QVariantList());
+ virtual ~Backend();
+
+ QObject *createObject(BackendInterface::Class, QObject *parent, const QList<QVariant> &args);
+
+ QStringList availableMimeTypes() const;
+
+ QList<int> objectDescriptionIndexes(ObjectDescriptionType type) const;
+ QHash<QByteArray, QVariant> objectDescriptionProperties(ObjectDescriptionType type, int index) const;
+
+ bool startConnectionChange(QSet<QObject *>);
+ bool connectNodes(QObject *, QObject *);
+ bool disconnectNodes(QObject *, QObject *);
+ bool endConnectionChange(QSet<QObject *>);
+
+Q_SIGNALS:
+ void objectDescriptionChanged(ObjectDescriptionType);
+
+private:
+ QList<QPointer<AudioOutput> > m_audioOutputs;
+};
+}
+} // namespace Phonon::Dummy
+
+QT_END_NAMESPACE
+
+#endif // PHONON_DUMMY_BACKEND_H
diff --git a/tests/auto/mediaobject/dummy/dummy.pro b/tests/auto/mediaobject/dummy/dummy.pro
new file mode 100644
index 0000000..9797500
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/dummy.pro
@@ -0,0 +1,23 @@
+TEMPLATE = lib
+
+isEmpty(QT_MAJOR_VERSION) {
+ VERSION=4.7.4
+} else {
+ VERSION=$${QT_MAJOR_VERSION}.$${QT_MINOR_VERSION}.$${QT_PATCH_VERSION}
+}
+CONFIG += qt plugin
+
+TARGET = phonon_dummy
+DESTDIR = $$QT_BUILD_TREE/plugins/phonon_backend
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT += phonon
+
+
+# Input
+HEADERS += backend.h audiooutput.h mediaobject.h videowidget.h
+SOURCES += backend.cpp audiooutput.cpp mediaobject.cpp videowidget.cpp
+
+target.path = $$[QT_INSTALL_PLUGINS]/phonon_backend
+INSTALLS += target
diff --git a/tests/auto/mediaobject/dummy/mediaobject.cpp b/tests/auto/mediaobject/dummy/mediaobject.cpp
new file mode 100644
index 0000000..98ab94f
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/mediaobject.cpp
@@ -0,0 +1,438 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "mediaobject.h"
+#include "backend.h"
+
+#include <QtCore>
+#include <QtCore/QTimer>
+#include <QtCore/QVector>
+#include <QtCore/QFile>
+#include <QtCore/QByteRef>
+#include <QtCore/QStringList>
+#include <QtCore/QEvent>
+#include <QApplication>
+
+QT_BEGIN_NAMESPACE
+
+namespace Phonon
+{
+namespace Dummy
+{
+
+static const char* riffId = "RIFF";
+
+MediaObject::MediaObject(Backend *backend, QObject *parent)
+ : QObject(parent)
+ , m_resumeState(false)
+ , m_oldState(Phonon::LoadingState)
+ , m_oldPos(0)
+ , currentPos(0)
+{
+ Q_UNUSED(backend)
+
+ m_error = Phonon::NoError;
+ m_tickInterval = 100; // 100ms
+ m_totalTime = 26000; // 26s
+ m_prefinishMark = 0;
+ m_transitionTime = 100; //100ms
+ m_hasVideo = false;
+ m_prefinishMarkReachedNotEmitted = true;
+ m_aboutToFinishEmitted = false;
+ m_pendingState = Phonon::LoadingState;
+ m_state = Phonon::LoadingState;
+ m_pendingState = Phonon::LoadingState;
+ m_tickTimer = new QTimer(this);
+ connect(m_tickTimer, SIGNAL(timeout()), SLOT(emitTick()));
+}
+
+MediaObject::~MediaObject()
+{
+ delete m_tickTimer;
+}
+
+QString stateString(const Phonon::State &state)
+{
+ switch (state) {
+ case Phonon::LoadingState:
+ return QString("LoadingState");
+ case Phonon::StoppedState:
+ return QString("StoppedState");
+ case Phonon::PlayingState:
+ return QString("PlayingState");
+ case Phonon::BufferingState:
+ return QString("BufferingState");
+ case Phonon::PausedState:
+ return QString("PausedState");
+ case Phonon::ErrorState:
+ return QString("ErrorState");
+ }
+ return QString();
+}
+
+void MediaObject::saveState()
+{
+ if (m_resumeState)
+ return;
+
+ if (m_pendingState == Phonon::PlayingState || m_pendingState == Phonon::PausedState) {
+ m_resumeState = true;
+ m_oldState = m_pendingState;
+ m_oldPos = currentPos;
+ }
+}
+
+void MediaObject::resumeState()
+{
+ if (m_resumeState)
+ QMetaObject::invokeMethod(this, "setState", Qt::QueuedConnection, Q_ARG(State, m_oldState));
+}
+
+/**
+ * !reimp
+ */
+State MediaObject::state() const
+{
+ return m_state;
+}
+
+/**
+ * !reimp
+ */
+bool MediaObject::hasVideo() const
+{
+ return m_hasVideo;
+}
+
+/**
+ * !reimp
+ */
+bool MediaObject::isSeekable() const
+{
+ return true;
+}
+
+/**
+ * !reimp
+ */
+qint64 MediaObject::currentTime() const
+{
+ if (m_resumeState)
+ return m_oldPos;
+
+ switch (state()) {
+ case Phonon::PausedState:
+ case Phonon::BufferingState:
+ case Phonon::PlayingState:
+ return currentPos;
+ case Phonon::StoppedState:
+ case Phonon::LoadingState:
+ return 0;
+ case Phonon::ErrorState:
+ break;
+ }
+ return -1;
+}
+
+/**
+ * !reimp
+ */
+qint32 MediaObject::tickInterval() const
+{
+ return m_tickInterval;
+}
+
+/**
+ * !reimp
+ */
+void MediaObject::setTickInterval(qint32 newTickInterval)
+{
+ m_tickInterval = newTickInterval;
+ if (m_tickInterval <= 0) {
+ m_tickTimer->setInterval(100);
+ } else
+ m_tickTimer->setInterval(newTickInterval);
+}
+
+/**
+ * !reimp
+ */
+void MediaObject::play()
+{
+ if(m_state == Phonon::PlayingState)
+ return;
+ if(m_state == Phonon::ErrorState)
+ return;
+
+ if(m_state != Phonon::PausedState)
+ m_tickTimer->stop();
+
+ m_prefinishMarkReachedNotEmitted = true;
+ m_aboutToFinishEmitted = false;
+
+ setState(Phonon::PlayingState);
+ m_resumeState = false;
+ m_tickTimer->start();
+}
+
+/**
+ * !reimp
+ */
+QString MediaObject::errorString() const
+{
+ return m_errorString;
+}
+
+/**
+ * !reimp
+ */
+Phonon::ErrorType MediaObject::errorType() const
+{
+ return m_error;
+}
+
+void MediaObject::setState(State newstate)
+{
+ if (m_state == newstate)
+ return;
+
+ switch (newstate) {
+ case Phonon::PausedState:
+ m_pendingState = Phonon::PausedState;
+ emit stateChanged(newstate, m_state);
+ m_state = newstate;
+ break;
+ case Phonon::StoppedState:
+ m_pendingState = Phonon::StoppedState;
+ emit stateChanged(newstate, m_state);
+ m_state = newstate;
+ break;
+ case Phonon::PlayingState:
+ m_pendingState = Phonon::PlayingState;
+ emit stateChanged(newstate, m_state);
+ m_state = newstate;
+ break;
+ case Phonon::ErrorState:
+ emit stateChanged(newstate, m_state);
+ m_state = newstate;
+ break;
+ case Phonon::BufferingState:
+ case Phonon::LoadingState:
+ emit stateChanged(newstate, m_state);
+ m_state = newstate;
+ break;
+ }
+}
+
+qint64 MediaObject::totalTime() const
+{
+ return m_totalTime;
+}
+
+qint32 MediaObject::prefinishMark() const
+{
+ return m_prefinishMark;
+}
+
+qint32 MediaObject::transitionTime() const
+{
+ return m_transitionTime;
+}
+
+void MediaObject::setTransitionTime(qint32 time)
+{
+ m_transitionTime = time;
+}
+
+qint64 MediaObject::remainingTime() const
+{
+ if(currentTime() > totalTime())
+ return 0;
+
+ return totalTime() - currentTime();
+}
+
+MediaSource MediaObject::source() const
+{
+ return m_source;
+}
+
+void MediaObject::setNextSource(const MediaSource &source)
+{
+ if (source.type() == MediaSource::Invalid &&
+ source.type() == MediaSource::Empty)
+ return;
+ m_nextSource = source;
+}
+
+/*
+ * !reimp
+ */
+void MediaObject::setSource(const MediaSource &source)
+{
+ QMultiMap<QString, QString> ret;
+
+ ret.insert(QLatin1String("ARTIST"), "Nokia Dude");
+ ret.insert(QLatin1String("ALBUM"), "Sound of silence");
+ ret.insert(QLatin1String("DATE"), "2009");
+
+ m_error = Phonon::NoError;
+ setState(Phonon::LoadingState);
+
+ m_source = source;
+ currentPos = 0;
+
+ if((source.fileName().contains(".avi")) ||
+ (source.fileName().contains(".mp4"))) {
+ m_hasVideo = true;
+ emit hasVideoChanged(m_hasVideo);
+ }
+ if(source.fileName().contains(".wav")) {
+ QFile file(source.fileName());
+ if (file.open(QIODevice::ReadOnly)) {
+ int len = file.read((char*)&header, sizeof(CombinedHeader));
+ if(len == sizeof(CombinedHeader)) {
+ if(memcmp(&header.riff.descriptor.id, riffId, 4) != 0) {
+ // Not a valid wav file, to satisfy unit test for mediaobject
+ m_error = Phonon::FatalError;
+ //m_state = Phonon::ErrorState;
+ m_errorString = "Invalid wav file";
+ setState(Phonon::ErrorState);
+ file.close();
+ return;
+ }
+ }
+ file.close();
+ }
+ }
+ emit metaDataChanged(ret);
+ emit currentSourceChanged(source);
+ emit totalTimeChanged(m_totalTime);
+
+ setState(Phonon::StoppedState);
+}
+
+void MediaObject::setPrefinishMark(qint32 newPrefinishMark)
+{
+ m_prefinishMark = newPrefinishMark;
+ if (currentTime() < totalTime() - m_prefinishMark) // not about to finish
+ m_prefinishMarkReachedNotEmitted = true;
+}
+
+void MediaObject::pause()
+{
+ if (state() != Phonon::PausedState)
+ setState(Phonon::PausedState);
+ m_resumeState = false;
+ m_tickTimer->stop();
+}
+
+void MediaObject::stop()
+{
+ if (state() != Phonon::StoppedState) {
+ if(m_state != Phonon::ErrorState) {
+ setState(Phonon::StoppedState);
+ }
+ m_prefinishMarkReachedNotEmitted = true;
+ }
+ m_resumeState = false;
+ m_tickTimer->stop();
+}
+
+void MediaObject::emitTick()
+{
+ if (m_resumeState) {
+ return;
+ }
+ if(m_tickInterval > 0)
+ currentPos += m_tickInterval;
+ else
+ currentPos += 100;
+
+ qint64 currentTime = currentPos;
+ qint64 totalTime = m_totalTime;
+
+ if (m_tickInterval > 0 && currentTime != m_previousTickTime) {
+ emit tick(currentTime);
+ m_previousTickTime = currentTime;
+ }
+ if (m_state == Phonon::PlayingState) {
+ if (currentTime >= totalTime - m_prefinishMark) {
+ if (m_prefinishMarkReachedNotEmitted) {
+ m_prefinishMarkReachedNotEmitted = false;
+ emit prefinishMarkReached(totalTime - currentTime);
+ }
+ }
+ // Prepare load of next source
+ if (currentTime >= totalTime - 500) {
+ if (!m_aboutToFinishEmitted) {
+ m_aboutToFinishEmitted = true; // track is about to finish
+ emit aboutToFinish();
+ }
+ }
+ if(currentTime >= totalTime) {
+ m_tickTimer->stop();
+ if(m_nextSource.type() != MediaSource::Invalid &&
+ m_nextSource.type() != MediaSource::Empty) {
+ setSource(m_nextSource);
+ m_nextSource = MediaSource();
+ m_pendingState = Phonon::PlayingState;
+ } else {
+ setState(Phonon::PausedState);
+ currentPos = 0;
+ emit finished();
+ }
+ }
+ }
+}
+
+void MediaObject::seek(qint64 time)
+{
+ // We will assume no buffering in the object so this is not needed.
+ currentPos = time;
+}
+
+} // ns Dummy
+} // ns Phonon
+
+QT_END_NAMESPACE
+
+#include "moc_mediaobject.cpp"
diff --git a/tests/auto/mediaobject/dummy/mediaobject.h b/tests/auto/mediaobject/dummy/mediaobject.h
new file mode 100644
index 0000000..a20873b
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/mediaobject.h
@@ -0,0 +1,210 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef PHONON_DUMMY_MEDIAOBJECT_H
+#define PHONON_DUMMY_MEDIAOBJECT_H
+
+#include "backend.h"
+#include <phonon/mediaobjectinterface.h>
+#include <phonon/addoninterface.h>
+
+#include <QtCore/QHash>
+#include <QtCore/QString>
+#include <QtCore/QVariant>
+#include <QtCore/QObject>
+#include <QtCore/QDate>
+#include <QtCore/QEvent>
+#include <QtCore/QUrl>
+
+QT_BEGIN_NAMESPACE
+
+class QTimer;
+typedef QMultiMap<QString, QString> TagMap;
+
+namespace Phonon
+{
+namespace Dummy
+{
+
+class VideoWidget;
+class AudioPath;
+class VideoPath;
+class AudioOutput;
+
+class MediaObject : public QObject, public MediaObjectInterface
+{
+ friend class Stream;
+ Q_OBJECT
+ Q_INTERFACES(Phonon::MediaObjectInterface
+ )
+
+public:
+
+ MediaObject(Backend *backend, QObject *parent);
+ ~MediaObject();
+ Phonon::State state() const;
+
+ bool hasVideo() const;
+ bool isSeekable() const;
+
+ qint64 currentTime() const;
+ qint32 tickInterval() const;
+
+ void setTickInterval(qint32 newTickInterval);
+
+ void play();
+ void pause();
+ void stop();
+ void seek(qint64 time);
+
+ QString errorString() const;
+ Phonon::ErrorType errorType() const;
+
+ QUrl url() const;
+ qint64 totalTime() const;
+
+ qint32 prefinishMark() const;
+ void setPrefinishMark(qint32 newPrefinishMark);
+
+ qint32 transitionTime() const;
+ void setTransitionTime(qint32);
+ qint64 remainingTime() const;
+
+ void setSource(const MediaSource &source);
+ void setNextSource(const MediaSource &source);
+ MediaSource source() const;
+
+ void saveState();
+ void resumeState();
+
+public Q_SLOTS:
+ void setState(State);
+
+Q_SIGNALS:
+ void currentSourceChanged(const MediaSource &newSource);
+ void stateChanged(Phonon::State newstate, Phonon::State oldstate);
+ void tick(qint64 time);
+ void metaDataChanged(QMultiMap<QString, QString>);
+ void seekableChanged(bool);
+ void hasVideoChanged(bool);
+
+ void finished();
+ void prefinishMarkReached(qint32);
+ void aboutToFinish();
+ void totalTimeChanged(qint64 length);
+ void bufferStatus(int percentFilled);
+
+ QMultiMap<QString, QString> metaData();
+ void setMetaData(QMultiMap<QString, QString> newData);
+
+private Q_SLOTS:
+ void emitTick();
+
+private:
+ bool m_resumeState;
+ State m_oldState;
+ quint64 m_oldPos;
+ quint64 currentPos;
+ bool m_hasVideo;
+ qint32 m_tickInterval;
+ QTimer *m_tickTimer;
+ Phonon::ErrorType m_error;
+ QString m_errorString;
+ qint64 m_totalTime;
+ qint32 m_prefinishMark;
+ qint32 m_transitionTime;
+ MediaSource m_source;
+ MediaSource m_nextSource;
+ bool m_prefinishMarkReachedNotEmitted;
+ bool m_aboutToFinishEmitted;
+ int m_previousTickTime;
+
+ State m_state;
+ State m_pendingState;
+
+ struct chunk
+ {
+ char id[4];
+ quint32 size;
+ };
+
+ struct RIFFHeader
+ {
+ chunk descriptor;
+ char type[4];
+ };
+
+ struct WAVEHeader
+ {
+ chunk descriptor;
+ quint16 audioFormat; // PCM = 1
+ quint16 numChannels;
+ quint32 sampleRate;
+ quint32 byteRate;
+ quint16 blockAlign;
+ quint16 bitsPerSample;
+ quint32 xFreq1;
+ chunk fact;
+ quint32 xfact;
+ chunk data;
+ };
+
+ struct DATAHeader
+ {
+ chunk descriptor;
+ quint8 data[];
+ };
+
+ struct CombinedHeader
+ {
+ RIFFHeader riff;
+ WAVEHeader wave;
+ DATAHeader data;
+ };
+
+ CombinedHeader header;
+};
+}
+} //namespace Phonon::Dummy
+
+QT_END_NAMESPACE
+
+#endif // PHONON_DUMMY_MEDIAOBJECT_H
diff --git a/tests/auto/mediaobject/dummy/videowidget.cpp b/tests/auto/mediaobject/dummy/videowidget.cpp
new file mode 100644
index 0000000..f46704a
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/videowidget.cpp
@@ -0,0 +1,246 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "videowidget.h"
+#include <QtCore/QEvent>
+#include <QtGui/QResizeEvent>
+#include <QtGui/QPalette>
+#include <QtGui/QImage>
+#include <QtGui/QPainter>
+#include <QtGui/QBoxLayout>
+#include <QApplication>
+#include "mediaobject.h"
+
+QT_BEGIN_NAMESPACE
+
+namespace Phonon
+{
+namespace Dummy
+{
+
+VideoWidget::VideoWidget(Backend *backend, QWidget *parent) :
+ QWidget(parent),
+ m_aspectRatio(Phonon::VideoWidget::AspectRatioAuto),
+ m_brightness(0.0),
+ m_hue(0.0),
+ m_contrast(0.0),
+ m_saturation(0.0),
+ m_scaleMode(Phonon::VideoWidget::FitInView)
+{
+ Q_UNUSED(backend)
+
+}
+
+VideoWidget::~VideoWidget()
+{
+}
+
+void VideoWidget::paintEvent(QPaintEvent *event)
+{
+ Q_UNUSED(event)
+}
+
+void VideoWidget::setVisible(bool val)
+{
+ Q_UNUSED(val)
+}
+
+Phonon::VideoWidget::AspectRatio VideoWidget::aspectRatio() const
+{
+ return m_aspectRatio;
+}
+
+QSize VideoWidget::sizeHint() const
+{
+ return QSize(640, 480);
+}
+
+void VideoWidget::setAspectRatio(Phonon::VideoWidget::AspectRatio aspectRatio)
+{
+ Q_UNUSED(aspectRatio)
+}
+
+Phonon::VideoWidget::ScaleMode VideoWidget::scaleMode() const
+{
+ return m_scaleMode;
+}
+
+QRect VideoWidget::scaleToAspect(QRect srcRect, int w, int h) const
+{
+ float width = srcRect.width();
+ float height = srcRect.width() * (float(h) / float(w));
+ if (height > srcRect.height()) {
+ height = srcRect.height();
+ width = srcRect.height() * (float(w) / float(h));
+ }
+ return QRect(0, 0, (int)width, (int)height);
+}
+
+/***
+ * Calculates the actual rectangle the movie will be presented with
+ **/
+QRect VideoWidget::calculateDrawFrameRect() const
+{
+ QRect widgetRect = rect();
+ QRect drawFrameRect;
+ // Set m_drawFrameRect to be the size of the smallest possible
+ // rect conforming to the aspect and containing the whole frame:
+ switch (aspectRatio()) {
+
+ case Phonon::VideoWidget::AspectRatioWidget:
+ drawFrameRect = widgetRect;
+ // No more calculations needed.
+ return drawFrameRect;
+
+ case Phonon::VideoWidget::AspectRatio4_3:
+ drawFrameRect = scaleToAspect(widgetRect, 4, 3);
+ break;
+
+ case Phonon::VideoWidget::AspectRatio16_9:
+ drawFrameRect = scaleToAspect(widgetRect, 16, 9);
+ break;
+
+ case Phonon::VideoWidget::AspectRatioAuto:
+ default:
+ drawFrameRect = QRect(0, 0, movieSize().width(), movieSize().height());
+ break;
+ }
+
+ // Scale m_drawFrameRect to fill the widget
+ // without breaking aspect:
+ float widgetWidth = widgetRect.width();
+ float widgetHeight = widgetRect.height();
+ float frameWidth = widgetWidth;
+ float frameHeight = drawFrameRect.height() * float(widgetWidth) / float(drawFrameRect.width());
+
+ switch (scaleMode()) {
+ case Phonon::VideoWidget::ScaleAndCrop:
+ if (frameHeight < widgetHeight) {
+ frameWidth *= float(widgetHeight) / float(frameHeight);
+ frameHeight = widgetHeight;
+ }
+ break;
+ case Phonon::VideoWidget::FitInView:
+ default:
+ if (frameHeight > widgetHeight) {
+ frameWidth *= float(widgetHeight) / float(frameHeight);
+ frameHeight = widgetHeight;
+ }
+ break;
+ }
+ drawFrameRect.setSize(QSize(int(frameWidth), int(frameHeight)));
+ drawFrameRect.moveTo(int((widgetWidth - frameWidth) / 2.0f),
+ int((widgetHeight - frameHeight) / 2.0f));
+ return drawFrameRect;
+}
+
+void VideoWidget::setScaleMode(Phonon::VideoWidget::ScaleMode scaleMode)
+{
+ Q_UNUSED(scaleMode)
+}
+
+qreal VideoWidget::brightness() const
+{
+ return m_brightness;
+}
+
+qreal clampedValue(qreal val)
+{
+ if (val > 1.0 )
+ return 1.0;
+ else if (val < -1.0)
+ return -1.0;
+ else return val;
+}
+
+void VideoWidget::setBrightness(qreal newValue)
+{
+ Q_UNUSED(newValue)
+}
+
+qreal VideoWidget::contrast() const
+{
+ return m_contrast;
+}
+
+void VideoWidget::setContrast(qreal newValue)
+{
+ Q_UNUSED(newValue)
+}
+
+qreal VideoWidget::hue() const
+{
+ return m_hue;
+}
+
+void VideoWidget::setHue(qreal newValue)
+{
+ Q_UNUSED(newValue)
+}
+
+qreal VideoWidget::saturation() const
+{
+ return m_saturation;
+}
+
+void VideoWidget::setSaturation(qreal newValue)
+{
+ Q_UNUSED(newValue)
+}
+
+bool VideoWidget::event(QEvent *event)
+{
+ return QWidget::event(event);
+}
+
+void VideoWidget::setMovieSize(const QSize &size)
+{
+ m_movieSize = size;
+ widget()->updateGeometry();
+ widget()->update();
+}
+
+}
+} //namespace Phonon::Dummy
+
+QT_END_NAMESPACE
+
+#include "moc_videowidget.cpp"
diff --git a/tests/auto/mediaobject/dummy/videowidget.h b/tests/auto/mediaobject/dummy/videowidget.h
new file mode 100644
index 0000000..615aa02
--- /dev/null
+++ b/tests/auto/mediaobject/dummy/videowidget.h
@@ -0,0 +1,111 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test sutie of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef PHONON_DUMMY_VIDEOWIDGET_H
+#define PHONON_DUMMY_VIDEOWIDGET_H
+
+#include <phonon/videowidget.h>
+#include <phonon/videowidgetinterface.h>
+
+#include "backend.h"
+
+QT_BEGIN_NAMESPACE
+
+class QString;
+
+namespace Phonon
+{
+namespace Dummy
+{
+
+class VideoWidget : public QWidget, public Phonon::VideoWidgetInterface
+{
+ Q_OBJECT
+ Q_INTERFACES(Phonon::VideoWidgetInterface)
+public:
+ VideoWidget(Backend *backend, QWidget *parent = 0);
+ ~VideoWidget();
+
+ void paintEvent(QPaintEvent *event);
+ void setVisible(bool);
+
+ Phonon::VideoWidget::AspectRatio aspectRatio() const;
+ void setAspectRatio(Phonon::VideoWidget::AspectRatio aspectRatio);
+ Phonon::VideoWidget::ScaleMode scaleMode() const;
+ void setScaleMode(Phonon::VideoWidget::ScaleMode);
+ qreal brightness() const;
+ void setBrightness(qreal);
+ qreal contrast() const;
+ void setContrast(qreal);
+ qreal hue() const;
+ void setHue(qreal);
+ qreal saturation() const;
+ void setSaturation(qreal);
+ void setMovieSize(const QSize &size);
+ QSize sizeHint() const;
+ QRect scaleToAspect(QRect srcRect, int w, int h) const;
+ QRect calculateDrawFrameRect() const;
+
+ QSize movieSize() const {
+ return m_movieSize;
+ }
+
+ bool event(QEvent *);
+
+ QWidget *widget() {
+ return this;
+ }
+
+protected:
+ QSize m_movieSize;
+
+private:
+ Phonon::VideoWidget::AspectRatio m_aspectRatio;
+ qreal m_brightness, m_hue, m_contrast, m_saturation;
+ Phonon::VideoWidget::ScaleMode m_scaleMode;
+};
+
+}
+} //namespace Phonon::Dummy
+
+QT_END_NAMESPACE
+
+#endif // PHONON_DUMMY_VIDEOWIDGET_H
diff --git a/tests/auto/mediaobject/media/sax.mp3 b/tests/auto/mediaobject/media/sax.mp3
new file mode 100644
index 0000000..0a078b1
--- /dev/null
+++ b/tests/auto/mediaobject/media/sax.mp3
Binary files differ
diff --git a/tests/auto/mediaobject/media/sax.ogg b/tests/auto/mediaobject/media/sax.ogg
new file mode 100644
index 0000000..12be04a
--- /dev/null
+++ b/tests/auto/mediaobject/media/sax.ogg
Binary files differ
diff --git a/tests/auto/mediaobject/media/sax.wav b/tests/auto/mediaobject/media/sax.wav
new file mode 100644
index 0000000..f3e814c
--- /dev/null
+++ b/tests/auto/mediaobject/media/sax.wav
Binary files differ
diff --git a/tests/auto/mediaobject/media/test.sdp b/tests/auto/mediaobject/media/test.sdp
new file mode 100644
index 0000000..0d8706c
--- /dev/null
+++ b/tests/auto/mediaobject/media/test.sdp
@@ -0,0 +1,32 @@
+v=0
+o=- 3476526279 2351211129 IN IP4 XXX.XXX.XXX.XXX
+s=SOME STRING
+e=support@localhost
+c=IN IP4 XXX.XXX.XXX.XXX
+t=0 0
+a=range:npt=now-
+a=random_access_denied
+a=control:rtsp://link
+m=video 0 RTP/AVP 96
+b=AS:100
+b=RR:2500
+b=RS:2500
+a=control:rtsp://link
+a=rtpmap:96 MP4V-ES/90000
+a=3GPP-Adaptation-Support:1
+a=cliprect:0,0,144,176
+a=mpeg4-esid:201
+a=x-envivio-verid:00022B15
+a=fmtp:96 profile-level-id=2;config=000001b002000001b50ea020202f000001000000012000c788ba9850584121463f
+a=framerate:15.0
+m=audio 0 RTP/AVP 97
+b=AS:14
+b=RR:350
+b=RS:350
+a=control:rtsp://link
+a=rtpmap:97 AMR/8000
+a=3GPP-Adaptation-Support:1
+a=mpeg4-esid:101
+a=x-envivio-verid:00022B15
+a=fmtp:97 octet-align=1
+a=maxptime:200
diff --git a/tests/auto/mediaobject/mediaobject.pro b/tests/auto/mediaobject/mediaobject.pro
new file mode 100755
index 0000000..23ec56b
--- /dev/null
+++ b/tests/auto/mediaobject/mediaobject.pro
@@ -0,0 +1,24 @@
+############################################################
+# Project file for autotest for file mediaobject.h
+############################################################
+
+load(qttest_p4)
+
+contains(QT_CONFIG, phonon):QT += phonon
+SOURCES += tst_mediaobject.cpp
+HEADERS += qtesthelper.h
+RESOURCES += mediaobject.qrc
+
+wince*{
+ DEPLOYMENT_PLUGIN += phonon_waveout
+ DEFINES += tst_MediaObject=tst_MediaObject_waveout
+}
+
+symbian:{
+ addFiles.files = media/test.sdp
+ addFiles.path = media
+ DEPLOYMENT += addFiles
+ LIBS += -lCommDb -lconnmon
+ TARGET.CAPABILITY += "NetworkServices"
+}
+
diff --git a/tests/auto/mediaobject/mediaobject.qrc b/tests/auto/mediaobject/mediaobject.qrc
new file mode 100644
index 0000000..77954f4
--- /dev/null
+++ b/tests/auto/mediaobject/mediaobject.qrc
@@ -0,0 +1,8 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource>
+<file>media/sax.wav</file>
+<file>media/sax.ogg</file>
+<file>media/sax.mp3</file>
+<file>media/test.sdp</file>
+</qresource>
+</RCC>
diff --git a/tests/auto/mediaobject/qtesthelper.h b/tests/auto/mediaobject/qtesthelper.h
new file mode 100644
index 0000000..9b1ea18
--- /dev/null
+++ b/tests/auto/mediaobject/qtesthelper.h
@@ -0,0 +1,222 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/* This file is part of the KDE project
+ Copyright (C) 2007 Matthias Kretz <kretz@kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License version 2 as published by the Free Software Foundation.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+
+*/
+
+#ifndef QTESTHELPER_H
+#define QTESTHELPER_H
+
+#include <QtCore/QEventLoop>
+#include <QtCore/QTimer>
+#include <QtTest/QSignalSpy>
+#include <QtCore/QVariant>
+
+QT_BEGIN_NAMESPACE
+namespace QTest
+{
+
+ /**
+ * Starts an event loop that runs until the given signal is received. Optionally the event loop
+ * can return earlier on a timeout.
+ *
+ * \return \p true if the requested signal was received
+ * \p false on timeout
+ */
+ bool waitForSignal(QObject *obj, const char *signal, int timeout = 0)
+ {
+ QEventLoop loop;
+ QObject::connect(obj, signal, &loop, SLOT(quit()));
+ QTimer timer;
+ QSignalSpy timeoutSpy(&timer, SIGNAL(timeout()));
+ if (timeout > 0) {
+ QObject::connect(&timer, SIGNAL(timeout()), &loop, SLOT(quit()));
+ timer.setSingleShot(true);
+ timer.start(timeout);
+ }
+ loop.exec();
+ return timeoutSpy.isEmpty();
+ }
+
+
+// template<>
+ char *toString(const Phonon::State &state)
+ {
+ switch (state) {
+ case Phonon::LoadingState:
+ return qstrdup("LoadingState");
+ case Phonon::StoppedState:
+ return qstrdup("StoppedState");
+ case Phonon::PlayingState:
+ return qstrdup("PlayingState");
+ case Phonon::BufferingState:
+ return qstrdup("BufferingState");
+ case Phonon::PausedState:
+ return qstrdup("PausedState");
+ case Phonon::ErrorState:
+ return qstrdup("ErrorState");
+ }
+ return 0;
+ }
+
+// template<>
+ char *toString(const QVariant::Type &type)
+ {
+ switch (type) {
+ case QVariant::Invalid:
+ return qstrdup("QVariant::Invalid");
+ case QVariant::BitArray:
+ return qstrdup("QVariant::BitArray");
+ case QVariant::Bitmap:
+ return qstrdup("QVariant::Bitmap");
+ case QVariant::Bool:
+ return qstrdup("QVariant::Bool");
+ case QVariant::Brush:
+ return qstrdup("QVariant::Brush");
+ case QVariant::ByteArray:
+ return qstrdup("QVariant::ByteArray");
+ case QVariant::Char:
+ return qstrdup("QVariant::Char");
+ case QVariant::Color:
+ return qstrdup("QVariant::Color");
+ case QVariant::Cursor:
+ return qstrdup("QVariant::Cursor");
+ case QVariant::Date:
+ return qstrdup("QVariant::Date");
+ case QVariant::DateTime:
+ return qstrdup("QVariant::DateTime");
+ case QVariant::Double:
+ return qstrdup("QVariant::Double");
+ case QVariant::Font:
+ return qstrdup("QVariant::Font");
+ case QVariant::Icon:
+ return qstrdup("QVariant::Icon");
+ case QVariant::Image:
+ return qstrdup("QVariant::Image");
+ case QVariant::Int:
+ return qstrdup("QVariant::Int");
+ case QVariant::KeySequence:
+ return qstrdup("QVariant::KeySequence");
+ case QVariant::Line:
+ return qstrdup("QVariant::Line");
+ case QVariant::LineF:
+ return qstrdup("QVariant::LineF");
+ case QVariant::List:
+ return qstrdup("QVariant::List");
+ case QVariant::Locale:
+ return qstrdup("QVariant::Locale");
+ case QVariant::LongLong:
+ return qstrdup("QVariant::LongLong");
+ case QVariant::Map:
+ return qstrdup("QVariant::Map");
+ case QVariant::Matrix:
+ return qstrdup("QVariant::Matrix");
+ case QVariant::Transform:
+ return qstrdup("QVariant::Transform");
+ case QVariant::Palette:
+ return qstrdup("QVariant::Palette");
+ case QVariant::Pen:
+ return qstrdup("QVariant::Pen");
+ case QVariant::Pixmap:
+ return qstrdup("QVariant::Pixmap");
+ case QVariant::Point:
+ return qstrdup("QVariant::Point");
+ case QVariant::PointF:
+ return qstrdup("QVariant::PointF");
+ case QVariant::Polygon:
+ return qstrdup("QVariant::Polygon");
+ case QVariant::Rect:
+ return qstrdup("QVariant::Rect");
+ case QVariant::RectF:
+ return qstrdup("QVariant::RectF");
+ case QVariant::RegExp:
+ return qstrdup("QVariant::RegExp");
+ case QVariant::Region:
+ return qstrdup("QVariant::Region");
+ case QVariant::Size:
+ return qstrdup("QVariant::Size");
+ case QVariant::SizeF:
+ return qstrdup("QVariant::SizeF");
+ case QVariant::SizePolicy:
+ return qstrdup("QVariant::SizePolicy");
+ case QVariant::String:
+ return qstrdup("QVariant::String");
+ case QVariant::StringList:
+ return qstrdup("QVariant::StringList");
+ case QVariant::TextFormat:
+ return qstrdup("QVariant::TextFormat");
+ case QVariant::TextLength:
+ return qstrdup("QVariant::TextLength");
+ case QVariant::Time:
+ return qstrdup("QVariant::Time");
+ case QVariant::UInt:
+ return qstrdup("QVariant::UInt");
+ case QVariant::ULongLong:
+ return qstrdup("QVariant::ULongLong");
+ case QVariant::Url:
+ return qstrdup("QVariant::Url");
+ case QVariant::UserType:
+ return qstrdup("QVariant::UserType");
+ case QVariant::LastType:
+ return qstrdup("QVariant::LastType");
+ default:
+ return 0;
+ }
+ }
+} // namespace QTest
+QT_END_NAMESPACE
+
+#endif // QTESTHELPER_H
diff --git a/tests/auto/mediaobject/tst_mediaobject.cpp b/tests/auto/mediaobject/tst_mediaobject.cpp
new file mode 100644
index 0000000..b29a6db
--- /dev/null
+++ b/tests/auto/mediaobject/tst_mediaobject.cpp
@@ -0,0 +1,1220 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/* This file is part of the KDE project
+ Copyright (C) 2006-2007 Matthias Kretz <kretz@kde.org>
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of
+ the License, or (at your option) version 3.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+#include <QtTest/QtTest>
+#include <QtCore/QDate>
+#include <QtCore/QDebug>
+#include <QtCore/QObject>
+#include <QtCore/QUrl>
+
+#ifndef QT_NO_PHONON
+#include <phonon/path.h>
+#include <phonon/audiooutput.h>
+#include <phonon/mediaobject.h>
+#include <phonon/phononnamespace.h>
+#include <phonon/audiooutput.h>
+#include <phonon/seekslider.h>
+#include <phonon/mediaobject.h>
+#include <phonon/volumeslider.h>
+#include <phonon/videowidget.h>
+#include <phonon/backendcapabilities.h>
+
+#include "qtesthelper.h"
+#include <cstdlib>
+#endif
+
+#ifndef Q_WS_WIN
+#include <unistd.h>
+#endif
+
+#ifdef Q_OS_WINCE
+#define MEDIA_FILE "/sax.wav"
+#define MEDIA_FILEPATH ":/media/sax.wav"
+const qint64 SEEK_BACKWARDS = 2000;
+const qint64 ALLOWED_TIME_FOR_SEEKING = 1500; // 1.5s
+const qint64 SEEKING_TOLERANCE = 250;
+#else
+#if defined(Q_OS_WIN) || defined(Q_OS_MAC) || defined(Q_OS_SYMBIAN)
+#define MEDIA_FILE "/sax.mp3"
+#define MEDIA_FILEPATH ":/media/sax.mp3"
+#else
+#define MEDIA_FILE "/sax.ogg"
+#define MEDIA_FILEPATH ":/media/sax.ogg"
+#endif
+const qint64 SEEK_BACKWARDS = 4000;
+const qint64 ALLOWED_TIME_FOR_SEEKING = 1000; // 1s
+const qint64 SEEKING_TOLERANCE = 0;
+#endif //Q_OS_WINCE
+
+#ifdef Q_OS_SYMBIAN
+#include <cdbcols.h>
+#include <cdblen.h>
+#include <commdb.h>
+#include <rconnmon.h>
+
+const QString KDefaultIAP = QLatin1String("default");
+const QString KInvalidIAP = QLatin1String("invalid IAP");
+
+class CConnectionObserver : public CBase, public MConnectionMonitorObserver
+{
+public:
+ static CConnectionObserver* NewL()
+ {
+ CConnectionObserver* self = new (ELeave) CConnectionObserver();
+ CleanupStack::PushL(self);
+ self->ConstructL();
+ CleanupStack::Pop(self);
+ return self;
+ }
+ QString currentIAP()
+ {
+ return m_currentIAPName;
+ }
+ ~CConnectionObserver()
+ {
+ m_connMon.Close();
+ }
+private:
+ CConnectionObserver()
+ {
+ }
+ void ConstructL()
+ {
+ m_connMon.ConnectL();
+ m_connMon.NotifyEventL(*this);
+ }
+ void EventL (const CConnMonEventBase &aConnEvent)
+ {
+ TInt event = aConnEvent.EventType();
+ TUint connId = aConnEvent.ConnectionId();
+ TRequestStatus status;
+ switch (event) {
+ case EConnMonCreateConnection: {
+ TBuf<KCommsDbSvrMaxColumnNameLength> iapName;
+ m_connMon.GetStringAttribute(connId, 0, KIAPName, iapName, status);
+ User::WaitForRequest(status);
+ m_currentIAPName = QString(reinterpret_cast<const QChar *>(iapName.Ptr()), iapName.Length());
+ qDebug() << "A new connection created using: " << m_currentIAPName;
+ break;
+ }
+ default:
+ break;
+ }
+ }
+
+private:
+ RConnectionMonitor m_connMon;
+ QString m_currentIAPName;
+};
+
+#endif
+
+
+class tst_MediaObject : public QObject
+{
+ Q_OBJECT
+ public:
+ tst_MediaObject()
+ : m_success(false)
+ {
+ qputenv("PHONON_GST_AUDIOSINK", "fake");
+ }
+
+#ifndef QT_NO_PHONON
+
+ Q_SIGNALS:
+ void continueTestPlayOnFinish();
+
+ protected Q_SLOTS:
+ void enqueueMedia();
+ void setMediaAndPlay();
+ void stateChanged(Phonon::State, Phonon::State);
+ private Q_SLOTS:
+ void init();
+ void cleanup();
+
+ void testPlayFromResource();
+ void testPlayIllegalFile();
+ void initTestCase();
+ void checkForDefaults();
+
+ // state change tests
+ void stopToStop();
+ void stopToPause();
+ void stopToPlay();
+ void playToPlay();
+ void playToPause();
+ void playToStop();
+ void pauseToPause();
+ void pauseToPlay();
+ void pauseToStop();
+ void playSDP();
+ void playUrl_data();
+ void playUrl();
+
+ void testPrefinishMark();
+ void testSeek();
+ void testTickSignal();
+ void testJustInTimeQueuing();
+ void testPlayOnFinish();
+ void testPlayBeforeFinish();
+ void testPauseOnFinish();
+ void testReconnectBetweenTwoMediaObjects();
+ void volumeSliderMuteVisibility();
+ void cleanupTestCase();
+ private:
+ void _startPlayback(Phonon::State currentState = Phonon::StoppedState);
+ void _stopPlayback(Phonon::State currentState);
+ void _pausePlayback();
+ void _testOneSeek(qint64 seekTo);
+
+ QUrl m_url;
+ Phonon::MediaObject *m_media;
+ QSignalSpy *m_stateChangedSignalSpy;
+ QString m_tmpFileName;
+#ifdef Q_OS_SYMBIAN
+ CConnectionObserver *m_iapConnectionObserver;
+ QString getValidIAPL();
+#endif //Q_OS_SYMBIAN
+
+ static void copyMediaFile(const QString &original,
+ const QString &name,
+ QString &resultFilePath,
+ QUrl *const asURL = 0);
+#endif //QT_NO_PHONON
+ bool m_success;
+};
+
+#ifndef QT_NO_PHONON
+
+#define startPlayback() _startPlayback(); if (!m_success) return; m_success = false;
+#define startPlayback2(currentState) _startPlayback(currentState); if (!m_success) return; m_success = false;
+#define stopPlayback(currentState) _stopPlayback(currentState); if (!m_success) return; m_success = false;
+#define pausePlayback() _pausePlayback(); if (!m_success) return; m_success = false;
+#define testOneSeek(seekTo) _testOneSeek(seekTo); if (!m_success) return; m_success = false;
+
+const qint64 ALLOWED_SEEK_INACCURACY = 300; // 0.3s
+const qint64 ALLOWED_TICK_INACCURACY = 350; // allow +/- 350 ms inaccuracy
+
+using namespace Phonon;
+
+static qint64 castQVariantToInt64(const QVariant &variant)
+{
+ return *reinterpret_cast<const qint64 *>(variant.constData());
+}
+
+static qint32 castQVariantToInt32(const QVariant &variant)
+{
+ return *reinterpret_cast<const qint32 *>(variant.constData());
+}
+
+void tst_MediaObject::stateChanged(Phonon::State newstate, Phonon::State oldstate)
+{
+ if (newstate == Phonon::ErrorState)
+ QWARN(QByteArray(QByteArray(QTest::toString(oldstate)) + " to " + QByteArray(QTest::toString(newstate))));
+}
+
+void tst_MediaObject::testPlayFromResource()
+{
+ MediaObject media;
+ media.setCurrentSource(QString(MEDIA_FILEPATH));
+ QVERIFY(media.state() != Phonon::ErrorState);
+ if (media.state() != Phonon::StoppedState)
+ QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000);
+ QCOMPARE(media.state(), Phonon::StoppedState);
+ media.play();
+ if (media.state() != Phonon::PlayingState)
+ QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000);
+ QCOMPARE(media.state(), Phonon::PlayingState);
+}
+
+void tst_MediaObject::testPlayIllegalFile()
+{
+ QString filename = QDir::tempPath() + QString("/test.wav");
+ QFile::remove(filename);
+ QFile file(filename);
+ file.open(QIODevice::WriteOnly);
+ for (int i=0;i<0xffff;i++) {
+ int r = qrand();
+ file.write((const char*)&r, 2);
+ }
+ file.close();
+ MediaObject media;
+ media.setCurrentSource(filename);
+ QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000);
+ QCOMPARE(media.state(), Phonon::ErrorState);
+ media.play();
+ QCOMPARE(media.state(), Phonon::ErrorState);
+ QFile::remove(filename);
+}
+
+void tst_MediaObject::init()
+{
+ QCOMPARE(m_media->outputPaths().size(), 1);
+ if (m_media->state() == Phonon::ErrorState) {
+ m_media->setCurrentSource(m_url);
+ if (m_media->state() == Phonon::ErrorState) {
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)));
+ }
+ if (m_media->state() == Phonon::LoadingState) {
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)));
+ }
+ m_stateChangedSignalSpy->clear();
+ }
+
+ // Ensure that m_media is in StoppedState
+ if (m_media->state() != Phonon::StoppedState) {
+ m_media->stop();
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)));
+ QCOMPARE(m_media->state(), Phonon::StoppedState);
+ }
+}
+
+void tst_MediaObject::cleanup()
+{
+ switch (m_media->state()) {
+ case Phonon::PlayingState:
+ case Phonon::BufferingState:
+ case Phonon::PausedState:
+ stopPlayback(m_media->state());
+ break;
+ default:
+ break;
+ }
+ m_stateChangedSignalSpy->clear();
+}
+
+void tst_MediaObject::_startPlayback(Phonon::State currentState)
+{
+ m_stateChangedSignalSpy->clear();
+ Phonon::State s = m_media->state();
+ QCOMPARE(s, currentState);
+ m_media->play();
+ while (s != Phonon::PlayingState) {
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 3000);
+ QApplication::processEvents();
+ }
+ while (!m_stateChangedSignalSpy->isEmpty()) {
+ QList<QVariant> args = m_stateChangedSignalSpy->takeFirst();
+ Phonon::State laststate = qvariant_cast<Phonon::State>(args.at(1));
+ QCOMPARE(laststate, s);
+ s = qvariant_cast<Phonon::State>(args.at(0));
+ QVERIFY(s == Phonon::BufferingState || s == Phonon::PlayingState);
+ }
+ }
+ QCOMPARE(s, Phonon::PlayingState);
+ QCOMPARE(m_media->state(), Phonon::PlayingState);
+ m_success = true;
+}
+
+void tst_MediaObject::_stopPlayback(Phonon::State currentState)
+{
+ QVERIFY(currentState != Phonon::ErrorState);
+ m_stateChangedSignalSpy->clear();
+ Phonon::State s = m_media->state();
+ QCOMPARE(s, currentState);
+ m_media->stop();
+ while (s != Phonon::StoppedState) {
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 4000));
+ }
+ while (!m_stateChangedSignalSpy->isEmpty()) {
+ QList<QVariant> args = m_stateChangedSignalSpy->takeFirst();
+ Phonon::State laststate = qvariant_cast<Phonon::State>(args.at(1));
+ QCOMPARE(laststate, s);
+ s = qvariant_cast<Phonon::State>(args.at(0));
+ if (s == Phonon::StoppedState) {
+ QVERIFY(m_stateChangedSignalSpy->isEmpty());
+ break;
+ }
+ QVERIFY(s == Phonon::BufferingState || s == Phonon::PlayingState);
+ }
+ }
+ QCOMPARE(s, Phonon::StoppedState);
+ QCOMPARE(m_media->state(), Phonon::StoppedState);
+ m_success = true;
+}
+
+void tst_MediaObject::_pausePlayback()
+{
+ m_stateChangedSignalSpy->clear();
+ Phonon::State s = m_media->state();
+ m_media->pause();
+ while (s != Phonon::PausedState) {
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)));
+ }
+ while (!m_stateChangedSignalSpy->isEmpty()) {
+ QList<QVariant> args = m_stateChangedSignalSpy->takeFirst();
+ Phonon::State laststate = qvariant_cast<Phonon::State>(args.at(1));
+ QCOMPARE(laststate, s);
+ s = qvariant_cast<Phonon::State>(args.at(0));
+ if (s == Phonon::PausedState) {
+ QVERIFY(m_stateChangedSignalSpy->isEmpty());
+ break;
+ }
+ QVERIFY(s == Phonon::BufferingState || s == Phonon::PlayingState);
+ }
+ }
+ QCOMPARE(s, Phonon::PausedState);
+ QCOMPARE(m_media->state(), Phonon::PausedState);
+ m_success = true;
+}
+
+/*!
+ Copies the file \a name to the testing area. The resulting file name path is
+ returned in resultFilePath, and also set as a URL in \a asURL.
+ */
+void tst_MediaObject::copyMediaFile(const QString &original,
+ const QString &name,
+ QString &resultFilePath,
+ QUrl *const asURL)
+{
+ resultFilePath = QDir::toNativeSeparators(QDir::tempPath() + name);
+ if (asURL)
+ *asURL = QUrl::fromLocalFile(resultFilePath);
+
+ QFile::remove(resultFilePath);
+ QVERIFY(QFile::copy(original, resultFilePath));
+ QFile::setPermissions(resultFilePath, QFile::permissions(resultFilePath) | QFile::WriteOther);
+}
+
+void tst_MediaObject::initTestCase()
+{
+ QCoreApplication::setApplicationName("tst_MediaObject");
+ m_stateChangedSignalSpy = 0;
+ m_media = 0;
+
+#ifdef Q_OS_WINCE
+ QString pluginsPath = QLibraryInfo::location(QLibraryInfo::PluginsPath);
+#ifdef DEBUG
+ QVERIFY(QFile::exists(pluginsPath + "/phonon_backend/phonon_waveoutd4.dll") || QFile::exists(pluginsPath + "/phonon_backend/phonon_phonon_ds9d4.dll"));
+#else
+ QVERIFY(QFile::exists(pluginsPath + "/phonon_backend/phonon_waveout4.dll") || QFile::exists(pluginsPath + "/phonon_backend/phonon_phonon_ds94.dll"));
+#endif
+#endif
+
+
+ m_url = qgetenv("PHONON_TESTURL");
+ m_media = new MediaObject(this);
+ connect(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), SLOT(stateChanged(Phonon::State, Phonon::State)));
+ m_stateChangedSignalSpy = new QSignalSpy(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)));
+ QVERIFY(m_stateChangedSignalSpy->isValid());
+ m_stateChangedSignalSpy->clear();
+
+ if (m_url.isEmpty())
+ copyMediaFile(MEDIA_FILEPATH, MEDIA_FILE, m_tmpFileName, &m_url);
+
+ qDebug() << "Using url:" << m_url.toString();
+
+ // AudioOutput is needed else the backend might have no time source
+ AudioOutput *audioOutput = new AudioOutput(Phonon::MusicCategory, this);
+ //audioOutput->setVolume(0.0f);
+
+ QSignalSpy totalTimeChangedSignalSpy(m_media, SIGNAL(totalTimeChanged(qint64)));
+ QVERIFY(m_media->queue().isEmpty());
+ QCOMPARE(m_media->currentSource().type(), MediaSource::Empty);
+ QCOMPARE(m_media->state(), Phonon::LoadingState);
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+
+ m_media->setCurrentSource(m_url);
+ QCOMPARE(m_media->currentSource().type(), MediaSource::Url);
+ QCOMPARE(m_media->currentSource().url(), m_url);
+
+ int emits = m_stateChangedSignalSpy->count();
+ Phonon::State s = m_media->state();
+ if (s == Phonon::LoadingState) {
+ // still in LoadingState, there should be no state change
+ QCOMPARE(emits, 0);
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 6000);
+ emits = m_stateChangedSignalSpy->count();
+ s = m_media->state();
+ }
+ if (s != Phonon::LoadingState) {
+ // there should exactly be one state change
+ QCOMPARE(emits, 1);
+ QList<QVariant> args = m_stateChangedSignalSpy->takeFirst();
+ Phonon::State newstate = qvariant_cast<Phonon::State>(args.at(0));
+ Phonon::State oldstate = qvariant_cast<Phonon::State>(args.at(1));
+
+ QCOMPARE(Phonon::LoadingState, oldstate);
+ QCOMPARE(s, newstate);
+ if (Phonon::ErrorState == s) {
+#ifdef Q_WS_WIN
+ if (m_media->errorString().contains(QLatin1String("no audio hardware is available")))
+ QSKIP("On Windows we need an audio devide to perform the MediaObject tests", SkipAll);
+ else
+#endif
+ QFAIL("Loading the URL put the MediaObject into the ErrorState. Check that PHONON_TESTURL is set to a valid URL.");
+ }
+ QCOMPARE(Phonon::StoppedState, s);
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+
+ // check for totalTimeChanged signal
+ QVERIFY(totalTimeChangedSignalSpy.count() > 0);
+ args = totalTimeChangedSignalSpy.takeLast();
+ QCOMPARE(m_media->totalTime(), castQVariantToInt64(args.at(0)));
+ } else {
+ QFAIL("Still in LoadingState after a stateChange signal was emitted. Cannot go on.");
+ }
+
+ Path path = createPath(m_media, audioOutput);
+ QVERIFY(path.isValid());
+
+
+ QCOMPARE(m_media->outputPaths().size(), 1);
+ QCOMPARE(audioOutput->inputPaths().size(), 1);
+
+#ifdef Q_OS_SYMBIAN
+ TRAP_IGNORE(m_iapConnectionObserver = CConnectionObserver::NewL());
+#endif //Q_OS_SYMBIAN
+
+}
+
+void tst_MediaObject::checkForDefaults()
+{
+ QCOMPARE(m_media->tickInterval(), qint32(0));
+ QCOMPARE(m_media->prefinishMark(), qint32(0));
+}
+
+void tst_MediaObject::stopToStop()
+{
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+ QCOMPARE(m_media->state(), Phonon::StoppedState);
+ m_media->stop();
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 2000);
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+ QCOMPARE(m_media->state(), Phonon::StoppedState);
+}
+
+void tst_MediaObject::stopToPause()
+{
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+ QCOMPARE(m_media->state(), Phonon::StoppedState);
+ m_media->pause();
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 6000));
+ }
+ QCOMPARE(m_stateChangedSignalSpy->count(), 1);
+ QCOMPARE(m_media->state(), Phonon::PausedState);
+}
+
+void tst_MediaObject::stopToPlay()
+{
+ startPlayback();
+ QTest::waitForSignal(m_media, SIGNAL(finished()), 1000);
+ stopPlayback(Phonon::PlayingState);
+}
+
+void tst_MediaObject::playToPlay()
+{
+ startPlayback();
+
+ m_media->play();
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+ QCOMPARE(m_media->state(), Phonon::PlayingState);
+
+ stopPlayback(Phonon::PlayingState);
+}
+
+void tst_MediaObject::playToPause()
+{
+ startPlayback();
+ QCOMPARE(m_media->state(), Phonon::PlayingState);
+ pausePlayback();
+ stopPlayback(Phonon::PausedState);
+}
+
+void tst_MediaObject::playToStop()
+{
+ startPlayback();
+ stopPlayback(Phonon::PlayingState);
+}
+
+void tst_MediaObject::pauseToPause()
+{
+ startPlayback();
+ pausePlayback();
+
+ m_media->pause();
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+ QCOMPARE(m_media->state(), Phonon::PausedState);
+
+ stopPlayback(Phonon::PausedState);
+}
+
+void tst_MediaObject::pauseToPlay()
+{
+ startPlayback();
+ pausePlayback();
+ startPlayback2(Phonon::PausedState);
+ stopPlayback(Phonon::PlayingState);
+}
+
+void tst_MediaObject::pauseToStop()
+{
+ startPlayback();
+ pausePlayback();
+ stopPlayback(Phonon::PausedState);
+}
+
+/*!
+
+ We attempt to play a SDP file. An SDP file essentially describes different
+ media streams and is hence a layer in front of the actual media(s).
+ Sometimes the backend handles the SDP file, in other cases not.
+
+ Some Phonon backends doesn't support SDP at all, ifdef appropriately. Real
+ Player and Helix, the two backends for Symbian, are known to support SDP.
+ */
+void tst_MediaObject::playSDP()
+{
+#ifdef Q_OS_SYMBIAN
+ QString sdpFile;
+ copyMediaFile(QLatin1String(":/media/test.sdp"), QLatin1String("test.sdp"), sdpFile);
+
+ // Let's verify our test setup.
+ QVERIFY(QFileInfo(sdpFile).isReadable());
+
+ // We need a window in order to setup the video.
+ QWidget widget;
+ widget.show();
+
+ const MediaSource oldSource(m_media->currentSource());
+ const MediaSource sdpSource(sdpFile);
+ m_media->setCurrentSource(sdpSource);
+ if (m_media->state() != Phonon::StoppedState)
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000);
+
+ // MediaObject should have loaded the SDP, but be in error state due to absent media
+ const bool stateMatch = (m_media->state() == Phonon::ErrorState);
+ const bool errorStringMatch = (m_media->errorString() == QString::fromLatin1("Loading clip failed: Unknown error (-39)"));
+
+ // Ensure that m_media is back in ground state prior to starting next test step
+ m_media->setCurrentSource(oldSource);
+ if (m_media->state() != Phonon::StoppedState)
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)));
+ QCOMPARE(m_media->state(), Phonon::StoppedState);
+
+ QVERIFY(stateMatch);
+ QVERIFY(errorStringMatch);
+
+#else
+ QSKIP("Unsupported on this platform.", SkipAll);
+#endif
+}
+
+/*!
+ Attempt to play from an RTSP link, and, on Symbian, to specify the IAP that
+ should be used to connect to the network. This test requires the unit under test
+ to have a default internet connection that will support streaming media, and ideally
+ one other internet connection that will also support streaming.
+ */
+void tst_MediaObject::playUrl_data()
+{
+ QTest::addColumn<QUrl>("url");
+#ifdef Q_OS_SYMBIAN
+ QTest::addColumn<QString>("iap");
+#endif //Q_OS_SYMBIAN
+
+ QUrl rtspLink("rtsp://v1.cache8.c.youtube.com/CjgLENy73wIaLwnoDBCE7tF7fxMYESARFEIJbXYtZ29vZ2xlSARSB3Jlc3VsdHNgpbWqq7L7je5KDA==/0/0/0/video.3gp");
+ QUrl httpLink("http://www.theflute.co.uk/media/BachCPE_SonataAmin_1.wma");
+
+#ifdef Q_OS_SYMBIAN
+ QTest::newRow("default_IAP_rtsp") << rtspLink << KDefaultIAP;
+ QTest::newRow("invalid_IAP_rtsp") << rtspLink << KInvalidIAP;
+ //don't test HTTP link with invalid or default IAP as it will prompt the user
+ //Add tests with a valid IAP if we can get one from CommsDB
+ QString validIAP;
+ TRAPD(err, validIAP = getValidIAPL());
+ if (KErrNone == err) {
+ QTest::newRow("valid_IAP_rtsp") << rtspLink << validIAP;
+ QTest::newRow("valid_IAP_http") << httpLink << validIAP;
+ }
+#else
+ QTest::newRow("default_IAP_rtsp") << rtspLink;
+ QTest::newRow("invalid_IAP_rtsp") << rtspLink;
+#endif //Q_OS_SYMBIAN
+}
+
+#ifdef Q_OS_SYMBIAN
+QString tst_MediaObject::getValidIAPL()
+{
+ CCommsDatabase* commsDb = CCommsDatabase::NewL(EDatabaseTypeIAP);
+ CleanupStack::PushL(commsDb);
+ commsDb->ShowHiddenRecords();
+ CCommsDbTableView* view = commsDb->OpenTableLC(TPtrC(IAP));
+ QString validIAP;
+ TBool found = EFalse;
+ TInt record = view->GotoFirstRecord();
+ while (KErrNotFound != record) {
+ TBuf<KCommsDbSvrMaxColumnNameLength> iapName;
+ view->ReadTextL(TPtrC(COMMDB_NAME), iapName);
+ validIAP = QString::fromUtf16(iapName.Ptr(),iapName.Length());
+ //We don't want the "Easy WLAN" IAP as it will try and prompt the user
+ if ("Easy WLAN" != validIAP) {
+ qDebug() << "playUrl_data() adding a valid IAP test: " << validIAP;
+ found = ETrue;
+ break;
+ }
+ record = view->GotoNextRecord();
+ }
+ CleanupStack::PopAndDestroy(2);
+ if (!found)
+ User::Leave(KErrNotFound);
+ return validIAP;
+}
+#endif //Q_OS_SYMBIAN
+
+void tst_MediaObject::playUrl()
+{
+ QFETCH(QUrl, url);
+#ifdef Q_OS_SYMBIAN
+ QFETCH(QString, iap);
+#endif
+ MediaObject media(this);
+
+ //Create a proper media path for video and audio
+ VideoWidget videoOutput;
+ Path path = createPath(&media, &videoOutput);
+ QVERIFY(path.isValid());
+ AudioOutput audioOutput(Phonon::MusicCategory, this);
+ path = createPath(&media, &audioOutput);
+ QVERIFY(path.isValid());
+
+#ifdef Q_OS_SYMBIAN
+ //The Symbian backend allows the IAP used for streaming connections to be specified
+ //by the application, using the "InternetAccessPointName" property.
+ if (KDefaultIAP != iap)
+ media.setProperty("InternetAccessPointName", iap);
+#endif //Q_OS_SYMBIAN
+ media.setCurrentSource(Phonon::MediaSource(url));
+ QVERIFY(media.state() != Phonon::ErrorState);
+
+ //we use a long 30s timeout here as it can take a long time for the streaming source to
+ //be sucessfully prepared depending on the network.
+ if (media.state() != Phonon::StoppedState)
+ QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 30000);
+ QCOMPARE(media.state(), Phonon::StoppedState);
+
+ media.play();
+ if (media.state() != Phonon::PlayingState)
+ QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 15000);
+ QCOMPARE(media.state(), Phonon::PlayingState);
+
+ //sleep and allow some of the stream to be played
+ QTest::qSleep(10000);
+
+#ifdef Q_OS_SYMBIAN
+ // Verify that the specified IAP is actually being used when we're not doing negative tests
+ if ((KDefaultIAP == iap || KInvalidIAP == iap) == false) {
+ if (m_iapConnectionObserver)
+ QCOMPARE(iap,m_iapConnectionObserver->currentIAP());
+ }
+#endif //Q_OS_SYMBIAN
+
+ media.stop();
+ if (media.state() != Phonon::StoppedState)
+ QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 15000);
+ QCOMPARE(media.state(), Phonon::StoppedState);
+}
+
+void tst_MediaObject::testPrefinishMark()
+{
+ const qint32 requestedPrefinishMarkTime = 2000;
+ m_media->setPrefinishMark(requestedPrefinishMarkTime);
+ QCOMPARE(m_media->prefinishMark(), requestedPrefinishMarkTime);
+ QSignalSpy prefinishMarkReachedSpy(m_media, SIGNAL(prefinishMarkReached(qint32)));
+ QSignalSpy finishSpy(m_media, SIGNAL(finished()));
+ startPlayback();
+ if (m_media->isSeekable()) {
+ m_media->seek(m_media->totalTime() - SEEK_BACKWARDS - requestedPrefinishMarkTime); // give it 4 seconds
+ }
+ int wait = 10000;
+ int total = 0;
+ while (prefinishMarkReachedSpy.count() == 0 && (m_media->state() == Phonon::PlayingState ||
+ m_media->state() == Phonon::BufferingState)) {
+ wait = qMax(1000, wait / 2);
+ QTest::waitForSignal(m_media, SIGNAL(prefinishMarkReached(qint32)), wait);
+ total += wait;
+ if (total >= 60*1000) // we wait 1 minute
+ QFAIL("Timeout failure waiting for signal");
+ }
+ // at this point the media should be about to finish playing
+ qint64 r = m_media->remainingTime();
+ Phonon::State state = m_media->state();
+ QCOMPARE(prefinishMarkReachedSpy.count(), 1);
+ const qint32 prefinishMark = castQVariantToInt32(prefinishMarkReachedSpy.first().at(0));
+ QVERIFY(prefinishMark <= requestedPrefinishMarkTime + 150); // allow it to be up to 150ms too early
+ if (state == Phonon::PlayingState || state == Phonon::BufferingState) {
+ if (r > prefinishMark) {
+ qDebug() << "remainingTime =" << r;
+ QFAIL("remainingTime needs to be less than or equal to prefinishMark");
+ }
+ QVERIFY(r <= prefinishMark);
+ QTest::waitForSignal(m_media, SIGNAL(finished()), 10000);
+ } else {
+ QVERIFY(prefinishMark >= 0);
+ }
+ QCOMPARE(finishSpy.count(), 1);
+}
+
+void tst_MediaObject::enqueueMedia()
+{
+ m_media->enqueue(m_url);
+}
+
+Q_DECLARE_METATYPE(Phonon::MediaSource)
+void tst_MediaObject::testJustInTimeQueuing()
+{
+#ifdef Q_OS_WINCE
+ QSKIP("crashes on Windows CE", SkipAll);
+#endif
+ qRegisterMetaType<Phonon::MediaSource>("Phonon::MediaSource");
+ QSignalSpy currentSourceChanged(m_media, SIGNAL(currentSourceChanged(const Phonon::MediaSource &)));
+ QSignalSpy finished(m_media, SIGNAL(finished()));
+ connect(m_media, SIGNAL(aboutToFinish()), SLOT(enqueueMedia()));
+
+ startPlayback();
+ if (m_media->isSeekable()) {
+ m_media->seek(m_media->totalTime() - SEEK_BACKWARDS);
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(aboutToFinish()), 6000));
+ } else {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(aboutToFinish()), 3000 + m_media->remainingTime()));
+ }
+ disconnect(m_media, SIGNAL(aboutToFinish()), this, SLOT(enqueueMedia()));
+ if (currentSourceChanged.isEmpty()) {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(currentSourceChanged(const Phonon::MediaSource &)), 3000));
+ }
+ QCOMPARE(currentSourceChanged.size(), 1);
+ QCOMPARE(finished.size(), 0);
+ QVERIFY(m_media->queue().isEmpty());
+ stopPlayback(m_media->state());
+}
+
+void tst_MediaObject::testPauseOnFinish()
+{
+ startPlayback();
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 1000);
+ QCOMPARE(m_media->state(), Phonon::PlayingState);
+ if (m_media->isSeekable() && m_media->totalTime() > 2000)
+ m_media->seek(m_media->totalTime() - 2000);
+ QTest::waitForSignal(m_media, SIGNAL(finished()), 4000);
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 1000);
+
+ QCOMPARE(m_media->state(), Phonon::PausedState);
+ connect(m_media, SIGNAL(finished()), m_media, SLOT(stop()));
+ m_media->seek(m_media->totalTime() - 2000);
+ m_media->play();
+
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 1000);
+ QCOMPARE(m_media->state(), Phonon::PlayingState);
+ QTest::waitForSignal(m_media, SIGNAL(finished()), 4000);
+ QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 1000);
+ stopPlayback(Phonon::StoppedState);
+}
+
+void tst_MediaObject::testReconnectBetweenTwoMediaObjects(){
+ // Purpose: Test that phonon can handle switching the same sink
+ // between different media objects.
+
+ Phonon::MediaObject obj1;
+ Phonon::MediaObject obj2;
+ Phonon::AudioOutput audio1;
+ Phonon::Path p1 = Phonon::createPath(&obj1, &audio1);
+ QVERIFY(p1.isValid());
+
+ QVERIFY(p1.reconnect(&obj1, &audio1));
+ QVERIFY(p1.isValid());
+ QVERIFY(p1.reconnect(&obj2, &audio1));
+ QVERIFY(p1.isValid());
+ QVERIFY(p1.reconnect(&obj1, &audio1));
+ QVERIFY(p1.isValid());
+
+ // Repeat the same test while playing:
+ QFile file(MEDIA_FILEPATH);
+ obj1.setCurrentSource(&file);
+ QFile file2(MEDIA_FILEPATH);
+ obj2.setCurrentSource(&file2);
+ obj1.play();
+ obj2.play();
+
+ QVERIFY(p1.reconnect(&obj1, &audio1));
+ QVERIFY(p1.isValid());
+ QVERIFY(p1.reconnect(&obj2, &audio1));
+ QVERIFY(p1.isValid());
+ QVERIFY(p1.reconnect(&obj1, &audio1));
+ QVERIFY(p1.isValid());
+}
+
+void tst_MediaObject::testPlayOnFinish()
+{
+ connect(m_media, SIGNAL(finished()), SLOT(setMediaAndPlay()));
+ startPlayback();
+ if (m_media->isSeekable()) {
+ m_media->seek(m_media->totalTime() - SEEK_BACKWARDS);
+ QVERIFY(QTest::waitForSignal(this, SIGNAL(continueTestPlayOnFinish()), 6000));
+ } else {
+ QVERIFY(QTest::waitForSignal(this, SIGNAL(continueTestPlayOnFinish()), 3000 + m_media->remainingTime()));
+ }
+ QTest::waitForSignal(m_media, SIGNAL(finished()), 1000);
+ stopPlayback(m_media->state());
+}
+
+void tst_MediaObject::testTickSignal()
+{
+ QTime start1;
+ QTime start2;
+#ifdef Q_OS_WINCE //On Windows CE we only provide ticks above 400ms
+ for (qint32 tickInterval = 400; tickInterval <= 1000; tickInterval *= 2)
+#else
+ for (qint32 tickInterval = 80; tickInterval <= 500; tickInterval *= 2)
+#endif
+ {
+ QSignalSpy tickSpy(m_media, SIGNAL(tick(qint64)));
+ //qDebug() << "Test 20 ticks with an interval of" << tickInterval << "ms";
+ m_media->setTickInterval(tickInterval);
+ QVERIFY(m_media->tickInterval() <= tickInterval);
+ QVERIFY(m_media->tickInterval() >= tickInterval/2);
+ QVERIFY(tickSpy.isEmpty());
+ m_media->seek(0); //let's go back to the beginning
+ start1.start();
+ startPlayback();
+ start2.start();
+ int lastCount = 0;
+ qint64 s1, s2 = start2.elapsed();
+ while (tickSpy.count() < 20 && (m_media->state() == Phonon::PlayingState || m_media->state() == Phonon::BufferingState))
+ {
+ if (tickSpy.count() > lastCount)
+ {
+ s1 = start1.elapsed();
+ qint64 tickTime = castQVariantToInt64(tickSpy.last().at(0));
+ lastCount = tickSpy.count();
+ // s1 is the time from before the beginning of the playback to
+ // after the tick signal
+ // s2 is the time from after the beginning of the playback to
+ // before the tick signal
+ // so: s2 <= s1
+ QVERIFY(tickTime <= m_media->currentTime());
+ if (s1 + ALLOWED_TICK_INACCURACY < tickTime || s2 - ALLOWED_TICK_INACCURACY > tickTime) {
+ qDebug()
+ << "\n" << lastCount << "ticks have been received"
+ << "\ntime from before playback was started to after the tick signal was received:" << s1 << "ms"
+ << "\ntime from after playback was started to before the tick signal was received:" << s2 << "ms"
+ << "\nreported tick time:" << tickTime << "ms"
+ << "\nallowed inaccuracy: +/-" << ALLOWED_TICK_INACCURACY << "ms";
+ for (int i = 0; i < tickSpy.count(); ++i) {
+ qDebug() << castQVariantToInt64(tickSpy[i].at(0));
+ }
+ }
+ QVERIFY(s1 + ALLOWED_TICK_INACCURACY >= tickTime);
+ QVERIFY(s2 - ALLOWED_TICK_INACCURACY <= tickTime);
+#ifndef Q_OS_WINCE
+ QVERIFY(s1 >= lastCount * m_media->tickInterval());
+#else
+ QVERIFY(s1 >= lastCount * m_media->tickInterval() - ALLOWED_TICK_INACCURACY);
+#endif
+ if (s2 > (lastCount + 1) * m_media->tickInterval())
+ QWARN(qPrintable(QString("%1. tick came too late: %2ms elapsed while this tick should have come before %3ms")
+ .arg(lastCount).arg(s2).arg((lastCount + 1) * m_media->tickInterval())));
+ } else if (lastCount == 0 && s2 > 20 * m_media->tickInterval()) {
+ QFAIL("no tick signals are being received");
+ }
+ s2 = start2.elapsed();
+ QTest::waitForSignal(m_media, SIGNAL(tick(qint64)), 2000);
+ }
+#ifndef Q_OS_WINCE //the shorter wave file is finished on Windows CE...
+ stopPlayback(Phonon::PlayingState);
+#else
+ stopPlayback(m_media->state());
+#endif
+ }
+}
+
+void tst_MediaObject::testSeek()
+{
+ m_media->seek(0); // let's seek back to the beginning
+ startPlayback();
+ QTime timer;
+ timer.start();
+ qint64 t = m_media->totalTime();
+ qint64 c = m_media->currentTime();
+ qint64 r = m_media->remainingTime();
+ int elapsed = timer.elapsed();
+ if (c + r > t + elapsed || c + r < t - elapsed) {
+ // qDebug() << "currentTime:" << c
+ // << "remainingTime:" << r
+ // << "totalTime:" << t;
+ QFAIL("currentTime + remainingTime doesn't come close enough to totalTime");
+ }
+
+ QVERIFY(c + r <= t + elapsed);
+ QVERIFY(c + r >= t - elapsed);
+ if (m_media->isSeekable())
+ if (r > 0)
+ {
+ m_media->setTickInterval(20);
+ qint64 s = c + r / 2;
+ testOneSeek(s);
+
+ s /= 2;
+ testOneSeek(s);
+ s = s * 3 / 2;
+ testOneSeek(s);
+
+ pausePlayback();
+
+ s = s * 3 / 2;
+ testOneSeek(s);
+ s /= 2;
+ testOneSeek(s);
+
+ m_media->setTickInterval(0);
+
+
+ stopPlayback(Phonon::PausedState);
+ return;
+ }
+ else
+ QWARN("didn't test seeking as the MediaObject reported a remaining size <= 0");
+ else
+ QWARN("didn't test seeking as the MediaObject is not seekable");
+ stopPlayback(Phonon::PlayingState);
+}
+
+
+void tst_MediaObject::setMediaAndPlay()
+{
+ m_stateChangedSignalSpy->clear();
+ QCOMPARE(m_stateChangedSignalSpy->count(), 0);
+
+ QSignalSpy totalTimeChangedSignalSpy(m_media, SIGNAL(totalTimeChanged(qint64)));
+ QVERIFY(m_media->currentSource().type() != MediaSource::Invalid);
+ Phonon::State state = m_media->state();
+ QVERIFY(state == Phonon::StoppedState || state == Phonon::PlayingState || Phonon::PausedState);
+ m_media->setCurrentSource(m_url);
+ // before calling play() we better make sure that if play() finishes very fast that we don't get
+ // called again
+ disconnect(m_media, SIGNAL(finished()), this, SLOT(setMediaAndPlay()));
+ state = m_media->state();
+ startPlayback2(state);
+
+ emit continueTestPlayOnFinish();
+}
+
+void tst_MediaObject::testPlayBeforeFinish()
+{
+ startPlayback();
+ QCOMPARE(m_stateChangedSignalSpy->size(), 0);
+ Phonon::State state = m_media->state();
+ QCOMPARE(state, Phonon::PlayingState);
+ m_media->setCurrentSource(m_url);
+ m_media->play();
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 4000));
+ }
+ // first (optional) state to reach is StoppedState
+ QList<QVariant> args = m_stateChangedSignalSpy->takeFirst();
+ Phonon::State oldstate = qvariant_cast<Phonon::State>(args.at(1));
+ QCOMPARE(oldstate, state);
+ state = qvariant_cast<Phonon::State>(args.at(0));
+ if (state == Phonon::StoppedState) {
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 4000));
+ }
+ args = m_stateChangedSignalSpy->takeFirst();
+ oldstate = qvariant_cast<Phonon::State>(args.at(1));
+ QCOMPARE(oldstate, state);
+ state = qvariant_cast<Phonon::State>(args.at(0));
+ }
+ // next LoadingState
+ QCOMPARE(state, Phonon::LoadingState);
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 4000));
+ }
+ // next either BufferingState or PlayingState
+ args = m_stateChangedSignalSpy->takeFirst();
+ oldstate = qvariant_cast<Phonon::State>(args.at(1));
+ QCOMPARE(oldstate, state);
+ state = qvariant_cast<Phonon::State>(args.at(0));
+ if (state == Phonon::BufferingState) {
+ if (m_stateChangedSignalSpy->isEmpty()) {
+ QVERIFY(QTest::waitForSignal(m_media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 4000)); // buffering can take a while
+ }
+ args = m_stateChangedSignalSpy->takeFirst();
+ oldstate = qvariant_cast<Phonon::State>(args.at(1));
+ QCOMPARE(oldstate, state);
+ state = qvariant_cast<Phonon::State>(args.at(0));
+ }
+#ifdef Q_WS_MAC
+ // m_media->setCurrentSource(m_url) in phonon frontend will always call
+ // 'stop' on the backend before calling 'setSource'. So the QT7 backend
+ // goes into stop, and naturally remains there after setting the new source.
+ // So going into playing state cannot happend when the backend is synchronized.
+ // Thats the reason for the ifdef.
+ QCOMPARE(state, Phonon::StoppedState);
+#else
+ stopPlayback(Phonon::PlayingState);
+#endif
+}
+
+void tst_MediaObject::cleanupTestCase()
+{
+ if (m_stateChangedSignalSpy)
+ delete m_stateChangedSignalSpy;
+ if (m_media)
+ delete m_media;
+#ifdef Q_OS_WINCE
+ QTest::qWait(200);
+#endif
+ if (!m_tmpFileName.isNull()) {
+ QVERIFY(QFile::remove(m_tmpFileName));
+ }
+#ifdef Q_OS_SYMBIAN
+ if (m_iapConnectionObserver)
+ delete m_iapConnectionObserver;
+#endif //Q_OS_SYMBIAN
+}
+
+void tst_MediaObject::_testOneSeek(qint64 seekTo)
+{
+ qint64 t = m_media->totalTime();
+ qint64 oldTime = m_media->currentTime();
+ if (oldTime == seekTo) {
+ return;
+ }
+
+ QTime seekDuration;
+ seekDuration.start();
+ m_media->seek(seekTo);
+
+ QVERIFY(oldTime == 0 || seekTo == 0 || m_media->currentTime() != 0);
+
+ int bufferingTime = 0;
+ Phonon::State s = m_media->state();
+ QTime timer;
+ if (s == Phonon::BufferingState) {
+ timer.start();
+ }
+ QEventLoop loop;
+ connect(m_media, SIGNAL(tick(qint64)), &loop, SLOT(quit()));
+ connect(m_media, SIGNAL(stateChanged(Phonon::State,Phonon::State)), &loop, SLOT(quit()));
+
+ qint64 c = m_media->currentTime();
+ qint64 r = m_media->remainingTime();
+ int elapsed = 0;
+ while (qAbs(c - seekTo) > ALLOWED_SEEK_INACCURACY){
+ QTimer::singleShot(ALLOWED_TIME_FOR_SEEKING, &loop, SLOT(quit()));
+
+ loop.exec();
+ c = m_media->currentTime();
+ r = m_media->remainingTime();
+ if (s == Phonon::BufferingState) {
+ bufferingTime += timer.restart();
+ } else {
+ timer.start();
+ }
+ s = m_media->state();
+ elapsed = seekDuration.elapsed();
+ QVERIFY(elapsed - bufferingTime < (ALLOWED_TIME_FOR_SEEKING + SEEKING_TOLERANCE));
+ }
+
+ QVERIFY(c >= seekTo - ALLOWED_SEEK_INACCURACY);
+ if (s == Phonon::PausedState) {
+ QVERIFY(bufferingTime == 0);
+ elapsed = 0;
+ }
+ if (c > seekTo + ALLOWED_SEEK_INACCURACY + elapsed - bufferingTime) {
+ QFAIL("currentTime is greater than the requested time + the time that elapsed since the seek started.");
+ }
+ if (c + r > t + 200 || c + r < t - 200) {
+ QFAIL("currentTime + remainingTime doesn't come close enough to totalTime");
+ }
+ m_success = true;
+}
+
+void tst_MediaObject::volumeSliderMuteVisibility()
+{
+ //this test doesn't really belong to mediaobject
+ // ### see if we should create a realy Phonon::VolumeSlider autotest
+ Phonon::VolumeSlider slider;
+ QVERIFY(slider.isMuteVisible()); // that is the default value
+ slider.setMuteVisible(true);
+ QVERIFY(slider.isMuteVisible());
+
+ //let's check that changing the visibility of the slider itself
+ //doesn't change what the slider reports
+ slider.setVisible(false);
+ QVERIFY(slider.isMuteVisible());
+ slider.setVisible(true);
+
+ slider.setMuteVisible(false);
+ QVERIFY(!slider.isMuteVisible());
+ slider.setMuteVisible(true);
+ QVERIFY(slider.isMuteVisible());
+}
+
+
+#endif //QT_NO_PHONON
+
+
+QTEST_MAIN(tst_MediaObject)
+
+#include "tst_mediaobject.moc"
+// vim: sw=4 ts=4
diff --git a/tests/auto/mediaobject_wince_ds9/dummy.cpp b/tests/auto/mediaobject_wince_ds9/dummy.cpp
new file mode 100644
index 0000000..27f7121
--- /dev/null
+++ b/tests/auto/mediaobject_wince_ds9/dummy.cpp
@@ -0,0 +1,44 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtTest/QtTest>
+
+QTEST_NOOP_MAIN
+
diff --git a/tests/auto/mediaobject_wince_ds9/mediaobject_wince_ds9.pro b/tests/auto/mediaobject_wince_ds9/mediaobject_wince_ds9.pro
new file mode 100644
index 0000000..ec3cd59
--- /dev/null
+++ b/tests/auto/mediaobject_wince_ds9/mediaobject_wince_ds9.pro
@@ -0,0 +1,18 @@
+############################################################
+# Project file for autotest for file mediaobject.h
+############################################################
+
+load(qttest_p4)
+
+contains(QT_CONFIG, phonon):QT += phonon
+
+wince*{
+ SOURCES += ../mediaobject/tst_mediaobject.cpp
+ HEADERS += ../mediaobject/qtesthelper.h
+ RESOURCES += ../mediaobject/mediaobject.qrc
+ DEPLOYMENT_PLUGIN += phonon_ds9
+ DEFINES += tst_MediaObject=tst_MediaObject_ds9
+} else {
+ SOURCES += dummy.cpp
+}
+
diff --git a/tests/auto/phonon.pro b/tests/auto/phonon.pro
new file mode 100644
index 0000000..7549428
--- /dev/null
+++ b/tests/auto/phonon.pro
@@ -0,0 +1,5 @@
+TEMPLATE=subdirs
+SUBDIRS=\
+ mediaobject \
+# mediaobject_wince_ds9 \ This is Windows CE only (we test the second phonon backend ds9 here)
+
diff --git a/tests/global/.gitignore b/tests/global/.gitignore
new file mode 100644
index 0000000..1e49c60
--- /dev/null
+++ b/tests/global/.gitignore
@@ -0,0 +1,2 @@
+Makefile
+global.pro