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

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

?? videomanrenderer.h

?? VideoMan (Video Manager) is an open-source C++ library that helps you developing video based applica
?? H
字號:
#pragma once
#include "VideoInput.h"
#include <list>

typedef struct 
{
	int left, bottom, width, height;
	void init(int aleft, int abottom, int awidth, int aheight)
	{
		left=aleft;
		bottom=abottom;
		width=awidth;
		height=aheight;
	}
}SCREEN_SIZE;

class RendererInput
{
public:
	RendererInput( void );
	virtual ~RendererInput( void );

	VideoInput *videoInput;
	SCREEN_SIZE screenCoords;
	bool updateTexture; //if it is necesary to update the texture
	int width;
	int height;
	int depth;
	int nChannels;
	bool activated; //If the input is activated it will be rendered
	bool supported; //The input format is or not supported
	PIXEL_FORMAT pixelFormat;
	bool verticalFlip; //If the input is displayed vertically fliped
	bool horizontalFlip; //If the input is displayed horizontally fliped
};

class VideoManRenderer
{
public:
	VideoManRenderer(void);
	virtual ~VideoManRenderer(void);

	virtual bool addVideoInput( VideoInput *video ) = 0;
	virtual inline void renderInputs() = 0;
	virtual inline void renderInput( size_t v ) = 0;
	virtual inline void updateTexture( size_t v, const char *image ) = 0;
	virtual inline void updateTexture( size_t v ) = 0;

	virtual void deleteVideoInput( size_t inputIndex ) = 0;
		
	/** \brief Activate all the video inputs. In the next render all the inputs will be shown		
	*/
	virtual void activateAllVideoInputs() = 0;

	/** \brief Activate this video input. In the next render only this input will be shown
		\param v [in] the video input index		
	*/
	virtual void activateVideoInput( size_t v ) = 0;

	/** \brief Deactivate all the video inputs. In the next render any of the inputs will be shown
	*/
	virtual void deactivateAllVideoInputs() = 0;

	/** \brief Deactivate the video input number v. In the next render this input will not be shown
		\param v [in] the video input index
	*/
	virtual void deactivateVideoInput( size_t v ) = 0;

	/** \brief Check if this video input is activated or not
		\param v [in] the video input index
	*/
	virtual bool isActivated( size_t v ) = 0;
	

	/** \brief Notify to the renderer the change of the screen
		\param left [in] the x coordinate of the top left corner of the region where the renderer must draw
		\param up [in] the y coordinate of the top left corner of the region where the renderer must draw
		\param width [in] the width of the region where the renderer must draw
		\param height [in] the height of the region where the renderer must draw
	*/
	virtual void changeScreenSize( int left, int up, int width, int height ) = 0;

	/** \brief Transform screen coordinates to image coordinates
		\param x [in/out] the x coordinate
		\param y [in/out] the y coordinate
		\return the input index or -1
	*/
	virtual int screenToImageCoords( float &x, float &y ) = 0;

	virtual bool imageToScreenCoords( const size_t &v, float &x, float &y ) = 0;	
	virtual bool getScreenCoords( const size_t &v, int &left, int &up, int &width, int &height ) = 0;

	/** \brief Get the coordinates of the input texture
		\param input [in] the video input index
		\param left,up,right,bottom [out] the texture coordinates
	*/
	virtual void getTextureCoords( const size_t &input, float &left, float &bottom, float &right, float &up ) = 0;

	/** \brief Activate the renderer viewport of this video input
		\param v [in] the video input index
	*/
	virtual inline void activateViewport( const size_t &v ) = 0;

	/** \brief Activate the renderer texture of this video input
		\param v [in] the video input index
	*/
	virtual inline void activateTexture( const size_t &v ) = 0;

	virtual void changeVisualizationMode( int vM ) = 0;

	virtual void changeMainVisualizationInput( const size_t &v ) = 0;

	int getMainVisualizationInput();

	virtual void setVerticalFlip( const size_t &v, bool value ) = 0;
	virtual bool getVerticalFlip( const size_t &v ) = 0;
	virtual void setHorizontalFlip( const size_t &v, bool value ) = 0;
	virtual bool getHorizontalFlip( const size_t &v ) = 0;

protected:

	bool supportedFormat( PIXEL_FORMAT pixelFormat );

	std::list<PIXEL_FORMAT> supportedFormats;

	int activatedInputs; //The number of the inputs that are activated

	SCREEN_SIZE screenSize;

	int visualizationMode; 

	size_t mainVisualizationInput;

