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

📄 cdapi.pas

📁 canon 相机SDK,非常难得
💻 PAS
字号:
unit cdAPI;

interface

uses
  cdType;


{****************************************************************************
 ****************************************************************************
 *             Canon Digital Camera SDK : Function Definitions              *
 ****************************************************************************
 ****************************************************************************}
const
    cdsdk  = 'CDSDK.dll';

{*-----------------------------------------------------------------------
   Basic Functions
------------------------------------------------------------------------*}
function CDStartSDK(
            var pVersion:cdVersionInfo;
            Option              :cdUInt32
            ):cdUInt32;stdcall;external cdsdk;

function CDFinishSDK():cdUInt32 ; stdcall;external cdsdk;

function CDGetSDKVersion(
            var pVersion        :cdVersionInfo
            ):cdUInt32;stdcall;external cdsdk;

{*-----------------------------------------------------------------------
   Source Control Functions
------------------------------------------------------------------------*}
function CDShowDeviceSelectingUI(
            hWndParent          :cdHWND;
            var pSourceInfo     :cdSourceInfo
            ):cdUInt32;stdcall;external cdsdk;

function CDGetPreviousDeviceInfo(
            Selector            :cdPortSelector;
            var pSourceInfo     :cdSourceInfo
            ):cdUInt32;stdcall;external cdsdk;

