亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? flash.cpp

?? Evc編的一個在wince5.0上運行的flash播放器
?? CPP
字號:
/////////////////////////////////////////////////////////////
// Flash Plugin and Player
// Copyright (C) 1998,1999 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.
// 
///////////////////////////////////////////////////////////////
//  Author : Olivier Debon  <odebon@club-internet.fr>
//  

#include "swf.h"


void gettimeofday(struct timeval *tv, int c) {
	if (tv) {
		tv->tv_sec = 0;
		tv->tv_usec = 0;
	}
	// we'll only be using timevals for DELAY times, not absolute wakeup times.
}

char * __cdecl strdup (
        const char * string
        )
{
        char *memory;

        if (!string)
                return(NULL);

        if (memory = (char*)malloc(strlen(string) + 1))
                return(strcpy(memory,string));

        return(NULL);
}

/*int __cdecl printf (
        const char *format,
        ...
        ) {

	return 0;
}*/


#ifdef RCSID
static char *rcsid = "$Id: flash.cc,v 1.19 1999/01/31 20:18:39 olivier Exp $";
#endif

// Interface with standard C
extern "C" {

FlashHandle
FlashNew()
{
	FlashMovie *fh;

	fh = new FlashMovie;

        fh->main = new CInputScript;

	return (FlashHandle)fh;
}

int
FlashParse(FlashHandle flashHandle, int level, char *data, long size)
{
	FlashMovie *fh;
	CInputScript *script;
	int status = FLASH_PARSE_ERROR;

	fh = (FlashMovie *)flashHandle;

	for(script = fh->main; script != NULL; script = script->next) {
		if (script->level == level) {
			status = script->ParseData(fh, data, size);

			if (status & FLASH_PARSE_START) {
				fh->msPerFrame = 1000/fh->main->frameRate;
				script->program->rewindMovie();
			}
			break;
		}
	}

	return status;
}

void
FlashGetInfo(FlashHandle flashHandle, struct FlashInfo *fi)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fi->version = fh->main->m_fileVersion;
	fi->frameRate = fh->main->frameRate;
	fi->frameCount = fh->main->frameCount;
	fi->frameWidth = fh->main->frameRect.xmax - fh->main->frameRect.xmin;
	fi->frameHeight = fh->main->frameRect.ymax - fh->main->frameRect.ymin;
}

long FlashGraphicInit(FlashHandle flashHandle, FlashDisplay *fd)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->gd = new GraphicDevice(fd);

	fh->gd->setMovieDimension(fh->main->frameRect.xmax - fh->main->frameRect.xmin,
				  fh->main->frameRect.ymax - fh->main->frameRect.ymin);

	return 1;	// Ok
}

void
FlashSoundInit(FlashHandle flashHandle, char *device)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->sm = new SoundMixer(device);
}

void
FlashZoom(FlashHandle flashHandle, int zoom)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->gd->setMovieZoom(zoom);
}

void
FlashOffset(FlashHandle flashHandle, int x, int y)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->gd->setMovieOffset(x,y);
}

long
FlashExec(FlashHandle flashHandle, long flag, 
          FlashEvent *fe, struct timeval *wakeDate)
{
	FlashMovie *fh;
	long wakeUp = 0;

	fh = (FlashMovie *)flashHandle;

	if (!fh) return 0;
	if (fh->main == NULL) return 0; // Not ready
	if (fh->main->program == NULL) return 0; // Not ready
	if (fh->main->program->nbFrames == 0) return 0; // Still not ready
	if (fh->gd == 0) return 0;

	switch (flag & FLASH_CMD_MASK) {
		case FLASH_STOP:
			fh->main->program->pauseMovie();
			wakeUp = 0;
			break;
		case FLASH_CONT:
			fh->main->program->continueMovie();
			wakeUp = FLASH_STATUS_WAKEUP;
			break;
		case FLASH_REWIND:
			fh->main->program->rewindMovie();
			wakeUp = 0;
			break;
		case FLASH_STEP:
			fh->main->program->nextStepMovie();
			wakeUp = 0;
			break;
	}

	if (flag & FLASH_WAKEUP) {
		// Compute next wakeup time
		gettimeofday(wakeDate,0);
		wakeDate->tv_usec += fh->msPerFrame*1000;
		if (wakeDate->tv_usec > 1000000) {
			wakeDate->tv_usec -= 1000000;
			wakeDate->tv_sec++;
		}
                
		// Play frame
                wakeUp = fh->processMovie(fh->gd, fh->sm);
	}

        if (checkFlashTimer(&fh->scheduledTime)) {
            if (fh->handleEvent(fh->gd, fh->sm, &fh->scheduledEvent)) {
                wakeUp = 1;
            }
            
            setFlashTimer(&fh->scheduledTime, -1);
        }

	if (flag & FLASH_EVENT) {
            wakeUp = fh->handleEvent(fh->gd, fh->sm, fe);
            if (wakeUp) {
                /* Wake up at once, except for mouse move (40 ms after) */
                gettimeofday(wakeDate,0);
                if (fe->type == FeMouseMove) {
                    wakeDate->tv_usec += 40*1000;
                    if (wakeDate->tv_usec > 1000000) {
			wakeDate->tv_usec -= 1000000;
			wakeDate->tv_sec++;
                    }
                }
            }
	}

	return wakeUp || (fh->scheduledTime.tv_sec != -1);
}

