bthstack.cxx

来自「三星2440原版bsp」· CXX 代码 · 共 127 行

CXX
127
字号
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// This source code is licensed under Microsoft Shared Source License
// Version 1.0 for Windows CE.
// For a copy of the license visit http://go.microsoft.com/fwlink/?LinkId=3223.
//
//------------------------------------------------------------------------------
// 
//      Bluetooth Stack
// 
// 
// Module Name:
// 
//      bthstack.cxx
// 
// Abstract:
// 
//      This file implements Bluetooth Stack Integration
// 
// 
//------------------------------------------------------------------------------
#include <windows.h>
#include <svsutil.hxx>
#include <bt_debug.h>

#include <bt_buffer.h>
#include <bt_ddi.h>

//
//	Note: TDI initialization happens inside TDI layer.
//
int bth_InitializeOnce (void) {
	svsutil_Initialize ();
	DebugInitialize ();

	IFDBG(DebugOut (DEBUG_SHELL_INIT, L"Global initialization for BTh stack\n"));

	btutil_InitializeOnce ();

	hci_InitializeOnce ();
	l2cap_InitializeOnce ();

	sdp_InitializeOnce ();
	bthns_InitializeOnce();

	rfcomm_InitializeOnce ();
	portemu_InitializeOnce ();
	pan_InitializeOnce ();

	return ERROR_SUCCESS;
}

int bth_CreateDriverInstance (void) {
	IFDBG(DebugOut (DEBUG_SHELL_INIT, L"Creating device instance\n"));
	int iError = btutil_CreateDriverInstance ();
	if (iError)
		return iError;

	iError = hci_CreateDriverInstance ();
	if (iError)
		return iError;

	iError = l2cap_CreateDriverInstance ();
	if (iError)
		return iError;

	iError = sdp_CreateDriverInstance ();
	if (iError)
		return iError;

	iError = rfcomm_CreateDriverInstance ();
	if (iError)
		return iError;

	iError = portemu_CreateDriverInstance ();
	if (iError)
		return iError;

	iError = pan_CreateDriverInstance ();
	if (iError)
		return iError;

	return ERROR_SUCCESS;
}

int bth_CloseDriverInstance (void) {
	IFDBG(DebugOut (DEBUG_SHELL_INIT, L"Closing device instance\n"));

	pan_CloseDriverInstance ();

	portemu_CloseDriverInstance ();
	rfcomm_CloseDriverInstance ();

	sdp_CloseDriverInstance ();

	l2cap_CloseDriverInstance ();
	hci_CloseDriverInstance ();

	btutil_CloseDriverInstance ();

	return ERROR_SUCCESS;
}

int bth_UninitializeOnce (void) {
	IFDBG(DebugOut (DEBUG_SHELL_INIT, L"Global Uninitialization for BTh stack\n"));

	pan_UninitializeOnce ();
	portemu_UninitializeOnce ();
	rfcomm_UninitializeOnce ();

	bthns_UninitializeOnce();
	sdp_UninitializeOnce ();

	l2cap_UninitializeOnce ();
	hci_UninitializeOnce ();

	btutil_UninitializeOnce ();

	DebugUninitialize ();

	svsutil_DeInitialize ();

	return ERROR_SUCCESS;
}

⌨️ 快捷键说明

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