	std::list<size_t> emptyIndexes;		//The queue of the free empties

};

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美福利一区二区| 99久久精品国产一区二区三区 | 欧美在线观看一二区| 国产1区2区3区精品美女| 久久66热偷产精品| 国内不卡的二区三区中文字幕 | 精品国产sm最大网站免费看| 制服丝袜亚洲网站| 337p亚洲精品色噜噜狠狠| 精品久久一二三区| 久久综合狠狠综合久久激情| 久久亚洲精精品中文字幕早川悠里| 精品久久人人做人人爽| 国产三级一区二区三区| 国产精品灌醉下药二区| 一区二区欧美精品| 日韩精品91亚洲二区在线观看 | 久久久国产午夜精品| 日本一区二区三区国色天香| 亚洲欧美一区二区在线观看| 有码一区二区三区| 日本免费在线视频不卡一不卡二| 久久99国产精品久久99| 成人综合在线观看| 欧美午夜电影在线播放| 日韩免费一区二区| 日韩伦理免费电影| 日韩影院免费视频| 成人免费av资源| 欧美色图免费看| 久久精品一区二区| 亚洲一区自拍偷拍| 国产成人免费av在线| 91福利小视频| 精品av久久707| 一区二区三区欧美日韩| 美腿丝袜亚洲色图| 色婷婷激情久久| 日韩精品一区国产麻豆| 亚洲欧美国产三级| 精品午夜一区二区三区在线观看| 91香蕉视频在线| 精品免费国产一区二区三区四区| 亚洲美女淫视频| 国产福利91精品一区二区三区| 欧美在线观看视频一区二区三区| 久久久九九九九| 图片区小说区区亚洲影院| 成人精品国产福利| 精品久久久久久最新网址| 亚洲一区二区三区不卡国产欧美 | 成人性生交大片免费看中文 | 毛片不卡一区二区| 欧美天堂亚洲电影院在线播放| 国产亚洲欧美一区在线观看| 午夜精品视频在线观看| 色综合天天综合网天天狠天天| 欧美精品一区二区三区视频| 午夜精品久久一牛影视| 在线免费不卡视频| 亚洲天堂精品在线观看| 成人国产视频在线观看| 久久精品人人做人人爽人人| 免费观看在线综合| 欧美一个色资源| 午夜精品福利视频网站| 91国产精品成人| 亚洲综合久久av| 色哦色哦哦色天天综合| 亚洲人成7777| 91免费在线视频观看| 亚洲色图视频网| 色视频欧美一区二区三区| 中文字幕佐山爱一区二区免费| 粉嫩久久99精品久久久久久夜| 久久久久久久精| 成人亚洲一区二区一| 国产精品美女久久久久av爽李琼 | 欧美性大战久久久久久久| 亚洲天堂免费看| 91国产免费观看| 亚洲韩国精品一区| 欧美疯狂性受xxxxx喷水图片| 午夜精品福利在线| 日韩欧美一级二级三级久久久| 性久久久久久久久久久久| 91精品福利在线一区二区三区| 三级久久三级久久| 久久色在线视频| 成人a区在线观看| 一区二区三区在线视频观看58| 91福利在线导航| 麻豆91免费看| 国产精品青草久久| 欧美视频中文字幕| 日本午夜精品一区二区三区电影| 久久综合久久久久88| 91丨porny丨蝌蚪视频| 亚洲成人资源网| 久久综合999| 91久久久免费一区二区| 人妖欧美一区二区| 国产精品久久毛片| 欧美午夜电影网| 国产一区中文字幕| 亚洲男人的天堂一区二区| 91精品国产手机| 福利一区在线观看| 午夜国产精品影院在线观看| 精品成人一区二区| 欧美色视频在线观看| 国产一区二区精品久久| 亚洲一区在线电影| 日本一区二区三区视频视频| 欧美日韩大陆在线| 99久久久无码国产精品| 麻豆精品国产91久久久久久| 亚洲欧洲日韩一区二区三区| 欧美人妖巨大在线| 一本一本大道香蕉久在线精品| 日本伊人精品一区二区三区观看方式| 国产精品久久久久一区| 日韩三级中文字幕| 欧美视频一区二区在线观看| 国产不卡高清在线观看视频| 免费看黄色91| 亚洲国产色一区| 国产精品久久久久久久久搜平片 | 91精品福利在线| 国产成人在线免费| 另类小说一区二区三区| 亚洲激情五月婷婷| 亚洲女同ⅹxx女同tv| 久久综合九色综合97_久久久| 欧美精品亚洲一区二区在线播放| 成人激情黄色小说| 国产在线一区二区| 久久99热这里只有精品| 午夜精品久久久久久久99樱桃| 亚洲欧美综合另类在线卡通| 中文字幕巨乱亚洲| 久久免费看少妇高潮| 精品国产一区二区三区久久久蜜月 | 亚洲第一成人在线| 自拍偷拍国产精品| 亚洲色图在线看| 亚洲视频在线一区二区| 中文字幕亚洲不卡| 中文字幕在线不卡视频| 国产精品久久久久久亚洲伦 | 色综合亚洲欧洲| 972aa.com艺术欧美| 96av麻豆蜜桃一区二区| 91影视在线播放| 欧洲视频一区二区| 欧美综合在线视频| 欧美日韩一区二区三区在线| 欧美蜜桃一区二区三区| 日韩视频免费直播| 久久久久久久久久久久久女国产乱| 久久无码av三级| 国产精品乱码一区二区三区软件| 国产精品蜜臀av| 亚洲午夜久久久久久久久电影网 | 亚洲欧美怡红院| 亚洲黄色免费电影| 天天综合网天天综合色| 美女看a上一区| 国产精品一区二区在线观看不卡| 国产成人免费视频一区| 成人av中文字幕| 欧美午夜在线一二页| 日韩女优av电影在线观看| 中文在线一区二区| 亚洲欧美一区二区三区极速播放 | 中日韩av电影| 亚洲综合av网| 玖玖九九国产精品| 99久久精品一区| 日韩一区二区麻豆国产| 中文成人av在线| 亚洲777理论| 国产精品一卡二| 在线一区二区视频| 精品国产3级a| 一区二区三区四区在线免费观看| 偷拍一区二区三区| 国产成人av资源| 欧美日韩aaaaa| 国产欧美一区二区精品婷婷| 艳妇臀荡乳欲伦亚洲一区| 精品亚洲欧美一区| 91国偷自产一区二区三区成为亚洲经典| 日韩一区二区三区高清免费看看| 中文字幕第一区| 激情文学综合网| 欧美日韩高清在线| 亚洲特黄一级片| 国产精品亚洲一区二区三区妖精 | 亚洲成人动漫精品|