function CDEnumDeviceReset(
            Kind                :cdUInt32;
            var phEnum          :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumDeviceNext(
            hEnum               :cdHEnum;
            var pSourceInfo     :cdSourceInfo
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetDeviceCount(
            hEnum               :cdHEnum;
            var pCount          :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumDeviceRelease(
            hEnum:              cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetPluggedDevice(
            var pSourceInfo     :cdSourceInfo
            ):cdUInt32;stdcall;external cdsdk;

function CDOpenSource(
            var pSourceInfo     :cdSourceInfo;
            var phSource        :cdHSource
            ):cdUInt32;stdcall;external cdsdk;

function CDCloseSource(
            hSource             :cdHSource
            ):cdUInt32;stdcall;external cdsdk;

function CDRegisterEventCallbackFunction(
            hSource             :cdHSource;
            pFunc               :pointer;
            Context             :cdContext;
            var phFunc          :cdHandle
            ):cdUInt32 ; stdcall;external cdsdk;

function CDUnregisterEventCallbackFunction(
            hSource             :cdHSource;
            hFunc               :cdHandle
            ):cdUInt32 ; stdcall;external cdsdk;

{*-----------------------------------------------------------------------
   Device Management Functions
------------------------------------------------------------------------*}

function CDEnumDevicePropertyReset(
            hSource             :cdHSource;
            Option              :cdUInt32;
            var phEnum          :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumDevicePropertyNext(
            hEnum               :cdHEnum;
            var pDevPropStruct  :cdDevicePropertyStruct
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetDevicePropertyCount(
            hEnum               :cdHEnum;
            var pCount          :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumDevicePropertyRelease(
            hEnum               :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetDevicePropertyData(
            hSource             :cdHSource;
            DevPropID           :cdDevicePropertyID;
            var pBufSize        :cdUInt32;
            var pBuf            :cdVoid;
            Option              :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDSetDevicePropertyData(
            hSource             :cdHSource;
            DevPropID           :cdDevicePropertyID;
            var pBufSize        :cdUInt32;
            var pBuf            :cdVoid
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumSupportedImageSizeReset(
            hSource             :cdHSource;
            Option              :cdUInt32;
            var phEnum          :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumSupportedImageSizeNext(
            hEnum               :cdHEnum;
            var pSpec           :cdImageSizeSpec
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetSupportedImageSizeCount(
            hEnum               :cdHEnum;
            var pCount          :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumSupportedImageSizeRelease(
            hEnum               :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetPersonalFunctionSetting(
            hSource                     :cdHSource;
            var pPersonalFunction       :cdPersonalFunction;
            var pPersonalFunctionValue  :cdPersonalFunctionValue
            ):cdUInt32 ; stdcall;external cdsdk;

function CDSetPersonalFunctionSetting(
            hSource                     :cdHSource;
            var pPersonalFunction       :cdPersonalFunction;
            var pPersonalFunctionValue  :cdPersonalFunctionValue
            ):cdUInt32 ; stdcall;external cdsdk;

function CDShowDeviceSettingUI(
            hSource             :cdHSource;
            hWndParent          :cdHWND
            ):cdUInt32 ; stdcall;external cdsdk;

function CDLockUI(
            hSource             :cdHSource
            ):cdUInt32 ; stdcall;external cdsdk;

function CDUnlockUI(
            hSource             :cdHSource
            ):cdUInt32 ; stdcall;external cdsdk;

function CDSetUILockTimeOutTime(
            hSource             :cdHSource;
            Time                :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDFormat(
            hVolume             :cdHVolume
            ):cdUInt32 ; stdcall;external cdsdk;


{*-----------------------------------------------------------------------
   Collect Functions
------------------------------------------------------------------------*}

function CDEnumVolumeReset(
            hSource             :cdHsource;
            var phEnum          :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumVolumeNext(
            hEnum               :cdHEnum;
            var phVolume        :cdHVolume
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetVolumeCount(
            hEnum               :cdHEnum;
            var pCount          :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumVolumeRelease(
            hEnum               :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetVolumeName(
            hVolume             :cdHVolume;
            var pVolName        :cdVolName
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetVolumeInfo(
            hVolume             :cdHvolume;
            var pVolInfo        :cdVolumeInfo
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumItemReset(
            hParent             :cdHItem;
            Option              :cdEnumItemOption;
            var phEnum          :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumItemNext(
            hEnum               :cdHEnum;
            var phItem          :cdHItem
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetItemCount(
            hEnum               :cdHEnum;
            var pCount          :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumItemRelease(
            hEnum               :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumImageItemReset(
            hItem               :cdHItem;
            Depth               :cdUInt32;
            Option              :cdEnumItemOption;
            var phEnum          :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumImageItemNext(
            hEnum               :cdHEnum;
            var phImage         :cdHImageItem
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetImageItemCount(
            hEnum               :cdHEnum;
            var pCount          :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumImageItemRelease(
            hEnum               :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetItemInfo(
            hItem               :cdHItem;
            var pItemInfo       :cdItemInfo
            ):cdUInt32 ; stdcall;external cdsdk;

function CDMakeImageItem(
            StgMedium           :cdStgMedium;
            Format              :cdImageFormat;
            var phImgItem       :cdHItem
            ):cdUInt32 ; stdcall;external cdsdk;


{*-----------------------------------------------------------------------
   Image Management Functions
------------------------------------------------------------------------*}

function CDOpenImage(
            hImgItem            :cdHImageItem
            ):cdUInt32 ; stdcall;external cdsdk;

function CDCloseImage(
            hImgItem            :cdHImageItem
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetThumbnail(
            hImgItem            :cdHImageItem;
            var phImgData       :cdHImageData
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetPicture(
            hImgItem            :cdHImageItem;
            var phImgData       :cdHImageData
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetMovie(
            hImgItem            :cdHImageItem;
            var phImgData       :cdHImageData
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetSound(
            hImgItem            :cdHImageItem;
            var phImgData       :cdHImageData
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumImageDataInItemReset(
            hImgItem            :cdHImageItem;
            var phEnum          :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumImageDataInItemNext(
            hEnum               :cdHEnum;
            var phImgData       :cdHImageData
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetImageDataInItemCount(
            hEnum               :cdHEnum;
            var pCount          :cdUInt32
            ):cdUInt32 ; stdcall;external cdsdk;

function CDEnumImageDataInItemRelease(
            hEnum               :cdHEnum
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetImageDataInfo(
            hImgData            :cdHImageData;
            var pImgDataInfo    :cdImageDataInfo
            ):cdUInt32 ; stdcall;external cdsdk;

function CDGetImageData(
            hImgData            :cdHImageData;
            var pStgMediumDest  :cdStgMedium;
            pCallbackFunc       :Pointer;
            Context             :cdContext;
            ProgressOption      :cdProgressOption
            ):cdUInt32 ; stdcall;external cdsdk;

function CDAddPicture(
            var pSrc            :cdStgMedium;
            var pSrcFileFormat  :cdImageFormatStruct;
            hVolume             :cdHVolume;
            hFolder             :cdHFolder;
            CompQuality         :cdCompQuality;
            var pModelName      :cdChar;
            OptionFlags         :cdAddPictureFlags;
            var pAddImageProps  :cdAddPictureProps;
            var pCallbackFunc   :Pointer;
            Context             :cdContext;
            ProgressOption      :cdProgressOption;
            var pAddInfo        :cdAddPictureInfo
            ):cdUInt32 ; stdcall;external cdsdk;

function CDDeleteImage(
            hParent             :cdHItem;
            hImgItem            :cdHImageItem
            ):cdUInt32 ; stdcall;external cdsdk;


implementation

end.

⌨️ 快捷键说明

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