summaryrefslogtreecommitdiff
path: root/Movie.h
blob: 576f618f09df91a5e01d8851b42df1a125d544d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/* Opaque reference to Movie in
   Movie library
*/
struct Movie;
typedef struct Movie Movie;

/* Initialise Movie handler
   - points is number of balls
*/
void Movie_init( int points );

/* Deinitialises Movie handler
*/
void Movie_destroy( void );

/* Load one movie from File
   - filename pointer to file containing
     Movie
   - returns handle to the Movie or NULL
     on error

File format is:
  %d\n number of points for Cube
  %d\n number of frames
  %d\n frame rate
  foreach frame
    foreach point * point * point
       %d%d%d RGB of pixel
*/
Movie *Movie_loadmovie( char *filename );

/* Kills one movie from memory
   - movie reference to cached movie
*/
void Movie_unloadmovie( Movie *movie );

/* Play movie
   - movie Movie to play
   - rate framerate
*/
void Movie_playmovie( Movie *movie, int rate );

/* Inform Movie library that one frame is going
   to be rendered and hence all following pixel
   colors come from the same frame descriptor
*/
void Movie_stamptime( void );

/* Test, whether next frame is to be displayed
*/
int Movie_checkframe( void );

/* Get color information for one specific pixel
   in current frame
   - x,y,z coordinates of ball
*/
unsigned long Movie_getpixelcolor( int x, int y, int z);