Archived
1
0
This repository has been archived on 2024-10-17. You can view files and clone it, but cannot push or open issues or pull requests.
winamp/Src/Winamp/VideoOutputChild.h
2024-09-24 14:54:57 +02:00

36 lines
952 B
C++

#ifndef NULLSOFT_VIDEOOUTPUTCHILDH
#define NULLSOFT_VIDEOOUTPUTCHILDH
class SubsItem;
#include <windows.h>
#include "VideoAspectAdjuster.h"
/*
VideoRenderer is the base classes for the various video rendering classes
*/
class VideoRenderer
{
public:
virtual ~VideoRenderer()
{
}
virtual int create(HWND parent, VideoAspectAdjuster *_adjuster, int w, int h, unsigned int type, int flipit, double aspectratio) = 0; //return 1 if ok
virtual int needChange() = 0; //return 1 if need to renegociate video output
virtual int onPaint(HWND hwnd) { return 0; } //return 1 if override
virtual void displayFrame(const char *buf, int size, int time) = 0;
virtual void close()= 0; // hides any output of the video
virtual void timerCallback() { }
virtual void setPalette(RGBQUAD *pal) { }
virtual void drawSubtitle(SubsItem *item) { }
virtual void resetSubtitle() { }
virtual void setVFlip(int on) { }
virtual void Refresh()=0;
};
#endif