OROCHI
 
Loading...
Searching...
No Matches
GxResMovie.h
Go to the documentation of this file.
1//===========================================================================
9//===========================================================================
10#pragma once
11
12GX_MOVIE_NAMESPACE_BEGIN()
13
14#if GX_DEVELOP
15//===========================================================================
17//===========================================================================
18class GxResMovieWMV : public GxResBase
19{
20 //-------------------------------------------------------------
22 //-------------------------------------------------------------
24public:
25 // RTTI定義
26 GX_RTTI_RESOURCE_ICON( GxResMovieWMV, GxResBase, GxRtti::ICON_TYPE::MOVIE)
27 // ClassBaseReference継承クラス用禁止宣言
29
30
31 //-----------------------------------------------------------
33 //-----------------------------------------------------------
35
37 GxResMovieWMV(void);
39 void cleanup( void ) override;
41 virtual b32 load(GxStream& stream, u32 dataSize);
42
44 //-------------------------------------------------------------
46 //-------------------------------------------------------------
48
50 constexpr void* getFinalizeData( void ) const { return _pFinalizedData; }
52 constexpr u32 getFinalizeDataSize( void ) const { return _finalizedDataSize; }
53
55 //-----------------------------------------------------------
57 //-----------------------------------------------------------
59protected:
61 b32 save( GxStream& stream );
62
64 //-------------------------------------------------------------
66 //-------------------------------------------------------------
68protected:
69 void* _pFinalizedData;
70 u32 _finalizedDataSize;
71
73};
74
75//===========================================================================
77//===========================================================================
78class GxResMovieWMVInterpolator : public GxResMovieWMV
79{
80 //-----------------------------------------------------------
82 //-----------------------------------------------------------
84public:
85 // RTTI宣言
86 GX_RTTI_RESOURCE(GxResMovieWMVInterpolator, GxResMovieWMV)
87 // ClassBaseReference継承クラス用禁止宣言
88 GX_PROHIBIT_CLASS_BASE_REFERENCE(GxResMovieWMVInterpolator);
89
91 //-----------------------------------------------------------
93 //-----------------------------------------------------------
95
97 GxResMovieWMVInterpolator(void){}
98
100 //-----------------------------------------------------------
102 //-----------------------------------------------------------
104
106 GX_FORCE_INLINE b32 finalize(void){ return true; }
107
108protected:
110 b32 load(GxStream& stream, u32 dataSize) override;
112 b32 save(GxStream& stream);
113
115};
116
117//===========================================================================
119//===========================================================================
120class GxResMovieMP4 : public GxResBase
121{
122 //-------------------------------------------------------------
124 //-------------------------------------------------------------
126public:
127 // RTTI定義
128 GX_RTTI_RESOURCE( GxResMovieMP4, GxResBase )
129 // ClassBaseReference継承クラス用禁止宣言
131
132
133 //-----------------------------------------------------------
135 //-----------------------------------------------------------
137
139 GxResMovieMP4(void);
141 void cleanup( void ) override;
143 virtual b32 load(GxStream& stream, u32 dataSize);
144
146 //-------------------------------------------------------------
148 //-------------------------------------------------------------
150
152 constexpr void* getFinalizeData( void ) const { return _pFinalizedData; }
154 constexpr u32 getFinalizeDataSize( void ) const { return _finalizedDataSize; }
155
157 //-----------------------------------------------------------
159 //-----------------------------------------------------------
161protected:
163 b32 save( GxStream& stream );
164
166 //-------------------------------------------------------------
168 //-------------------------------------------------------------
170protected:
171 void* _pFinalizedData;
172 u32 _finalizedDataSize;
173
175};
176
177//===========================================================================
179//===========================================================================
180class GxResMovieMP4Interpolator : public GxResMovieMP4
181{
182 //-----------------------------------------------------------
184 //-----------------------------------------------------------
186public:
187 // RTTI宣言
188 GX_RTTI_RESOURCE(GxResMovieMP4Interpolator, GxResMovieMP4)
189 // ClassBaseReference継承クラス用禁止宣言
190 GX_PROHIBIT_CLASS_BASE_REFERENCE(GxResMovieMP4Interpolator);
191
193 //-----------------------------------------------------------
195 //-----------------------------------------------------------
197
199 GxResMovieMP4Interpolator(void){}
200
202 //-----------------------------------------------------------
204 //-----------------------------------------------------------
206
208 GX_FORCE_INLINE b32 finalize(void){ return true; }
209
210protected:
212 b32 load(GxStream& stream, u32 dataSize) override;
214 b32 save(GxStream& stream);
215
217};
218#endif // GX_DEVELOP
219
220GX_MOVIE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
#define GX_RTTI_RESOURCE(__THIS__, __BASE__)
リソースクラス型情報宣言
Definition GxRttiResource.h:102
リソース基底クラス
Definition GxResBase.h:23
void cleanup(void) override
解放
Definition GxResBase.cpp:74
b32 load(GxStream &stream, u32 size)
ロード
Definition GxResBase.h:394
ストリーム基礎クラス
Definition GxStream.h:20
32bitブーリアン
Definition GxDefine.h:173