CnC_Remastered_Collection

Command and Conquer: Red Alert
Log | Files | Refs | README | LICENSE

MOVIE.H (1999B)


      1 //
      2 // Copyright 2020 Electronic Arts Inc.
      3 //
      4 // TiberianDawn.DLL and RedAlert.dll and corresponding source code is free 
      5 // software: you can redistribute it and/or modify it under the terms of 
      6 // the GNU General Public License as published by the Free Software Foundation, 
      7 // either version 3 of the License, or (at your option) any later version.
      8 
      9 // TiberianDawn.DLL and RedAlert.dll and corresponding source code is distributed 
     10 // in the hope that it will be useful, but with permitted additional restrictions 
     11 // under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
     12 // distributed with this program. You should have received a copy of the 
     13 // GNU General Public License along with permitted additional restrictions 
     14 // with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
     15 
     16 #ifndef _MPGMOVIE_H_
     17 #define _MPGMOVIE_H_
     18 /****************************************************************************
     19 *
     20 * FILE
     21 *     MpgMovie.h
     22 *
     23 * DESCRIPTION
     24 *     Movie playback using DirectShow Multimedia streaming and DirectDraw
     25 *
     26 * PROGRAMMER
     27 *     Denzil E. Long, Jr.
     28 *
     29 * DATE
     30 *     May 27, 1998
     31 *
     32 ****************************************************************************/
     33 
     34 #include <windows.h>
     35 #include <ddraw.h>
     36 
     37 #ifdef MPGEXPORT		  
     38 #define DLLCALL __declspec(dllexport)
     39 #else
     40 #define DLLCALL __declspec(dllimport)
     41 #endif
     42 
     43 typedef enum
     44 	{
     45 	MPGCMD_ERROR = -1,
     46 	MPGCMD_INIT = 0,
     47 	MPGCMD_CLEANUP,
     48 	MPGCMD_PALETTE,
     49 	MPGCMD_UPDATE
     50 	} MPG_CMD;
     51 
     52 typedef enum
     53 	{
     54 	MPGRES_QUIT = -1,
     55 	MPGRES_CONTINUE = 0,
     56 	MPGRES_LOSTFOCUS,
     57 	} MPG_RESPONSE;
     58 
     59 typedef MPG_RESPONSE (far __stdcall *LPMPGCALLBACK)(MPG_CMD cmd, LPVOID data, LPVOID user);
     60 
     61 extern "C"
     62 	{
     63 	DLLCALL void __stdcall MpgPlay(const char* name, IDirectDraw* dd,
     64 		IDirectDrawSurface* surface, RECT* dstRect);
     65 	DLLCALL void __stdcall MpgPause(void);
     66 	DLLCALL void __stdcall MpgResume(void);
     67 	DLLCALL void __stdcall MpgSetCallback(LPMPGCALLBACK callback, LPVOID user);
     68 	}
     69 
     70 #endif // _MPGMOVIE_H_