void FlashSetGetSwfMethod(FlashHandle flashHandle, void (*getSwf)(char *url, int level, void *clientData), void *clientData)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->getSwf = getSwf;
	fh->getSwfClientData = clientData;
}


void
FlashSetCursorOnOffMethod(FlashHandle flashHandle, void (*cursorOnOff)(int , void *), void *clientData)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->cursorOnOff = cursorOnOff;
	fh->cursorOnOffClientData = clientData;
}

void
FlashSetGetUrlMethod(FlashHandle flashHandle, void (*getUrl)(char *, char *, void *), void *clientData)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->getUrl = getUrl;
	fh->getUrlClientData = clientData;
}

void
FlashClose(FlashHandle flashHandle)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	delete fh;
}

void
FlashSettings(FlashHandle flashHandle, long settings)
{
	FlashMovie *fh;

	fh = (FlashMovie *)flashHandle;

	fh->main->program->modifySettings( settings );
}

int shape_size,shape_nb,shaperecord_size,shaperecord_nb,style_size,style_nb;

void flash_dump(void)
{
    //printf("flash: shape_size=%d (nb=%d)\n",shape_size,shape_nb);
    //printf("flash: shaperecord_size=%d (nb=%d)\n",shaperecord_size,shaperecord_nb);
    //printf("flash: style_size=%d (nb=%d)\n",style_size,style_nb);
}

}; /* end of extern C */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产麻豆精品95视频| 国产成人亚洲综合色影视 | 亚洲成人免费影院| 色先锋资源久久综合| 国产精品视频一二| 国产91丝袜在线18| 国产拍揄自揄精品视频麻豆| 国产精品资源在线| 久久久久国产一区二区三区四区| 国产在线日韩欧美| 久久久久久久性| 高清久久久久久| 欧美国产日韩一二三区| 成人美女视频在线看| 国产精品久久久久久久午夜片| 粉嫩欧美一区二区三区高清影视| 国产视频一区二区在线| 国产精品1区2区3区| 国产欧美视频一区二区三区| 成人午夜在线播放| 亚洲欧洲国产专区| 色av一区二区| 三级影片在线观看欧美日韩一区二区| 欧美日韩在线播放三区四区| 日韩电影在线一区| 亚洲精品在线免费观看视频| 国产福利不卡视频| 中文字幕一区二区三区蜜月 | 欧美午夜不卡在线观看免费| 亚洲国产精品一区二区www| 7777精品伊人久久久大香线蕉超级流畅| 午夜精品一区二区三区电影天堂| 欧美一区二区免费视频| 久久99国产精品麻豆| 国产色产综合产在线视频| 成人av网站在线观看免费| 一区二区三区免费网站| 在线综合亚洲欧美在线视频| 久久av老司机精品网站导航| 久久久久国产一区二区三区四区| av中文字幕亚洲| 亚洲成av人片一区二区三区| 精品免费99久久| 成人三级在线视频| 亚洲网友自拍偷拍| 精品日韩在线一区| av成人免费在线观看| 午夜欧美一区二区三区在线播放| 欧美精品一区二区在线观看| av不卡在线观看| 日韩一区精品字幕| 国产欧美日产一区| 欧美亚洲一区二区在线观看| 美国十次了思思久久精品导航| 欧美国产一区二区| 欧美精选午夜久久久乱码6080| 国内精品视频一区二区三区八戒| 亚洲欧美另类综合偷拍| 日韩欧美一区在线观看| youjizz国产精品| 日日夜夜免费精品| 欧美经典三级视频一区二区三区| 欧美性极品少妇| 国产高清不卡一区二区| 亚洲欧美激情一区二区| 精品国产一区久久| 日本高清不卡视频| 狠狠色伊人亚洲综合成人| 亚洲精品国产一区二区三区四区在线| 日韩丝袜情趣美女图片| www.激情成人| 精品无人码麻豆乱码1区2区| 亚洲免费观看高清完整版在线观看 | 91成人国产精品| 激情深爱一区二区| 亚洲一区中文日韩| 久久蜜桃av一区精品变态类天堂| 在线观看日韩精品| 国产精品资源在线观看| 日韩国产欧美在线播放| 日韩理论在线观看| 久久久噜噜噜久久人人看| 欧美疯狂做受xxxx富婆| 99久久久免费精品国产一区二区| 老司机精品视频在线| 亚洲在线观看免费视频| 中文字幕欧美区| 日韩精品最新网址| 欧美日韩一卡二卡三卡 | 欧美精品一区视频| 欧美精品国产精品| 99国产精品国产精品久久| 狠狠狠色丁香婷婷综合激情| 午夜精品视频一区| 亚洲精品国产成人久久av盗摄| 国产亚洲欧美日韩在线一区| 91精品婷婷国产综合久久| 一本大道久久a久久精品综合| 国产精品18久久久久| 日本sm残虐另类| 亚洲成在人线免费| 亚洲精品第1页| 亚洲欧洲av另类| 欧美激情在线观看视频免费| 精品久久五月天| 日韩亚洲欧美中文三级| 欧美日韩国产一级| 91久久香蕉国产日韩欧美9色| 成人视屏免费看| 国产在线国偷精品免费看| 五月天中文字幕一区二区| 一区二区在线看| 综合久久一区二区三区| 国产精品伦一区| 欧美激情综合在线| 日本一区二区三区视频视频| 久久久久久久综合日本| 久久久久免费观看| 精品国产乱码久久久久久免费| 69久久夜色精品国产69蝌蚪网| 精品视频全国免费看| 欧美影院午夜播放| 色哟哟一区二区三区| 99久久精品国产观看| 97超碰欧美中文字幕| www.欧美日韩| 91片黄在线观看| 色综合久久66| 色婷婷一区二区| 色天天综合久久久久综合片| 91小视频免费观看| 色婷婷激情一区二区三区| 97se亚洲国产综合自在线观| 波多野结衣视频一区| 91日韩一区二区三区| 在线视频你懂得一区二区三区| 91麻豆swag| 日本韩国精品一区二区在线观看| 色噜噜夜夜夜综合网| 91福利小视频| 欧美夫妻性生活| 欧美sm极限捆绑bd| 久久久久久久久久美女| 久久精品免视看| 国产精品白丝在线| 玉米视频成人免费看| 亚洲第一搞黄网站| 蜜臀av一区二区在线免费观看| 久久99久久久欧美国产| 美女一区二区三区| 国产精品一区二区久久精品爱涩| 高清视频一区二区| 一本一本久久a久久精品综合麻豆| 91国产丝袜在线播放| 制服丝袜中文字幕一区| 精品sm在线观看| 中文字幕高清不卡| 亚洲一区二区三区美女| 蜜臀av亚洲一区中文字幕| 国产suv精品一区二区三区| 91亚洲精品久久久蜜桃| 欧美三片在线视频观看| 欧美成人a视频| 一色桃子久久精品亚洲| 亚洲一级片在线观看| 免费高清在线视频一区·| 国产激情视频一区二区三区欧美| 成人av资源站| 欧美日韩国产综合久久| 久久久亚洲高清| 亚洲综合免费观看高清完整版在线 | 亚洲欧美国产高清| 五月天丁香久久| 国产精品小仙女| 在线观看不卡视频| 日韩欧美国产小视频| 国产精品视频在线看| 亚洲成人激情自拍| 国产精品资源网| 欧美性一级生活| 久久久久国产精品免费免费搜索| 最好看的中文字幕久久| 日韩中文字幕一区二区三区| 国产一区二区三区精品欧美日韩一区二区三区 | 2024国产精品视频| 一区免费观看视频| 日韩福利电影在线| 成人午夜在线免费| 制服丝袜av成人在线看| 亚洲国产高清aⅴ视频| 五月激情综合婷婷| 成人av先锋影音| 日韩三级免费观看| 日韩美女视频一区| 久久99精品国产麻豆婷婷洗澡| 色综合久久久久综合体桃花网| 欧美一区二区免费观在线| 亚洲视频你懂的| 激情综合五月婷婷| 欧美性大战久久久久久久蜜臀 |