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

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

?? camerapdd.h

?? Windows CE 5.0 攝像頭分層驅動代碼
?? 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.
//

#ifndef _CAMERAPDD_H
#define _CAMERAPDD_H

#ifdef __cplusplus
extern "C" {
#endif

    /////////////////////////////////////////////////////////////////////////////////////
    // The following methods are corresponding to the adapter

    // PDD_Init is called when the driver is first loaded. MDDContext is what MDD receive in its XXX_Init call.
    // PDD needs to return a context which the MDD will later send back in the rest of the PDD functions.
    // PDD will also populate pPDDFuncTbl which is a list of entry points the PDD implements.
    PVOID PDD_Init( PVOID MDDContext, PPDDFUNCTBL pPDDFuncTbl );

    // PDD_DeInit is called when the driver is being Unloaded. At this point PDD should free up any 
    // unfreed resources.
    DWORD PDD_DeInit( LPVOID PDDContext );

    // PDD_GetAdapterInfo is called at the initialization time to get information about the Adapter
    DWORD PDD_GetAdapterInfo( LPVOID PDDContext, PADAPTERINFO pAdapterInfo );

    // Handle VideoProcAmp specific property changes.
    DWORD PDD_HandleVidProcAmpChanges( LPVOID PDDContext, DWORD dwPropId, LONG lFlags, LONG lValue);

    // Handle CameraControl specific property changes.
    DWORD PDD_HandleCamControlChanges( LPVOID PDDContext, DWORD dwPropId, LONG lFlags, LONG lValue );
    
    // Handle CSPROPERTY_VIDEOCONTROL_CAPS property.
    DWORD PDD_HandleVideoControlCapsChanges( LPVOID PDDContext, LONG lModeType ,ULONG ulCaps );

    // Set driver power state.
    DWORD PDD_SetPowerState( LPVOID PDDContext, CEDEVICE_POWER_STATE PowerState );

    // Handle Adapter level custom/proprietary properties
    DWORD PDD_HandleAdapterCustomProperties( LPVOID PDDContext, PUCHAR pInBuf, DWORD  InBufLen, PUCHAR pOutBuf, DWORD  OutBufLen, PDWORD pdwBytesTransferred );
   
    
    // End of adapter specific methods
    /////////////////////////////////////////////////////////////////////////////////////

    /////////////////////////////////////////////////////////////////////////////////////
    // The following methods are corresponding to sensor modes. This is why the 2nd parameter
    // of all these methods is the Mode Type.

    // PDD_InitSensorMode() is called when the MDD wants PDD to allocate all the resources related 
    // to a given mode ulModeType. Any Buffer allocation or DMA setup should be done in this
    // function.
    DWORD PDD_InitSensorMode( LPVOID PDDContext, ULONG ulModeType, LPVOID ModeContext );

    // PDD_DeInitSensorMode() is called when the MDD wants PDD to deallocate all the resources 
    // related to a given mode ulModeType.
    DWORD PDD_DeInitSensorMode( LPVOID PDDContext, ULONG ulModeType );

    // There are three valid states, i.e., CSSTATE_STOP, CSSTATE_PAUSE, CSSTATE_RUN. 
    // PDD_SetSensorState() is only called for Preview or Capture sensor modes. For Still sensor mode, 
    // PDD_TakeStillPicture (discussed further below) is called.
    // PDD should only capture data when put in CSSTATE_RUN.
    DWORD PDD_SetSensorState( LPVOID PDDContext, ULONG ulModeType, CSSTATE CsState );

    // PDD_TakeStillPicture is called to take still picture. The 2nd parameter pBurstModeInfo is not
    // used in this version. MDD will always set it to NULL.
    // When the PDD receives this function call, it should setup the sensor for still mode. It may have to 
    // disable sending data for Capture or preview sensor mode.
    DWORD PDD_TakeStillPicture( LPVOID PDDContext, LPVOID pBurstModeInfo );

    // PDD_GetSensorModeInfo is currently called during the instantiation time but this can be called from any place.
    DWORD PDD_GetSensorModeInfo( LPVOID PDDContext, ULONG ulModeType, PSENSORMODEINFO pSensorModeInfo );

    // PDD_SetSensorModeFormat() is called to set the format of a particular sensor mode i.e., ulModeType. PDD must not
    // allocate resources at this time. Instead it should wait for PDD_InitSensorMode to do the actual allocation.
    DWORD PDD_SetSensorModeFormat( LPVOID PDDContext, ULONG ulModeType, PCS_DATARANGE_VIDEO pCsDataRangeVideo );
    
    // PDD_AllocateBuffer is called when the MDD wants PDD to allocate its Mode specific buffer. This method is called
    // n times where n is the total number of buffers that the application agreed with driver at the time of initialization
    // Each mode (Capture, Still etc.)will have its own set of buffers. This method is only called if the Memory Model 
    // is CSPROPERTY_BUFFER_DRIVER
    PVOID PDD_AllocateBuffer( LPVOID PDDContext, ULONG ulModeType );

    // PDD_DeAllocateBuffer is called when the MDD wants PDD to deallocate its Mode specific buffer. MDD will call
    // this function n times where n is the total number of buffers agreed by the driver and Application(DShow)
    // This method is only called if the Memory Model is CSPROPERTY_BUFFER_DRIVER
    DWORD PDD_DeAllocateBuffer( LPVOID PDDContext, ULONG ulModeType, PVOID pBuffer );

    // PDD_RegisterClientBuffer is called by MDD to give PDD the pointers to buffers allocated by the 
    // application(DShow). MDD will call this function n times where n is the total number of buffers 
    // agreed by the driver and Application(DShow)At this point, PDD can setup DMA using these pointers.
    // This method is only called if the Memory Model IS NOT CSPROPERTY_BUFFER_DRIVER
    DWORD PDD_RegisterClientBuffer( LPVOID PDDContext, ULONG ulModeType, PVOID pBuffer );

    // PDD_UnRegisterClientBuffer is called by MDD to tell PDD that the particular pointer is no more 
    // available. PDD must not used this pointer after this function call.
    // This method is only called if the Memory Model IS NOT CSPROPERTY_BUFFER_DRIVER
    DWORD PDD_UnRegisterClientBuffer( LPVOID PDDContext, ULONG ulModeType, PVOID pBuffer );

    // When the PDD receives an interrupt for sensor data availabilitly, it will call MDD_HandleIO() 
    // implemented by the MDD. MDD_HandleIO() will internally call PDD_FillBuffer() to to let PDD
    // transfer/DMA data to the buffer. MDD_HandleIO 
    DWORD PDD_FillBuffer( LPVOID PDDContext, ULONG ulModeType, PUCHAR pImage );

    // PDD_HandleModeCustomProperties handles Sensor Mode specific Custom/Proprietary properties
    DWORD PDD_HandleModeCustomProperties( LPVOID PDDContext, ULONG ulModeType, PUCHAR pInBuf, DWORD  InBufLen, PUCHAR pOutBuf, DWORD  OutBufLen, PDWORD pdwBytesTransferred );

    // End of Mode specific methods
    /////////////////////////////////////////////////////////////////////////////////////
  

#ifdef __cplusplus
}
#endif

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩夫妻久久| 亚洲精品久久嫩草网站秘色| 一区二区三区国产精品| 毛片一区二区三区| 在线观看日韩高清av| 337p粉嫩大胆色噜噜噜噜亚洲| 亚洲精品国产无套在线观| 国产一区二区久久| 日韩一卡二卡三卡国产欧美| 一区二区三区欧美| 国产91精品一区二区麻豆网站 | 久久天天做天天爱综合色| 亚洲综合在线电影| 波多野结衣欧美| 91精品国产福利在线观看| 亚洲精品国产精华液| 成人国产精品免费观看| 国产视频一区不卡| 激情综合色综合久久综合| 欧美一区二区三区在线电影| 亚洲女厕所小便bbb| 99久久精品国产毛片| 中文字幕欧美日韩一区| 国产精品一级二级三级| 久久久精品tv| 国产一区二三区好的| 精品国产乱码久久久久久1区2区| 婷婷一区二区三区| 欧美三片在线视频观看| 亚洲综合色视频| 欧美中文字幕久久 | 国产精品欧美一区喷水| 国产福利一区二区三区在线视频| 精品国产乱码久久久久久久| 蜜桃91丨九色丨蝌蚪91桃色| 日韩欧美电影在线| 国产一区三区三区| 国产日本欧美一区二区| 成人福利视频在线看| 国产精品久久久久久亚洲伦| 成人免费看视频| 亚洲另类色综合网站| 欧美三级日韩三级| 麻豆成人免费电影| 久久精品一区四区| 成人av一区二区三区| 亚洲乱码国产乱码精品精的特点| 欧洲一区二区av| 日产国产欧美视频一区精品| 欧美xxxxxxxx| va亚洲va日韩不卡在线观看| 亚洲自拍另类综合| 91精品欧美福利在线观看| 久久超碰97中文字幕| 久久精品网站免费观看| 色一区在线观看| 日韩精品免费视频人成| 久久噜噜亚洲综合| 欧美又粗又大又爽| 久久精品国产秦先生| 国产精品久久久久久户外露出| 在线免费观看不卡av| 经典三级视频一区| 亚洲天天做日日做天天谢日日欢| 欧美视频你懂的| 国产精品18久久久久久久久 | 一区二区三区在线视频观看58| 欧美日韩国产首页| 国产成人精品免费在线| 亚洲成人中文在线| 国产性色一区二区| 欧美精品日韩精品| 成人精品国产免费网站| 天天爽夜夜爽夜夜爽精品视频| 久久奇米777| 欧美肥大bbwbbw高潮| eeuss影院一区二区三区| 蜜臀av一区二区在线免费观看| 国产精品久久久久久久久免费丝袜 | 国产一区二区三区久久悠悠色av| 亚洲日本免费电影| 久久久美女毛片| 欧美一区二区在线观看| 色综合色狠狠天天综合色| 韩国一区二区视频| 亚洲电影一级片| 亚洲欧美一区二区不卡| 国产区在线观看成人精品| 欧美伦理影视网| 91丝袜国产在线播放| 国产美女av一区二区三区| 亚洲sss视频在线视频| 中文字幕色av一区二区三区| 久久夜色精品国产欧美乱极品| 欧美区在线观看| 91丨porny丨首页| 成人综合婷婷国产精品久久 | 欧美videofree性高清杂交| 欧美日韩精品是欧美日韩精品| 99精品欧美一区二区三区综合在线| 精品一区二区三区免费| 日本不卡1234视频| 午夜欧美在线一二页| 亚洲曰韩产成在线| 亚洲精品久久久蜜桃| 亚洲精品ww久久久久久p站| 亚洲视频中文字幕| 亚洲欧美成人一区二区三区| 国产精品美日韩| 亚洲欧美在线aaa| 亚洲四区在线观看| 日韩毛片精品高清免费| 亚洲欧美一区二区三区极速播放| 中文字幕亚洲一区二区av在线| 中文天堂在线一区| 国产精品美女一区二区三区| 日本一区二区成人在线| 国产欧美日韩中文久久| 国产精品久久久久久亚洲伦| 国产精品国产三级国产aⅴ无密码| 国产目拍亚洲精品99久久精品| 国产精品丝袜在线| 一区免费观看视频| 亚洲综合视频在线观看| 五月天视频一区| 蜜臀av性久久久久蜜臀aⅴ流畅 | 欧美日韩第一区日日骚| 欧美日韩视频不卡| 91精品国产91综合久久蜜臀| 日韩欧美国产综合一区| 2017欧美狠狠色| 欧美国产乱子伦| 亚洲激情中文1区| 日韩av中文字幕一区二区| 国内精品久久久久影院色| 成人性视频免费网站| aaa亚洲精品一二三区| 欧美在线观看视频一区二区| 日韩精品一区二区三区视频播放| 国产亚洲欧洲997久久综合| 中文字幕欧美一| 亚洲va韩国va欧美va| 国产精品一区二区91| 色先锋aa成人| 欧美电视剧在线看免费| 国产精品不卡视频| 日韩制服丝袜先锋影音| 国产麻豆精品视频| 在线观看欧美黄色| 国产日韩欧美在线一区| 亚洲一区二区影院| 国内精品在线播放| 欧美三级电影在线看| 久久网站热最新地址| 亚洲一区二区三区在线播放| 麻豆精品一区二区三区| 一本到不卡免费一区二区| 精品国免费一区二区三区| 最新国产精品久久精品| 麻豆精品视频在线观看视频| av午夜一区麻豆| 日韩美女视频一区二区在线观看| 综合久久久久久| 激情欧美一区二区三区在线观看| 91女厕偷拍女厕偷拍高清| 精品日本一线二线三线不卡| 亚洲美女视频一区| 国产精品自拍毛片| 欧美裸体一区二区三区| 亚洲美女视频在线观看| 大胆亚洲人体视频| 精品伦理精品一区| 亚洲自拍偷拍综合| 91免费视频网| 国产欧美日韩久久| 韩国精品主播一区二区在线观看| 欧美美女激情18p| 亚洲国产一区二区三区| 91丨九色porny丨蝌蚪| 国产精品久久毛片| 国模套图日韩精品一区二区| 51精品秘密在线观看| 一区二区三区在线视频免费| 99久久99久久久精品齐齐| 久久伊人中文字幕| 久久机这里只有精品| 欧美高清视频不卡网| 亚洲最新视频在线播放| 91丨porny丨蝌蚪视频| 国产精品高潮呻吟久久| 国产盗摄视频一区二区三区| 日韩你懂的在线播放| 日本91福利区| 欧美一区二区福利在线| 日本成人在线电影网| 日韩欧美在线影院| 美女诱惑一区二区| 欧美va亚洲va| 国产一区二区三区美女| 欧美精品一区二区久久婷婷|