146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner/* 246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner SDL - Simple DirectMedia Layer 346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner Copyright (C) 1997-2006 Sam Lantinga 446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner This library is free software; you can redistribute it and/or 646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner modify it under the terms of the GNU Lesser General Public 746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner License as published by the Free Software Foundation; either 846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner version 2.1 of the License, or (at your option) any later version. 946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 1046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner This library is distributed in the hope that it will be useful, 1146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner but WITHOUT ANY WARRANTY; without even the implied warranty of 1246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner Lesser General Public License for more details. 1446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 1546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner You should have received a copy of the GNU Lesser General Public 1646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner License along with this library; if not, write to the Free Software 1746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 1846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 1946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner Sam Lantinga 2046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner slouken@libsdl.org 2146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner*/ 2246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#include "SDL_config.h" 2346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 2446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 2546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#ifndef __SDL_SYS_YUV_H__ 2646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#define __SDL_SYS_YUV_H__ 2746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 2846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner/* This is the BeOS implementation of YUV video overlays */ 2946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 3046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#include "SDL_video.h" 3146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#include "SDL_lowvideo.h" 3246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 3346be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern "C" { 3446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 3546be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerstruct private_yuvhwdata 3646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner{ 3746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner/* FRAMEDATA* CurrentFrameData; 3846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner FRAMEDATA* FrameData0; 3946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner FRAMEDATA* FrameData1; 4046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner PgScalerProps_t props; 4146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner PgScalerCaps_t caps; 4246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner PgVideoChannel_t* channel; 4346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner PhArea_t CurrentViewPort; 4446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner PhPoint_t CurrentWindowPos; 4546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner long format; 4646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner int scaler_on; 4746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner int current; 4846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner long YStride; 4946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner long VStride; 5046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner long UStride; 5146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner int ischromakey; 5246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner long chromakey; 5346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner int forcedredraw; 5446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner unsigned long State; 5546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner long flags; 5646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner*/ 5746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner SDL_Surface *display; 5846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner BView *bview; 5946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner bool first_display; 6046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner BBitmap *bbitmap; 6146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner int locked; 6246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner}; 6346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 6446be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern BBitmap * BE_GetOverlayBitmap(BRect bounds, color_space cs); 6546be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern SDL_Overlay* BE_CreateYUVOverlay(_THIS, int width, int height, Uint32 format, SDL_Surface* display); 6646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int BE_LockYUVOverlay(_THIS, SDL_Overlay* overlay); 6746be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern void BE_UnlockYUVOverlay(_THIS, SDL_Overlay* overlay); 6846be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int BE_DisplayYUVOverlay(_THIS, SDL_Overlay* overlay, SDL_Rect* src, SDL_Rect* dst); 6946be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern void BE_FreeYUVOverlay(_THIS, SDL_Overlay* overlay); 7046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 7146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner}; 7246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner 7346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif /* __SDL_PH_YUV_H__ */ 74