/* * Strawberry Music Player * This file was part of Clementine. * Copyright 2010, David Sansome * Copyright 2018-2021, Jonas Kvinge * * Strawberry 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 3 of the License, or * (at your option) any later version. * * Strawberry 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 Strawberry. If not, see . * */ #include "config.h" #include "metatypes.h" #ifdef HAVE_GSTREAMER # include # include #endif #include #include #include #include #include #include #include #include #include #include #include #include #include #ifdef HAVE_DBUS # include # include #endif #include "song.h" #include "engine/engine_fwd.h" #include "engine/enginebase.h" #include "engine/enginetype.h" #ifdef HAVE_GSTREAMER # include "engine/gstenginepipeline.h" #endif #include "collection/collectiondirectory.h" #include "playlist/playlistitem.h" #include "playlist/playlistsequence.h" #include "covermanager/albumcoverloaderresult.h" #include "covermanager/albumcoverfetcher.h" #include "covermanager/coversearchstatistics.h" #include "equalizer/equalizer.h" #ifdef HAVE_DBUS # include "mpris2.h" # include "osd/osddbus.h" # include "dbus/metatypes.h" #endif #include "internet/internetsearchview.h" #include "smartplaylists/playlistgenerator_fwd.h" #include "radios/radiochannel.h" #ifdef HAVE_LIBMTP # include "device/mtpconnection.h" #endif void RegisterMetaTypes() { qRegisterMetaType("const char*"); qRegisterMetaType>("QList"); qRegisterMetaType>("QList"); qRegisterMetaType>("QVector"); qRegisterMetaType("QFileInfo"); qRegisterMetaType(); qRegisterMetaType("QAbstractSocket::SocketState"); qRegisterMetaType("QNetworkCookie"); qRegisterMetaType>("QList"); qRegisterMetaType("QNetworkReply*"); qRegisterMetaType("QNetworkReply**"); qRegisterMetaType("QItemSelection"); qRegisterMetaType>("ColumnAlignmentMap"); qRegisterMetaType>("ColumnAlignmentIntMap"); #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) qRegisterMetaTypeStreamOperators>("ColumnAlignmentMap"); qRegisterMetaTypeStreamOperators>("ColumnAlignmentIntMap"); #endif qRegisterMetaType("Directory"); qRegisterMetaType("DirectoryList"); qRegisterMetaType("Subdirectory"); qRegisterMetaType("SubdirectoryList"); qRegisterMetaType("Song"); qRegisterMetaType("SongList"); qRegisterMetaType("SongMap"); qRegisterMetaType>("QList"); qRegisterMetaType>("QMap"); qRegisterMetaType("EngineType"); qRegisterMetaType("Engine::SimpleMetaBundle"); qRegisterMetaType("Engine::State"); qRegisterMetaType("Engine::TrackChangeFlags"); qRegisterMetaType("EngineBase::OutputDetails"); #ifdef HAVE_GSTREAMER qRegisterMetaType("GstBuffer*"); qRegisterMetaType("GstElement*"); qRegisterMetaType("GstEnginePipeline*"); #endif qRegisterMetaType("PlaylistItemPtr"); qRegisterMetaType("PlaylistItemList"); qRegisterMetaType>("QList"); qRegisterMetaType("PlaylistSequence::RepeatMode"); qRegisterMetaType("PlaylistSequence::ShuffleMode"); qRegisterMetaType("AlbumCoverLoaderResult"); qRegisterMetaType("AlbumCoverLoaderResult::Type"); qRegisterMetaType("CoverProviderSearchResult"); qRegisterMetaType("CoverSearchStatistics"); qRegisterMetaType>("QList"); qRegisterMetaType("CoverProviderSearchResults"); qRegisterMetaType("Equalizer::Params"); #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) qRegisterMetaTypeStreamOperators("Equalizer::Params"); #endif #ifdef HAVE_DBUS qDBusRegisterMetaType>(); qDBusRegisterMetaType(); qDBusRegisterMetaType(); qDBusRegisterMetaType(); qDBusRegisterMetaType(); qDBusRegisterMetaType(); qDBusRegisterMetaType(); qDBusRegisterMetaType(); qDBusRegisterMetaType(); #endif qRegisterMetaType("InternetSearchView::ResultList"); qRegisterMetaType("InternetSearchView::Result"); qRegisterMetaType("PlaylistGeneratorPtr"); qRegisterMetaType("RadioChannelList"); #ifdef HAVE_LIBMTP qRegisterMetaType("MtpConnection*"); #endif }