blob: e064d558ddf01c6194727946a57b29b9af47c8d1 (
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
#ifndef D_A_MOVIE_PLAYER_H
#define D_A_MOVIE_PLAYER_H
#include <thp.h>
#include "f_op/f_op_actor.h"
#include "d/d_drawlist.h"
struct daMP_THPReadBuffer {
u8* ptr;
s32 frameNumber;
BOOL isValid;
};
struct daMP_THPPlayer {
/* 0x000 */ DVDFileInfo fileInfo;
/* 0x03C */ THPHeader header;
/* 0x06C */ THPFrameCompInfo compInfo;
/* 0x080 */ THPVideoInfo videoInfo;
/* 0x08C */ THPAudioInfo audioInfo;
/* 0x09C */ void* thpWork;
/* 0x0A0 */ BOOL open;
/* 0x0A4 */ u8 state;
/* 0x0A5 */ u8 internalState;
/* 0x0A6 */ u8 playFlag;
/* 0x0A7 */ u8 audioExist;
/* 0x0A8 */ s32 dvdError;
/* 0x0AC */ s32 videoError;
/* 0x0B0 */ BOOL onMemory;
/* 0x0B4 */ u8* movieData;
/* 0x0B8 */ s32 initOffset;
/* 0x0BC */ s32 initReadSize;
/* 0x0C0 */ s32 initReadFrame;
/* 0x0C4 */ u32 curField;
/* 0x0C8 */ s64 retaceCount;
/* 0x0D0 */ s32 prevCount;
/* 0x0D4 */ s32 curCount;
/* 0x0D8 */ s32 videoDecodeCount;
/* 0x0DC */ f32 curVolume;
/* 0x0E0 */ f32 targetVolume;
/* 0x0E4 */ f32 deltaVolume;
/* 0x0E8 */ s32 rampCount;
/* 0x0EC */ s32 curAudioTrack;
/* 0x0F0 */ s32 curVideoNumber;
/* 0x0F4 */ s32 curAudioNumber;
/* 0x0F8 */ THPTextureSet* dispTextureSet;
/* 0x0FC */ THPAudioBuffer* playAudioBuffer;
/* 0x100 */ daMP_THPReadBuffer readBuffer[10];
/* 0x000 */ THPTextureSet textureSet[THP_TEXTURE_SET_COUNT];
/* 0x000 */ THPAudioBuffer audioBuffer[THP_AUDIO_BUFFER_COUNT];
};
/**
* @ingroup actors-unsorted
* @class daMP_c
* @brief Movie Player
*
* @details
*
*/
class daMP_c : public fopAc_ac_c {
public:
static int daMP_c_THPPlayerPlay();
static void daMP_c_THPPlayerPause();
static u32 daMP_c_Get_MovieRestFrame();
static void daMP_c_Set_PercentMovieVolume(f32);
int daMP_c_Get_arg_demoNo();
int daMP_c_Get_arg_movieNo();
int daMP_c_Init();
int daMP_c_Finish();
int daMP_c_Main();
int daMP_c_Draw();
static int daMP_c_Callback_Init(fopAc_ac_c*);
static int daMP_c_Callback_Finish(daMP_c*);
static int daMP_c_Callback_Main(daMP_c*);
static int daMP_c_Callback_Draw(daMP_c*);
static daMP_c* m_myObj;
private:
/* 0x568 */ u32 (*mpGetMovieRestFrame)(void);
/* 0x56C */ void (*mpSetPercentMovieVol)(f32);
/* 0x570 */ u32 (*mpTHPGetTotalFrame)(void);
/* 0x574 */ int (*mpTHPPlay)(void);
/* 0x578 */ void (*mpTHPStop)(void);
/* 0x57C */ int (*mpTHPPause)(void);
};
STATIC_ASSERT(sizeof(daMP_c) == 0x580);
class daMP_Dlst_base_c : public dDlst_base_c {
public:
daMP_Dlst_base_c() {}
virtual void draw();
};
void daMP_PrepareReady(int);
#endif /* D_A_MOVIE_PLAYER_H */
|