1332 lines
58 KiB
VB.net
1332 lines
58 KiB
VB.net
'/******************************************************************************
|
|
'* *
|
|
'* PROJECT : EOS Digital Software Development Kit EDSDK *
|
|
'* NAME : EDSDK.h *
|
|
'* *
|
|
'* Description: PROTO TYPE DEFINITION OF EDSDK API *
|
|
'* *
|
|
'* *
|
|
'*******************************************************************************
|
|
'* *
|
|
'* Written and developed by Camera Design Dept.53 *
|
|
'* Copyright Canon Inc. 2006 All Rights Reserved *
|
|
'* *
|
|
'*******************************************************************************
|
|
'* File Update Information: *
|
|
'* DATE Identify Comment *
|
|
'* ----------------------------------------------------------------------- *
|
|
'* 06-03-08 F-001 create first version. *
|
|
'* *
|
|
'******************************************************************************/
|
|
'Option Strict Off
|
|
' versioni successiva all'ultima valida Windows XP coerente con cartella DepCanon
|
|
#If (WinXp = False) Then
|
|
|
|
Option Explicit On
|
|
|
|
Imports System.Runtime.InteropServices
|
|
|
|
Public Module EDSDK
|
|
|
|
'===================================================
|
|
'
|
|
' EDSDK.h
|
|
'
|
|
'===================================================
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// initialize / terminate
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsInitializeSDK
|
|
'//
|
|
'// Description:
|
|
'// Initializes the libraries.
|
|
'// When using the EDSDK libraries, you must call this API once
|
|
'// before using EDSDK APIs.
|
|
'//
|
|
'// Parameters:
|
|
'// In: None
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsInitializeSDK Lib "EDSDK" () As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsTerminateSDK
|
|
'//
|
|
'// Description:
|
|
'// Terminates use of the libraries.
|
|
'// This function muse be called when ending the SDK.
|
|
'// Calling this function releases all resources allocated by the libraries.
|
|
'//
|
|
'// Parameters:
|
|
'// In: None
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsTerminateSDK Lib "EDSDK" () As Integer
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// reference counter
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsRetain
|
|
'//
|
|
'// Description:
|
|
'// Increment the reference counter of the item.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference for the item.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsRetain Lib "EDSDK" (ByVal inRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsRelease
|
|
'//
|
|
'// Description:
|
|
'// Decrement the reference counter of the item.
|
|
'// The item is not deleted until a reference counter is set to 0.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the item.
|
|
'// Out: None
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsRelease Lib "EDSDK" (ByVal inRef As IntPtr) As Integer
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// item tree
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetChildCount
|
|
'//
|
|
'// Description:
|
|
'// Gets the number of child objects of the designated object.
|
|
'// Example: Number of files in a directory
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the list.
|
|
'// Out: outCount - Number of elements in this list.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetChildCount Lib "EDSDK" ( _
|
|
ByVal inCameraListRef As IntPtr, _
|
|
ByRef outCount As Integer) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetChildAtIndex
|
|
'//
|
|
'// Description:
|
|
'// Gets an indexed child object of the designated object.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the item.
|
|
'// inIndex - The index that is passed in, is zero based.
|
|
'// Out: outRef - The pointer which receives reference of the
|
|
'// specified index .
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetChildAtIndex Lib "EDSDK" ( _
|
|
ByVal inRef As IntPtr, _
|
|
ByVal inIndex As Integer, _
|
|
ByRef outRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetParent
|
|
'//
|
|
'// Description:
|
|
'// Gets the parent object of the designated object.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the item.
|
|
'// Out: outParentRef - The pointer which receives reference.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetParent Lib "EDSDK" ( _
|
|
ByVal inRef As IntPtr, _
|
|
ByRef outParentRef As IntPtr) As Integer
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// property
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetPropertySize
|
|
'//
|
|
'// Description:
|
|
'// Gets the byte size and data type of a designated property
|
|
'// from a camera object or image object.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the item.
|
|
'// inPropertyID - The ProprtyID
|
|
'// inParam - Additional information of property.
|
|
'// We use this parameter in order to specify an index
|
|
'// in case there are two or more values over the same ID.
|
|
'// Out: outDataType - Pointer to the buffer that is to receive the property
|
|
'// type data.
|
|
'// outSize - Pointer to the buffer that is to receive the property
|
|
'// size.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetPropertySize Lib "EDSDK" ( _
|
|
ByVal inRef As IntPtr, _
|
|
ByVal inPropertyID As Integer, _
|
|
ByVal inParam As Integer, _
|
|
ByRef outDataType As EdsDataType, _
|
|
ByRef outSize As Integer) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetPropertyData
|
|
'//
|
|
'// Description:
|
|
'// Get the property data value.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the item.
|
|
'// inPropertyID - The ProprtyID
|
|
'// inParam - Additional information of property.
|
|
'// We use this parameter in order to specify an index
|
|
'// in case there are two or more values over the same ID.
|
|
'// inPropertySize - The number of bytes of the prepared buffer
|
|
'// for receive property-value.
|
|
'// Out: outPropertyValue - The buffer pointer to receive property-value.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetPropertyData Lib "EDSDK" ( _
|
|
ByVal inRef As IntPtr, _
|
|
ByVal inPropertyID As Integer, _
|
|
ByVal inParam As Integer, _
|
|
ByVal inPropertySize As Integer, _
|
|
ByVal outPropertyData As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetPropertyData
|
|
'//
|
|
'// Description:
|
|
'// Sets property data for the object designated in inRef.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the item.
|
|
'// inPropertyID - The ProprtyID
|
|
'// inParam - Additional information of property.
|
|
'// inPropertySize - The number of bytes of the prepared buffer
|
|
'// for set property-value.
|
|
'// inPropertyData - The buffer pointer to set property-value.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetPropertyData Lib "EDSDK" ( _
|
|
ByVal inRef As IntPtr, _
|
|
ByVal inPropertyID As Integer, _
|
|
ByVal inParam As Integer, _
|
|
ByVal inPropertySize As Integer, _
|
|
<MarshalAs(UnmanagedType.AsAny)> ByVal inPropertyData As Object) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetPropertyDesc
|
|
'//
|
|
'// Description:
|
|
'// Gets a list of property data that can be set for the object
|
|
'// designated in inRef, as well as maximum and minimum values.
|
|
'// This API is intended for only some shooting-related properties.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the camera.
|
|
'// inPropertyID - The Property ID.
|
|
'// Out: outPropertyDesc - Array of the value which can be set up.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetPropertyDesc Lib "EDSDK" ( _
|
|
ByVal inRef As IntPtr, _
|
|
ByVal inPropertyID As Integer, _
|
|
ByRef outPropertyDesc As EdsPropertyDesc) As Integer
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// device-list and device operation
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetCameraList
|
|
'//
|
|
'// Description:
|
|
'// Gets camera list objects.
|
|
'//
|
|
'// Parameters:
|
|
'// In: None
|
|
'// Out: outCameraListRef - Pointer to the camera-list.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetCameraList Lib "EDSDK" ( _
|
|
ByRef outCameraListRef As IntPtr) As Integer
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// camera operation
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetDeviceInfo
|
|
'//
|
|
'// Description:
|
|
'// Gets device information, such as the device name.
|
|
'// Because device information of remote cameras is stored
|
|
'// on the host computer, you can use this API
|
|
'// before the camera object initiates communication
|
|
'// (that is, before a session is opened).
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - The reference of the camera.
|
|
'// Out: outDeviceInfo - Information as device of camera.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetDeviceInfo Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByRef outDeviceInfo As EdsDeviceInfo) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsOpenSession
|
|
'//
|
|
'// Description:
|
|
'// Establishes a logical connection with a remote camera.
|
|
'// Use this API after getting the camera's EdsCamera object.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - The reference of the camera
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsOpenSession Lib "EDSDK" (ByVal inCameraRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCloseSession
|
|
'//
|
|
'// Description:
|
|
'// Closes a logical connection with a remote camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - The reference of the camera
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCloseSession Lib "EDSDK" (ByVal inCameraRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSendCommand
|
|
'//
|
|
'// Description:
|
|
'// Sends a command such as "Shoot" to a remote camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - The reference of the camera which will receive the
|
|
'// command.
|
|
'// inCommand - Specifies the command to be sent.
|
|
'// inParam - Specifies additional command-specific information.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSendCommand Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByVal inCommandID As Integer, _
|
|
ByVal inParam As Integer) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSendStatusCommand
|
|
'//
|
|
'// Description:
|
|
'// Sets the remote camera state or mode.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - The reference of the camera which will receive the
|
|
'// command.
|
|
'// inStatusCommand - Specifies the command to be sent.
|
|
'// inParam - Specifies additional command-specific information.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSendStatusCommand Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByVal inStatusCommand As Integer, _
|
|
ByVal inParam As Integer) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetCapacity
|
|
'//
|
|
'// Description:
|
|
'// Sets the remaining HDD capacity on the host computer
|
|
'// (excluding the portion from image transfer),
|
|
'// as calculated by subtracting the portion from the previous time.
|
|
'// Set a reset flag initially and designate the cluster length
|
|
'// and number of free clusters.
|
|
'// Some type 2 protocol standard cameras can display the number of shots
|
|
'// left on the camera based on the available disk capacity
|
|
'// of the host computer.
|
|
'// For these cameras, after the storage destination is set to the computer,
|
|
'// use this API to notify the camera of the available disk capacity
|
|
'// of the host computer.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - The reference of the camera which will receive the
|
|
'// command.
|
|
'// inCapacity - The remaining capacity of a transmission place.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetCapacity Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByVal inCapacity As EdsCapacity) As Integer
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// volume operation
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetVolumeInfo
|
|
'//
|
|
'// Description:
|
|
'// Gets volume information for a memory card in the camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inVolumeRef - The reference of the volume.
|
|
'// Out: outVolumeInfo - information of the volume.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Auto Function EdsGetVolumeInfo Lib "EDSDK" ( _
|
|
ByVal inVolumeRef As IntPtr, _
|
|
ByRef outVolumeInfo As EdsVolumeInfo) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsFormatVolume
|
|
'//
|
|
'// Description:
|
|
'// .
|
|
'//
|
|
'// Parameters:
|
|
'// In: inVolumeRef - The reference of volume .
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsFormatVolume Lib "EDSDK" (ByVal inVolumeRef As IntPtr) As Integer
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// directory item operation
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetDirectoryItemInfo
|
|
'//
|
|
'// Description:
|
|
'// Gets information about the directory or file objects
|
|
'// on the memory card (volume) in a remote camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'// Out: outDirItemInfo - information of the directory item.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetDirectoryItemInfo Lib "EDSDK" ( _
|
|
ByVal inDirItemRefs As IntPtr, _
|
|
ByRef outDirItemInfo As EdsDirectoryItemInfo) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsDeleteDirectoryItem
|
|
'//
|
|
'// Description:
|
|
'// Deletes a camera folder or file.
|
|
'// If folders with subdirectories are designated, all files are deleted
|
|
'// except protected files.
|
|
'// EdsDirectoryItem objects deleted by means of this API are implicitly
|
|
'// released by the EDSDK. Thus, there is no need to release them
|
|
'// by means of EdsRelease.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsDeleteDirectoryItem Lib "EDSDK" ( _
|
|
ByVal inDirItemRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsDownload
|
|
'//
|
|
'// Description:
|
|
'// Downloads a file on a remote camera
|
|
'// (in the camera memory or on a memory card) to the host computer.
|
|
'// The downloaded file is sent directly to a file stream created in advance.
|
|
'// When dividing the file being retrieved, call this API repeatedly.
|
|
'// Also in this case, make the data block size a multiple of 512 (bytes),
|
|
'// excluding the final block.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'// inReadSize -
|
|
'//
|
|
'// Out: outStream - The reference of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsDownload Lib "EDSDK" ( _
|
|
ByVal inDirItemRef As IntPtr, _
|
|
ByVal inReadSize As ULong, _
|
|
ByVal outStream As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsDownloadCancel
|
|
'//
|
|
'// Description:
|
|
'// Must be executed when downloading of a directory item is canceled.
|
|
'// Calling this API makes the camera cancel file transmission.
|
|
'// It also releases resources.
|
|
'// This operation need not be executed when using EdsDownloadThumbnail.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsDownloadCancel Lib "EDSDK" (ByVal inDirItemRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsDownloadComplete
|
|
'//
|
|
'// Description:
|
|
'// Must be called when downloading of directory items is complete.
|
|
'// Executing this API makes the camera
|
|
'// recognize that file transmission is complete.
|
|
'// This operation need not be executed when using EdsDownloadThumbnail.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'//
|
|
'// Out: outStream - None.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsDownloadComplete Lib "EDSDK" (ByVal inDirItemRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsDownloadThumbnail
|
|
'//
|
|
'// Description:
|
|
'// Extracts and downloads thumbnail information from image files in a camera.
|
|
'// Thumbnail information in the camera's image files is downloaded
|
|
'// to the host computer.
|
|
'// Downloaded thumbnails are sent directly to a file stream created in advance.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'//
|
|
'// Out: outStream - The reference of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsDownloadThumbnail Lib "EDSDK" ( _
|
|
ByVal inDirItemRef As IntPtr, _
|
|
ByVal outStream As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetAttribute
|
|
'//
|
|
'// Description:
|
|
'// Gets attributes of files on a camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'// Out: outFileAttribute - Indicates the file attributes.
|
|
'// As for the file attributes, OR values of the value defined
|
|
'// by enum EdsFileAttributes can be retrieved. Thus, when
|
|
'// determining the file attributes, you must check
|
|
'// if an attribute flag is set for target attributes.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetAttribute Lib "EDSDK" ( _
|
|
ByVal inDirItemRef As IntPtr, _
|
|
ByRef outFileAttribute As EdsFileAttributes) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetAttribute
|
|
'//
|
|
'// Description:
|
|
'// Changes attributes of files on a camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inDirItemRef - The reference of the directory item.
|
|
'// inFileAttribute - Indicates the file attributes.
|
|
'// As for the file attributes, OR values of the value
|
|
'// defined by enum EdsFileAttributes can be retrieved.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetAttribute Lib "EDSDK" ( _
|
|
ByVal inDirItemRef As IntPtr, _
|
|
ByVal inFileAttribute As EdsFileAttributes) As Integer
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// stream operation
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCreateFileStream
|
|
'//
|
|
'// Description:
|
|
'// Creates a new file on a host computer (or opens an existing file)
|
|
'// and creates a file stream for access to the file.
|
|
'// If a new file is designated before executing this API,
|
|
'// the file is actually created following the timing of writing
|
|
'// by means of EdsWrite or the like with respect to an open stream.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inFileName - Pointer to a null-terminated string that specifies
|
|
'// the file name.
|
|
'// inCreateDisposition - Action to take on files that exist,
|
|
'// and which action to take when files do not exist.
|
|
'// inDesiredAccess - Access to the stream (reading, writing, or both).
|
|
'// Out: outStream - The reference of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCreateFileStream Lib "EDSDK" ( _
|
|
ByVal inFileName As String, _
|
|
ByVal inCreateDisposition As Integer, _
|
|
ByVal inDesiredAccess As Integer, _
|
|
ByRef outStream As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCreateMemoryStream
|
|
'//
|
|
'// Description:
|
|
'// Creates a stream in the memory of a host computer.
|
|
'// In the case of writing in excess of the allocated buffer size,
|
|
'// the memory is automatically extended.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inBufferSize - The number of bytes of the memory to allocate.
|
|
'// Out: outStream - The reference of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCreateMemoryStream Lib "EDSDK" ( _
|
|
ByVal inBufferSize As ULong, _
|
|
ByRef outStream As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCreateStreamEx
|
|
'//
|
|
'// Description:
|
|
'// An extended version of EdsCreateStreamFromFile.
|
|
'// Use this function when working with Unicode file names.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inURL (for Macintosh) - Designate CFURLRef.
|
|
'// inFileName (for Windows) - Designate the file name.
|
|
'// inCreateDisposition - Action to take on files that exist,
|
|
'// and which action to take when files do not exist.
|
|
'// inDesiredAccess - Access to the stream (reading, writing, or both).
|
|
'//
|
|
'// Out: outStream - The reference of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCreateFileStreamEx Lib "EDSDK" ( _
|
|
ByRef inFileName As String, _
|
|
ByVal inCreateDisposition As EdsFileCreateDisposition, _
|
|
ByVal inDesiredAccess As EdsAccess, _
|
|
ByRef outStream As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCreateMemoryStreamFromPointer
|
|
'//
|
|
'// Description:
|
|
'// Creates a stream from the memory buffer you prepare.
|
|
'// Unlike the buffer size of streams created by means of EdsCreateMemoryStream,
|
|
'// the buffer size you prepare for streams created this way does not expand.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inBufferSize - The number of bytes of the memory to allocate.
|
|
'// Out: outStream - The reference of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCreateMemoryStreamFromPointer Lib "EDSDK" ( _
|
|
ByVal inUserBuffer As IntPtr, _
|
|
ByVal inBufferSize As ULong, _
|
|
ByRef outStream As IntPtr) As Integer
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetPointer
|
|
'//
|
|
'// Description:
|
|
'// Gets the pointer to the start address of memory managed by the memory stream.
|
|
'// As the EDSDK automatically resizes the buffer, the memory stream provides
|
|
'// you with the same access methods as for the file stream.
|
|
'// If access is attempted that is excessive with regard to the buffer size
|
|
'// for the stream, data before the required buffer size is allocated
|
|
'// is copied internally, and new writing occurs.
|
|
'// Thus, the buffer pointer might be switched on an unknown timing.
|
|
'// Caution in use is therefore advised.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStream - Designate the memory stream for the pointer to retrieve.
|
|
'// Out: outPointer - If successful, returns the pointer to the buffer
|
|
'// written in the memory stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetPointer Lib "EDSDK" ( _
|
|
ByVal inStream As IntPtr, _
|
|
ByRef outPointer As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsRead
|
|
'//
|
|
'// Description:
|
|
'// Reads data the size of inReadSize into the outBuffer buffer,
|
|
'// starting at the current read or write position of the stream.
|
|
'// The size of data actually read can be designated in outReadSize.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - The reference of the stream or image.
|
|
'// inReadSize - The number of bytes to read.
|
|
'// Out: outBuffer - Pointer to the user-supplied buffer that is to receive
|
|
'// the data read from the stream.
|
|
'// outReadSize - The actually read number of bytes.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsRead Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByVal inReadSize As ULong, _
|
|
ByVal outBuffer As IntPtr, _
|
|
ByRef outReadSize As ULong) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsWrite
|
|
'//
|
|
'// Description:
|
|
'// Writes data of a designated buffer
|
|
'// to the current read or write position of the stream.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - The reference of the stream or image.
|
|
'// inWriteSize - The number of bytes to write.
|
|
'// inBuffer - A pointer to the user-supplied buffer that contains
|
|
'// the data to be written to the stream.
|
|
'// Out: outWrittenSize - The actually written-in number of bytes.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsWrite Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByVal inWriteSize As ULong, _
|
|
ByVal inBuffer As IntPtr, _
|
|
ByRef outWrittenSize As ULong) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSeek
|
|
'//
|
|
'// Description:
|
|
'// Moves the read or write position of the stream
|
|
' (that is, the file position indicator).
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - The reference of the stream or image.
|
|
'// inSeekOffset - Number of bytes to move the pointer.
|
|
'// inSeekOrigin - Pointer movement mode. Must be one of the following
|
|
'// values.
|
|
'// kEdsSeek_Cur Move the stream pointer inSeekOffset bytes
|
|
'// from the current position in the stream.
|
|
'// kEdsSeek_Begin Move the stream pointer inSeekOffset bytes
|
|
'// forward from the beginning of the stream.
|
|
'// kEdsSeek_End Move the stream pointer inSeekOffset bytes
|
|
'// from the end of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSeek Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByVal inSeekOffset As Long, _
|
|
ByVal inSeekOrigin As EdsSeekOrigin) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetPosition
|
|
'//
|
|
'// Description:
|
|
'// Gets the current read or write position of the stream
|
|
'// (that is, the file position indicator).
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - The reference of the stream or image.
|
|
'// Out: outPosition - The current stream pointer.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetPosition Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByRef outPosition As ULong) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetLength
|
|
'//
|
|
'// Description:
|
|
'// Gets the stream size.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - The reference of the stream or image.
|
|
'// Out: outLength - The length of the stream.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetLength Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByRef outLength As ULong) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCopyData
|
|
'//
|
|
'// Description:
|
|
'// Copies data from the copy source stream to the copy destination stream.
|
|
'// The read or write position of the data to copy is determined from
|
|
'// the current file read or write position of the respective stream.
|
|
'// After this API is executed, the read or write positions of the copy source
|
|
'// and copy destination streams are moved an amount corresponding to
|
|
'// inWriteSize in the positive direction.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - The reference of the stream or image.
|
|
'// inWriteSize - The number of bytes to copy.
|
|
'// Out: outStreamRef - The reference of the stream or image.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCopyData Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByVal inWriteSize As ULong, _
|
|
ByVal OutStreamRef As IntPtr) As Integer
|
|
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetProgressCallback
|
|
'//
|
|
'// Description:
|
|
'// Register a progress callback function.
|
|
'// An event is received as notification of progress during processing that
|
|
'// takes a relatively long time, such as downloading files from a
|
|
'// remote camera.
|
|
'// If you register the callback function, the EDSDK calls the callback
|
|
'// function during execution or on completion of the following APIs.
|
|
'// This timing can be used in updating on-screen progress bars, for example.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inRef - The reference of the stream or image.
|
|
'// inProgressCallback - Pointer to a progress callback function.
|
|
'// inProgressOption - The option about progress is specified.
|
|
'// Must be one of the following values.
|
|
'// kEdsProgressOption_Done
|
|
'// When processing is completed,a callback function
|
|
'// is called only at once.
|
|
'// kEdsProgressOption_Periodically
|
|
'// A callback function is performed periodically.
|
|
'// inContext - Application information, passed in the argument
|
|
'// when the callback function is called. Any information
|
|
'// required for your program may be added.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetProgressCallback Lib "EDSDK" ( _
|
|
ByVal inRef As IntPtr, _
|
|
ByVal inProgressCallback As EdsProgressCallback, _
|
|
ByVal inProgressOption As EdsProgressOption, _
|
|
ByVal inContext As IntPtr) As Integer
|
|
|
|
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// image operation
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCreateImageRef
|
|
'//
|
|
'// Description:
|
|
'// Creates an image object from an image file.
|
|
'// Without modification, stream objects cannot be worked with as images.
|
|
'// Thus, when extracting images from image files,
|
|
'// you must use this API to create image objects.
|
|
'// The image object created this way can be used to get image information
|
|
'// (such as the height and width, number of color components, and
|
|
'// resolution), thumbnail image data, and the image data itself.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - The reference of the stream.
|
|
'//
|
|
'// Out: outImageRef - The reference of the image.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCreateImageRef Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByRef outImageRef As IntPtr) As Integer
|
|
|
|
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetImageInfo
|
|
'//
|
|
'// Description:
|
|
'// Gets image information from a designated image object.
|
|
'// Here, image information means the image width and height,
|
|
'// number of color components, resolution, and effective image area.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inStreamRef - Designate the object for which to get image information.
|
|
'// inImageSource - Of the various image data items in the image file,
|
|
'// designate the type of image data representing the
|
|
'// information you want to get. Designate the image as
|
|
'// defined in Enum EdsImageSource.
|
|
'//
|
|
'// kEdsImageSrc_FullView
|
|
'// The image itself (a full-sized image)
|
|
'// kEdsImageSrc_Thumbnail
|
|
'// A thumbnail image
|
|
'// kEdsImageSrc_Preview
|
|
'// A preview image
|
|
'// kEdsImageSrc_RAWThumbnail
|
|
'// A RAW thumbnail image
|
|
'// kEdsImageSrc_RAWFullView
|
|
'// A RAW full-sized image
|
|
'// Out: outImageInfo - Stores the image data information designated
|
|
'// in inImageSource.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetImageInfo Lib "EDSDK" ( _
|
|
ByVal inImageRef As IntPtr, _
|
|
ByVal inImageSource As EdsImageSource, _
|
|
ByRef outImageInfo As EdsImageInfo) As Integer
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsGetImage
|
|
'//
|
|
'// Description:
|
|
'// Gets designated image data from an image file, in the form of a
|
|
'// designated rectangle.
|
|
'// Returns uncompressed results for JPEGs and processed results
|
|
'// in the designated pixel order (RGB, Top-down BGR, and so on) for
|
|
'// RAW images.
|
|
'// Additionally, by designating the input/output rectangle,
|
|
'// it is possible to get reduced, enlarged, or partial images.
|
|
'// However, because images corresponding to the designated output rectangle
|
|
'// are always returned by the SDK, the SDK does not take the aspect
|
|
'// ratio into account.
|
|
'// To maintain the aspect ratio, you must keep the aspect ratio in mind
|
|
'// when designating the rectangle.
|
|
'//
|
|
'// Parameters:
|
|
'// In:
|
|
'// inImageRef - Designate the image object for which to get
|
|
'// the image data.
|
|
'// inImageSource - Designate the type of image data to get from
|
|
'// the image file (thumbnail, preview, and so on).
|
|
'// Designate values as defined in Enum EdsImageSource.
|
|
'// inImageType - Designate the output image type. Because
|
|
'// the output format of EdGetImage may only be RGB, only
|
|
'// kEdsTargetImageType_RGB or kEdsTargetImageType_RGB16
|
|
'// can be designated.
|
|
'// However, image types exceeding the resolution of
|
|
'// inImageSource cannot be designated.
|
|
'// inSrcRect - Designate the coordinates and size of the rectangle
|
|
'// to be retrieved (processed) from the source image.
|
|
'// inDstSize - Designate the rectangle size for output.
|
|
'//
|
|
'// Out:
|
|
'// outStreamRef - Designate the memory or file stream for output of
|
|
'// the image.
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsGetImage Lib "EDSDK" ( _
|
|
ByVal inImageRef As IntPtr, _
|
|
ByVal inImageSource As EdsImageSource, _
|
|
ByVal inImageType As EdsTargetImageType, _
|
|
ByVal inSrcRect As EdsRect, _
|
|
ByVal inDstSize As EdsSize, _
|
|
ByVal outStreamRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSaveImage
|
|
'//
|
|
'// Description:
|
|
'// Saves as a designated image type after RAW processing.
|
|
'// When saving with JPEG compression,
|
|
'// the JPEG quality setting applies with respect to EdsOptionRef.
|
|
'//
|
|
'// Parameters:
|
|
'// In:
|
|
'// inImageRef - Designate the image object for which to produce the file.
|
|
'// inImageType - Designate the image type to produce. Designate the
|
|
'// following image types.
|
|
'//
|
|
'// kEdsTargetImageType - Jpeg JPEG
|
|
'// kEdsTargetImageType - TIFF 8-bit TIFF
|
|
'// kEdsTargetImageType - TIFF16 16-bit TIFF
|
|
'// inSaveSetting - Designate saving options, such as JPEG image quality.
|
|
'// Out:
|
|
'// outStreamRef - Specifies the output file stream. The memory stream
|
|
'// cannot be specified here.
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSaveImage Lib "EDSDK" ( _
|
|
ByVal inImageRef As IntPtr, _
|
|
ByVal inImageType As EdsTargetImageType, _
|
|
ByVal inSaveSetting As EdsSaveImageSetting, _
|
|
ByVal outStreamRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCacheImage
|
|
'//
|
|
'// Description:
|
|
'// Switches a setting on and off for creation of an image cache in the SDK
|
|
'// for a designated image object during extraction (processing) of
|
|
'// the image data.
|
|
'// Creating the cache increases the processing speed, starting from
|
|
'// the second time.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inImageRef - The reference of the image.
|
|
'// inUseCache - If cache image data or not
|
|
'// If set to FALSE, the cached image data will released.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCacheImage Lib "EDSDK" ( _
|
|
ByVal inImageRef As IntPtr, _
|
|
ByVal inUseCache As Boolean) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsReflectImageProperty
|
|
'// Description:
|
|
'// Incorporates image object property changes
|
|
'// (effected by means of EdsSetPropertyData) in the stream.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inImageRef - The reference of the image.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsReflectImageProperty Lib "EDSDK" (ByVal inImageRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsCreateEvfImageRef
|
|
'// Description:
|
|
'// Creates an object used to get the live view image data set.
|
|
'//
|
|
'/ Parameters:
|
|
'// In: inStreamRef - The stream reference which opened to get EVF JPEG image.
|
|
'// Out: outEvfImageRef - The EVFData reference.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsCreateEvfImageRef Lib "EDSDK" ( _
|
|
ByVal inStreamRef As IntPtr, _
|
|
ByRef outEvfImageRef As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsDownloadEvfImage
|
|
'// Description:
|
|
'// Downloads the live view image data set for a camera currently in live view mode.
|
|
'// Live view can be started by using the property ID:kEdsPropertyID_Evf_OutputDevice and
|
|
'// data:EdsOutputDevice_PC to call EdsSetPropertyData.
|
|
'// In addition to image data, information such as zoom, focus position, and histogram data
|
|
'// is included in the image data set. Image data is saved in a stream maintained by EdsEvfImageRef.
|
|
'// EdsGetPropertyData can be used to get information such as the zoom, focus position, etc.
|
|
'// Although the information of the zoom and focus position can be obtained from EdsEvfImageRef,
|
|
'// settings are applied to EdsCameraRef.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - The Camera reference.
|
|
'// In: inEvfImageRef - The EVFData reference.
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsDownloadEvfImage Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByVal inEvfImageRef As IntPtr) As Integer
|
|
|
|
'/******************************************************************************
|
|
'*******************************************************************************
|
|
'//
|
|
'// event handler
|
|
'//
|
|
'*******************************************************************************
|
|
'******************************************************************************/
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetCameraAddedHandler
|
|
'//
|
|
'// Description:
|
|
'// Registers a callback function for when a camera is detected.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraAddedHandler - Pointer to a callback function
|
|
'// called when a camera is connected physically
|
|
'// inContext - Specifies an application-defined value to be sent to
|
|
'// the callback function pointed to by CallBack parameter.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetCameraAddedHandler Lib "EDSDK" ( _
|
|
ByVal inCameraAddedHandler As EdsCameraAddedHandler, _
|
|
ByVal inContext As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetPropertyEventHandler
|
|
'//
|
|
'// Description:
|
|
'// Registers a callback function for receiving status
|
|
'// change notification events for property states on a camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - Designate the camera object.
|
|
'// inEvent - Designate one or all events to be supplemented.
|
|
'// inPropertyEventHandler - Designate the pointer to the callback
|
|
'// function for receiving property-related camera events.
|
|
'// inContext - Designate application information to be passed by
|
|
'// means of the callback function. Any data needed for
|
|
'// your application can be passed.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetPropertyEventHandler Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByVal inEvnet As Integer, _
|
|
ByVal inPropertyEventHandler As EdsPropertyEventHandler, _
|
|
ByVal inContext As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetObjectEventHandler
|
|
'//
|
|
'// Description:
|
|
'// Registers a callback function for receiving status
|
|
'// change notification events for objects on a remote camera.
|
|
'// Here, object means volumes representing memory cards, files and directories,
|
|
'// and shot images stored in memory, in particular.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - Designate the camera object.
|
|
'// inEvent - Designate one or all events to be supplemented.
|
|
'// To designate all events, use kEdsObjectEvent_All.
|
|
'// inObjectEventHandler - Designate the pointer to the callback function
|
|
'// for receiving object-related camera events.
|
|
'// inContext - Passes inContext without modification,
|
|
'// as designated as an EdsSetObjectEventHandler argument.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetObjectEventHandler Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByVal inEvnet As Integer, _
|
|
ByVal inObjectEventHandler As EdsObjectEventHandler, _
|
|
ByVal inContext As IntPtr) As Integer
|
|
|
|
|
|
'/*-----------------------------------------------------------------------------
|
|
'//
|
|
'// Function: EdsSetCameraStateEventHandler
|
|
'//
|
|
'// Description:
|
|
'// Registers a callback function for receiving status
|
|
'// change notification events for property states on a camera.
|
|
'//
|
|
'// Parameters:
|
|
'// In: inCameraRef - Designate the camera object.
|
|
'// inEvent - Designate one or all events to be supplemented.
|
|
'// To designate all events, use kEdsStateEvent_All.
|
|
'// inStateEventHandler - Designate the pointer to the callback function
|
|
'// for receiving events related to camera object states.
|
|
'// inContext - Designate application information to be passed
|
|
'// by means of the callback function. Any data needed for
|
|
'// your application can be passed.
|
|
'// Out: None
|
|
'//
|
|
'// Returns: Any of the sdk errors.
|
|
'-----------------------------------------------------------------------------*/
|
|
Public Declare Function EdsSetCameraStateEventHandler Lib "EDSDK" ( _
|
|
ByVal inCameraRef As IntPtr, _
|
|
ByVal inEvnet As Integer, _
|
|
ByVal inStateEventHandler As EdsStateEventHandler, _
|
|
ByVal inContext As IntPtr) As Integer
|
|
|
|
End Module
|
|
#End If |