File indexing completed on 2024-04-28 15:16:02
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2014 Sanjiban Bairagya <sanjiban22393@gmail.com> 0004 // 0005 0006 #ifndef PLAYBACKITEM_H 0007 #define PLAYBACKITEM_H 0008 0009 #include <QObject> 0010 0011 namespace Marble 0012 { 0013 0014 class GeoDataContainer; 0015 class GeoDataCoordinates; 0016 class GeoDataFeature; 0017 class GeoDataPlacemark; 0018 0019 class PlaybackItem : public QObject 0020 { 0021 Q_OBJECT 0022 public: 0023 ~PlaybackItem() override; 0024 virtual void play() = 0; 0025 virtual void pause() = 0; 0026 virtual void seek( double position ) = 0; 0027 virtual void stop() = 0; 0028 virtual double duration() const = 0; 0029 0030 Q_SIGNALS: 0031 void finished(); 0032 void centerOn( const GeoDataCoordinates &coordinates ); 0033 void paused(); 0034 void progressChanged( double seconds ); 0035 void balloonShown( GeoDataPlacemark* ); 0036 void balloonHidden(); 0037 void updated( GeoDataFeature* ); 0038 void added( GeoDataContainer *parent, GeoDataFeature *feature, int row ); 0039 void removed( const GeoDataFeature *feature ); 0040 }; 0041 } 0042 #endif