WiiFlow_Lite/source/gui/WiiMovie.hpp

54 lines
900 B
C++
Raw Normal View History

2012-01-21 21:57:41 +01:00
#ifndef WII_MOVIE_H_
#define WII_MOVIE_H_
#include "gcvid.h"
#include "Timer.h"
#include "texture.hpp"
class WiiMovie
{
public:
WiiMovie() { inited = false; };
void Init(const char * filepath);
void DeInit();
bool Play(bool loop = false);
void Stop();
bool Continue();
volatile bool loaded;
TexData *Frame; //our current texture
TexData Buffer[2];
u8 BufferPos;
protected:
static void * UpdateThread(void *arg);
void FrameLoadLoop();
void ReadNextFrame();
void LoadNextFrame();
2012-01-21 21:57:41 +01:00
u8 * ThreadStack;
lwp_t ReadThread;
2012-01-21 21:57:41 +01:00
ThpVideoFile Video;
VideoFrame VideoF;
FILE *vFile;
float fps;
Timer PlayTime;
u32 VideoFrameCount;
bool Playing;
bool ExitRequested;
bool inited;
2012-01-21 21:57:41 +01:00
};
struct movieP
{
float x1;
float y1;
float x2;
float y2;
};
extern struct movieP normalMoviePos;
extern struct movieP zoomedMoviePos;
extern struct movieP currentMoviePos;
extern WiiMovie movie;
2012-01-21 21:57:41 +01:00
#endif