www.pudn.com > camera.rar > qcibus.h
// // Copyright (c) Microsoft Corporation. All rights reserved. // // // Use of this sample source code is subject to the terms of the Microsoft // license agreement under which you licensed this sample source code. If // you did not accept the terms of the license agreement, you are not // authorized to use this sample source code. For the terms of the license, // please see the license agreement between you and Microsoft or, if applicable, // see the LICENSE.RTF on your install media or the root of your tools installation. // THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES OR INDEMNITIES. // // // (C) Copyright 2006 Marvell International Ltd. // All Rights Reserved // #ifndef __QCIBUS_H_ #define __QCIBUS_H_ #define MAX_INITPARAM 0x20 #includeclass SensorFolder : public DeviceFolder{ public: SensorFolder(LPCTSTR lpBusName,LPCTSTR lpTemplateRegPath,DWORD dwBusType, DWORD BusNumber,PCI_SLOT_NUMBER SlotNumber,HANDLE hParent); ~SensorFolder(); // Sensor Power Handling; BOOL SetPowerState(CEDEVICE_POWER_STATE newPowerState); private: }; class QciBus : public DefaultBusDriver { public: QciBus(LPCTSTR lpActiveRegPath); ~QciBus(); virtual BOOL Init(); virtual BOOL PostInit() ; virtual DWORD GetBusNamePrefix(LPTSTR lpReturnBusName,DWORD dwSizeInUnit); BOOL FastIOControl(DWORD dwCode, PBYTE pBufIn, DWORD dwLenIn, PBYTE pBufOut, DWORD dwLenOut, PDWORD pdwActualOut,DeviceFolder **ppDeviceFoler); private: BOOL AssignChildDriver(); BOOL ActiveAllChildDriver(); LPTSTR m_lpActiveRegPath; CRegistryEdit m_DeviceKey; DWORD m_dwDeviceIndex; DWORD m_dwBusType; LPTSTR m_lpBusName; DWORD m_dwBusNumber; CEDEVICE_POWER_STATE m_PowerState; LPTSTR m_lpStrInitParam; DWORD m_dwNumOfInitParam; LPTSTR m_lpInitParamArray[MAX_INITPARAM]; }; #endif