2009-12-24 20:16:07 +01:00
|
|
|
#ifndef ENGINE_FWD_H
|
|
|
|
#define ENGINE_FWD_H
|
|
|
|
|
2010-02-03 17:51:56 +01:00
|
|
|
#include <QString>
|
|
|
|
|
2009-12-24 20:16:07 +01:00
|
|
|
/// Used by eg engineobserver.h, and thus we reduce header dependencies on enginebase.h
|
|
|
|
|
|
|
|
namespace Engine
|
|
|
|
{
|
2010-05-23 17:35:28 +02:00
|
|
|
struct SimpleMetaBundle;
|
2009-12-24 20:16:07 +01:00
|
|
|
class Base;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* You should return:
|
|
|
|
* Playing when playing,
|
|
|
|
* Paused when paused
|
|
|
|
* Idle when you still have a URL loaded (ie you have not been told to stop())
|
|
|
|
* Empty when you have been told to stop(), or an error occurred and you stopped yourself
|
|
|
|
*
|
|
|
|
* It is vital to be Idle just after the track has ended!
|
|
|
|
*/
|
|
|
|
enum State { Empty, Idle, Playing, Paused };
|
2010-04-12 03:59:21 +02:00
|
|
|
|
2011-03-13 19:37:46 +01:00
|
|
|
enum TrackChangeType {
|
|
|
|
// One of:
|
|
|
|
First = 0x01,
|
|
|
|
Manual = 0x02,
|
|
|
|
Auto = 0x04,
|
|
|
|
|
|
|
|
// Any of:
|
|
|
|
SameAlbum = 0x10,
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(TrackChangeFlags, TrackChangeType);
|
2009-12-24 20:16:07 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
typedef Engine::Base EngineBase;
|
|
|
|
|
|
|
|
#endif
|