17using namespace std::chrono_literals;
19#define DESC QString("Visualiser: ")
27 VisualNode(
short *l,
short *r,
unsigned long n, std::chrono::milliseconds timecode)
55 QPaintDevice* device) = 0;
56 virtual QString
Name(
void) = 0;
58 void add(
const void *b,
unsigned long b_len,
59 std::chrono::milliseconds timecode,
60 int c,
int p)
override;
65 void DeleteNodes(
void);
66 std::chrono::milliseconds SetLastUpdate(
void);
69 bool m_needsPrepare {
false };
70 bool m_disabled {
false };
86 virtual const QString &
name(
void)
const = 0;
virtual void add(const void *b, unsigned long b_len, std::chrono::milliseconds timecode, int c, int p)=0
VideoVisualFactory * m_nextVideoVisualFactory
VideoVisualFactory * next() const
virtual const QString & name(void) const =0
virtual VideoVisual * Create(AudioPlayer *audio, MythRender *render) const =0
static VideoVisualFactory * VideoVisualFactories()
virtual ~VideoVisualFactory()=default
static VideoVisualFactory * g_videoVisualFactory
virtual bool SupportedRenderer(RenderType type)=0
bool NeedsPrepare() const
QList< VisualNode * > m_nodes
virtual void Draw(QRect area, MythPainter *painter, QPaintDevice *device)=0
virtual QString Name(void)=0
virtual void Prepare(const QRect)
VisualNode(short *l, short *r, unsigned long n, std::chrono::milliseconds timecode)
std::chrono::milliseconds m_offset