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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? sigslot.h

?? 由GOOGLE的JINGLE項目中移植的網(wǎng)絡(luò)庫
?? H
?? 第 1 頁 / 共 5 頁
字號:
			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_disconnect(this);				delete *it;				++it;			}			m_connected_slots.erase(m_connected_slots.begin(), m_connected_slots.end());		}#ifdef _DEBUG			bool connected(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator itNext, it = m_connected_slots.begin();			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				itNext = it;				++itNext;				if ((*it)->getdest() == pclass)					return true;				it = itNext;			}			return false;		}#endif		void disconnect(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == pclass)				{					delete *it;					m_connected_slots.erase(it);					pclass->signal_disconnect(this);					return;				}				++it;			}		}		void slot_disconnect(has_slots<mt_policy>* pslot)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				typename connections_list::iterator itNext = it;				++itNext;				if((*it)->getdest() == pslot)				{					m_connected_slots.erase(it);					//			delete *it;				}				it = itNext;			}		}		void slot_duplicate(const has_slots<mt_policy>* oldtarget, has_slots<mt_policy>* newtarget)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == oldtarget)				{					m_connected_slots.push_back((*it)->duplicate(newtarget));				}				++it;			}		}	protected:		connections_list m_connected_slots;   	};	template<class arg1_type, class mt_policy>	class _signal_base1 : public _signal_base<mt_policy>	{	public:		typedef std::list<_connection_base1<arg1_type, mt_policy> *>  connections_list;		_signal_base1()		{			;		}		_signal_base1(const _signal_base1<arg1_type, mt_policy>& s)			: _signal_base<mt_policy>(s)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator it = s.m_connected_slots.begin();			typename connections_list::const_iterator itEnd = s.m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_connect(this);				m_connected_slots.push_back((*it)->clone());				++it;			}		}		void slot_duplicate(const has_slots<mt_policy>* oldtarget, has_slots<mt_policy>* newtarget)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == oldtarget)				{					m_connected_slots.push_back((*it)->duplicate(newtarget));				}				++it;			}		}		~_signal_base1()		{			disconnect_all();		}		void disconnect_all()		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator it = m_connected_slots.begin();			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_disconnect(this);				delete *it;				++it;			}			m_connected_slots.erase(m_connected_slots.begin(), m_connected_slots.end());		}#ifdef _DEBUG			bool connected(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator itNext, it = m_connected_slots.begin();			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				itNext = it;				++itNext;				if ((*it)->getdest() == pclass)					return true;				it = itNext;			}			return false;		}#endif		void disconnect(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == pclass)				{					delete *it;					m_connected_slots.erase(it);					pclass->signal_disconnect(this);					return;				}				++it;			}		}		void slot_disconnect(has_slots<mt_policy>* pslot)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				typename connections_list::iterator itNext = it;				++itNext;				if((*it)->getdest() == pslot)				{					m_connected_slots.erase(it);					//			delete *it;				}				it = itNext;			}		}	protected:		connections_list m_connected_slots;   	};	template<class arg1_type, class arg2_type, class mt_policy>	class _signal_base2 : public _signal_base<mt_policy>	{	public:		typedef std::list<_connection_base2<arg1_type, arg2_type, mt_policy> *>			connections_list;		_signal_base2()		{			;		}		_signal_base2(const _signal_base2<arg1_type, arg2_type, mt_policy>& s)			: _signal_base<mt_policy>(s)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator it = s.m_connected_slots.begin();			typename connections_list::const_iterator itEnd = s.m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_connect(this);				m_connected_slots.push_back((*it)->clone());				++it;			}		}		void slot_duplicate(const has_slots<mt_policy>* oldtarget, has_slots<mt_policy>* newtarget)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == oldtarget)				{					m_connected_slots.push_back((*it)->duplicate(newtarget));				}				++it;			}		}		~_signal_base2()		{			disconnect_all();		}		void disconnect_all()		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator it = m_connected_slots.begin();			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_disconnect(this);				delete *it;				++it;			}			m_connected_slots.erase(m_connected_slots.begin(), m_connected_slots.end());		}#ifdef _DEBUG			bool connected(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator itNext, it = m_connected_slots.begin();			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				itNext = it;				++itNext;				if ((*it)->getdest() == pclass)					return true;				it = itNext;			}			return false;		}#endif		void disconnect(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == pclass)				{					delete *it;					m_connected_slots.erase(it);					pclass->signal_disconnect(this);					return;				}				++it;			}		}		void slot_disconnect(has_slots<mt_policy>* pslot)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				typename connections_list::iterator itNext = it;				++itNext;				if((*it)->getdest() == pslot)				{					m_connected_slots.erase(it);					//			delete *it;				}				it = itNext;			}		}	protected:		connections_list m_connected_slots;   	};	template<class arg1_type, class arg2_type, class arg3_type, class mt_policy>	class _signal_base3 : public _signal_base<mt_policy>	{	public:		typedef std::list<_connection_base3<arg1_type, arg2_type, arg3_type, mt_policy> *>			connections_list;		_signal_base3()		{			;		}		_signal_base3(const _signal_base3<arg1_type, arg2_type, arg3_type, mt_policy>& s)			: _signal_base<mt_policy>(s)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator it = s.m_connected_slots.begin();			typename connections_list::const_iterator itEnd = s.m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_connect(this);				m_connected_slots.push_back((*it)->clone());				++it;			}		}		void slot_duplicate(const has_slots<mt_policy>* oldtarget, has_slots<mt_policy>* newtarget)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == oldtarget)				{					m_connected_slots.push_back((*it)->duplicate(newtarget));				}				++it;			}		}		~_signal_base3()		{			disconnect_all();		}		void disconnect_all()		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator it = m_connected_slots.begin();			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_disconnect(this);				delete *it;				++it;			}			m_connected_slots.erase(m_connected_slots.begin(), m_connected_slots.end());		}#ifdef _DEBUG			bool connected(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator itNext, it = m_connected_slots.begin();			typename connections_list::const_iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				itNext = it;				++itNext;				if ((*it)->getdest() == pclass)					return true;				it = itNext;			}			return false;		}#endif		void disconnect(has_slots<mt_policy>* pclass)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				if((*it)->getdest() == pclass)				{					delete *it;					m_connected_slots.erase(it);					pclass->signal_disconnect(this);					return;				}				++it;			}		}		void slot_disconnect(has_slots<mt_policy>* pslot)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();			while(it != itEnd)			{				typename connections_list::iterator itNext = it;				++itNext;				if((*it)->getdest() == pslot)				{					m_connected_slots.erase(it);					//			delete *it;				}				it = itNext;			}		}	protected:		connections_list m_connected_slots;   	};	template<class arg1_type, class arg2_type, class arg3_type, class arg4_type, class mt_policy>	class _signal_base4 : public _signal_base<mt_policy>	{	public:		typedef std::list<_connection_base4<arg1_type, arg2_type, arg3_type,			arg4_type, mt_policy> *>  connections_list;		_signal_base4()		{			;		}		_signal_base4(const _signal_base4<arg1_type, arg2_type, arg3_type, arg4_type, mt_policy>& s)			: _signal_base<mt_policy>(s)		{			lock_block<mt_policy> lock(this);			typename connections_list::const_iterator it = s.m_connected_slots.begin();			typename connections_list::const_iterator itEnd = s.m_connected_slots.end();			while(it != itEnd)			{				(*it)->getdest()->signal_connect(this);				m_connected_slots.push_back((*it)->clone());				++it;			}		}		void slot_duplicate(const has_slots<mt_policy>* oldtarget, has_slots<mt_policy>* newtarget)		{			lock_block<mt_policy> lock(this);			typename connections_list::iterator it = m_connected_slots.begin();			typename connections_list::iterator itEnd = m_connected_slots.end();

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕第一页久久| 久久av资源网| 欧美人动与zoxxxx乱| 亚洲高清免费视频| 这里只有精品视频在线观看| 日韩av一级片| 精品免费国产一区二区三区四区| 精品一区二区三区久久久| 国产婷婷色一区二区三区| 91久久精品一区二区二区| 日韩高清不卡一区| 久久综合九色综合欧美亚洲| 99精品欧美一区二区三区小说| 中文字幕一区二区三区在线不卡 | 丁香网亚洲国际| 亚洲国产经典视频| 在线观看91精品国产入口| 国模大尺度一区二区三区| 亚洲欧美日韩国产另类专区| 欧美高清视频一二三区| 国产成a人亚洲精| 婷婷丁香久久五月婷婷| 国产精品私人影院| 日韩欧美亚洲另类制服综合在线| 丰满白嫩尤物一区二区| 污片在线观看一区二区| 亚洲视频一二三区| 精品日产卡一卡二卡麻豆| 91小视频在线| 亚洲成人激情综合网| 亚洲午夜日本在线观看| 洋洋成人永久网站入口| 中文字幕乱码日本亚洲一区二区| 制服丝袜日韩国产| 欧美日韩一级大片网址| 91在线无精精品入口| 免费精品视频最新在线| 亚洲第一av色| 亚洲制服丝袜在线| 午夜久久久久久久久| 亚洲香肠在线观看| 亚洲视频资源在线| 中文成人av在线| 日韩伦理av电影| 亚洲一区欧美一区| 免费在线观看精品| 久久精品国产精品亚洲综合| 午夜精品aaa| 香港成人在线视频| 午夜精品一区二区三区免费视频 | 国产一区欧美二区| 成人视屏免费看| 国产不卡视频在线观看| 99久久er热在这里只有精品66| 成人免费看黄yyy456| av不卡在线观看| 在线影院国内精品| 欧美一区二区三区免费在线看 | 韩国精品免费视频| www.性欧美| 制服丝袜亚洲精品中文字幕| 久久综合网色—综合色88| 中文一区一区三区高中清不卡| 亚洲一区二区在线播放相泽| 韩国成人精品a∨在线观看| 日韩欧美久久久| 成人欧美一区二区三区在线播放| 丝袜诱惑制服诱惑色一区在线观看| 成人黄色网址在线观看| 日韩视频一区二区在线观看| 久久夜色精品一区| 亚洲人成小说网站色在线| 国产欧美日韩视频一区二区| 2017欧美狠狠色| 麻豆精品在线看| 2021中文字幕一区亚洲| 精品一区二区免费在线观看| 一本大道久久a久久综合| 久久亚洲精品国产精品紫薇| 亚洲成人激情av| 日本高清视频一区二区| 亚洲欧美在线另类| 国产一区二区伦理| 精品国内二区三区| 青青草国产成人av片免费| 欧美视频三区在线播放| 亚洲色图19p| 欧美性极品少妇| 午夜视频一区在线观看| 6080午夜不卡| 欧美bbbbb| 久久久久久夜精品精品免费| 久久精品久久99精品久久| 欧美电视剧在线看免费| 国产伦精品一区二区三区免费| 久久精品人人做| 91丨porny丨户外露出| 亚洲欧洲日韩综合一区二区| 91小视频免费观看| 亚洲大尺度视频在线观看| 91麻豆精品国产91久久久更新时间| 日韩激情视频网站| 国产日韩欧美精品一区| 99精品欧美一区二区三区小说| 午夜a成v人精品| 久久精品在这里| gogo大胆日本视频一区| 亚洲国产欧美一区二区三区丁香婷| 丰满亚洲少妇av| 亚洲四区在线观看| 国产精品伦理一区二区| 欧美日韩卡一卡二| 久久99精品视频| 亚洲欧美怡红院| 日韩欧美高清一区| 91在线精品秘密一区二区| 亚洲gay无套男同| 国产视频视频一区| 欧美三级乱人伦电影| 国产一区二区久久| 天堂蜜桃91精品| 国产精品久久久久久户外露出| 欧美视频精品在线| 国产精选一区二区三区| 一区二区不卡在线播放 | 国产欧美日韩精品一区| 欧美在线免费观看亚洲| 成人免费va视频| 久久99国产精品麻豆| 五月激情综合网| 亚洲欧洲av在线| 国产日本欧洲亚洲| 欧美va在线播放| 欧美日韩国产一级二级| 色综合久久中文综合久久牛| 国产成人亚洲精品青草天美| 日av在线不卡| 日韩精品五月天| 日本欧美肥老太交大片| 天堂蜜桃91精品| 日韩在线一二三区| 日韩不卡手机在线v区| 亚洲国产综合在线| 国产一区二区三区四| 国产在线精品一区二区三区不卡| 蜜桃传媒麻豆第一区在线观看| 亚洲永久精品国产| 五月天久久比比资源色| 亚洲成av人影院| 日韩国产在线观看一区| 男女男精品网站| 国产伦精一区二区三区| 成人一区二区三区中文字幕| 不卡av在线网| 欧美日韩国产小视频在线观看| 91精品国产一区二区| 久久久噜噜噜久噜久久综合| 中文av一区特黄| 亚洲一区欧美一区| 国内精品免费在线观看| 国产不卡视频一区| 91福利国产精品| 日韩美女视频在线| 自拍偷拍亚洲综合| 日韩电影在线观看网站| 国产精品一区专区| 91成人免费在线| 26uuu国产日韩综合| 午夜精品福利在线| 成人avav影音| 欧美va日韩va| 一区二区三区四区亚洲| 国产精品自拍av| 欧美一区二区在线免费播放| 日韩毛片高清在线播放| 国产剧情在线观看一区二区| 欧美精品乱码久久久久久| 久久久99精品久久| 午夜电影一区二区三区| av在线综合网| 国产精品久久久久7777按摩 | 亚洲精品写真福利| 国产成人丝袜美腿| 国产偷国产偷精品高清尤物| 久久99国产精品久久| 欧美日韩一区二区三区高清| 中文字幕二三区不卡| 国产91在线|亚洲| 久久久久久久网| 国产精品1区二区.| 国产亚洲污的网站| 国产成人综合在线观看| 国产亚洲精品7777| 成人午夜电影网站| 中文字幕在线一区二区三区| 岛国av在线一区| 亚洲品质自拍视频| 欧美性生交片4| 肉丝袜脚交视频一区二区| 日韩欧美二区三区|