From 15318cad33835e4e2dc620d033e43cd930676cdd Mon Sep 17 00:00:00 2001 From: kergoth Date: Fri, 25 Jan 2002 22:14:26 +0000 Subject: Initial revision --- (limited to 'core/multimedia/opieplayer/libflash/flash.h') diff --git a/core/multimedia/opieplayer/libflash/flash.h b/core/multimedia/opieplayer/libflash/flash.h new file mode 100644 index 0000000..9330713 --- a/dev/null +++ b/core/multimedia/opieplayer/libflash/flash.h @@ -0,0 +1,129 @@ +/*/////////////////////////////////////////////////////////// +// Flash Plugin and Player +// Copyright (C) 1998 Olivier Debon +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +// +///////////////////////////////////////////////////////////// */ +#ifndef _FLASH_H_ +#define _FLASH_H_ + +#define PLUGIN_NAME "Shockwave Flash" +#define FLASH_VERSION_STRING "Version 0.4.10" + +/* Flags to pass to FlashExec */ +#define FLASH_WAKEUP 0x01 +#define FLASH_EVENT 0x02 +#define FLASH_CMD 0x04 + +/* Mask to extract commands */ +#define FLASH_CMD_MASK 0xf0 +/* Commands */ +#define FLASH_STOP 0x10 /* Pause the movie */ +#define FLASH_CONT 0x20 /* Continue the movie after pause */ +#define FLASH_REWIND 0x30 /* Rewind the movie and pause */ +#define FLASH_STEP 0x40 /* Frame by frame operation */ + +/* return codes of FlashExec */ +#define FLASH_STATUS_WAKEUP 0x01 /* FlashExec must be called again after a given time */ + +struct FlashInfo { + long frameRate; + long frameCount; + long frameWidth; + long frameHeight; + long version; +}; + +/* Player settings */ +#define PLAYER_LOOP (1<<0) +#define PLAYER_QUALITY (1<<1) +#define PLAYER_MENU (1<<2) + +/* Parser status */ +#define FLASH_PARSE_ERROR 0 +#define FLASH_PARSE_START 1 +#define FLASH_PARSE_NEED_DATA 2 +#define FLASH_PARSE_EOM 4 +#define FLASH_PARSE_WAKEUP 8 +#define FLASH_PARSE_OOM 16 /* Out Of Memory */ + +typedef void *FlashHandle; + +#if defined(__cplusplus) || defined(c_plusplus) +extern "C" { +#endif + +enum FlashEventType { + FeNone, + FeMouseMove, + FeButtonPress, + FeButtonRelease, + FeRefresh, + FeKeyPress, + /* internal events */ + FeKeyRelease, +}; + +enum FlashKey { + FeKeyUp = 1, + FeKeyDown, + FeKeyLeft, + FeKeyRight, + FeKeyEnter, + FeKeyNext +}; + + + +typedef struct FlashEvent { + enum FlashEventType type; + int x,y; /* Mouse coordinates, + relative to upper-left window corner */ + enum FlashKey key; +} FlashEvent; + +typedef struct FlashDisplay { + void *pixels; + int bpl; /* bytes per line */ + int width; + int height; + int depth; + int bpp; + int flash_refresh; + /* Clipping region */ + int clip_x, clip_y; + int clip_width, clip_height; +} FlashDisplay; + +extern FlashHandle FlashNew(); +extern void FlashGetInfo(FlashHandle fh, struct FlashInfo *fi); +extern long FlashGraphicInit(FlashHandle fh, FlashDisplay *fd); +extern void FlashSoundInit(FlashHandle fh, char *device); +extern int FlashParse(FlashHandle fh, int level, char *data, long size); +extern long FlashExec(FlashHandle fh, long flag, FlashEvent *fe, struct timeval *wakeDate); +extern void FlashClose(FlashHandle fh); +extern void FlashSetGetUrlMethod(FlashHandle flashHandle, void (*getUrl)(char *, char *, void *), void *); +extern void FlashSetGetSwfMethod(FlashHandle flashHandle, void (*getSwf)(char *url, int level, void *clientData), void *clientData); +extern void FlashSetCursorOnOffMethod(FlashHandle flashHandle, void (*cursorOnOff)(int , void *), void *clientData); +extern void FlashZoom(FlashHandle fh, int zoom); +extern void FlashOffset(FlashHandle fh, int x, int y); +extern void FlashSettings(FlashHandle fh, long settings); + +#if defined(__cplusplus) || defined(c_plusplus) +}; +#endif + +#endif /* _FLASH_H_ */ -- cgit v0.9.0.2