⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nethandler.cpp

📁 It s a tool designed to extract as much information as possible from Bluetooth devices without the r
💻 CPP
字号:
/* -*- c++ -*- ---------------------------------------------------------------   Copyright (C) 2005, SWECO, All Rights Reserved.   Implementation of NetHandler class   Author: Zsolt Molnar (Zsolt.Molnar@ieee.org)   ---------------------------------------------------------------------------*/#include <sstream>#include "AppFactory.hh"#include "IRFCommHandler.hh"#include "NetHandler.hh"#include <iostream>namespace { 	const char rcs_id[] = "$Id$"; }bool NetHandler::connect(const Device& aDevice){	lock();	_toConnect.push_back(aDevice);	unlock();	return true;}	void NetHandler::unconnect(const Device& aDevice){	lock();	// Check if it is connected.	_tToConenct::iterator pos = find(_toConnect.begin(), 									 _toConnect.end(), aDevice);		if (pos != _toConnect.end()) {		_toConnect.erase(pos);	}	unlock();}void NetHandler::commit(){	lock();	// Go through the connection database.	for (_tToConenct::iterator pos = _toConnect.begin(); 		 pos != _toConnect.end(); ++pos) 	{		AppFactory::getRFCommHandler().serial_connect(*pos);	}		_toConnect.resize(0);	unlock();}#ifdef __TEST__#include <assert.h>#include <iostream>boolNetHandler::test(){	Device dev_1("00:0E:6D:32:0D:FF", Device::NOKIA6600);	Device dev_2("00:60:57:A3:DF:28", Device::NOKIA6600);	Device dev_3("11:11:11:11:11:11", Device::NOKIA6600);	// Check the bindings - must be 0	cout << endl << "Check the bindings: no bindings. Press enter if OK." 		 << endl;	system("rfcomm -a");	getchar();	// Connect 1 device	assert(connect(dev_1));	commit();	// Check the bindings	cout << endl << "Check the bindings: " << dev_1.devID 		 << " must be bound. Press enter if OK." << endl;	system("rfcomm -a");	getchar();		// Connect 1 more device	assert(connect(dev_2));	commit();	// check the binding	cout << endl << "Check the bindings: " << dev_1.devID 		 << " and " << dev_2.devID << " must be bound. Press enter if OK." 		 << endl;	system("rfcomm -a");	getchar();		// unconnect the last device	unconnect(dev_2);	commit();	cout << endl << "Check the bindings: " << dev_1.devID 		 << " and " << dev_2.devID << " must be bound. Press enter if OK." 		 << endl;	system("rfcomm -a");	getchar();	// reconenct a device	assert(connect(dev_1));	commit();	// Check the bindings	cout << endl << "Check the bindings: " << dev_1.devID 		 << " and " << dev_2.devID << " must be bound. Press enter if OK." 		 << endl;	system("rfcomm -a");	getchar();			cout << "NetHandler test passed" << endl;	return true;}#endif // #ifdef __TEST__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -