00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _TWAIN32_H
00020 #define _TWAIN32_H
00021
00022 #ifdef HAVE_SANE
00023 # include <sane/sane.h>
00024 #endif
00025 #include "twain.h"
00026 #include "windef.h"
00027
00028
00029 typedef struct tagActiveDS
00030 {
00031 struct tagActiveDS *next;
00032 TW_IDENTITY identity;
00033 TW_UINT16 currentState;
00034 TW_EVENT pendingEvent;
00035
00036 TW_UINT16 twCC;
00037 HWND hwndOwner;
00038 #ifdef HAVE_SANE
00039 SANE_Handle deviceHandle;
00040 SANE_Parameters sane_param;
00041
00042 #endif
00043
00044 TW_UINT16 capXferMech;
00045 } activeDS;
00046
00047 TW_UINT16 DSM_initialized;
00048 TW_UINT16 DSM_currentState;
00049 TW_UINT16 DSM_twCC;
00050 TW_HANDLE DSM_parentHWND;
00051 TW_UINT32 DSM_sourceId;
00052 TW_UINT16 DSM_currentDevice;
00053 #ifdef HAVE_SANE
00054 const SANE_Device **device_list;
00055 #endif
00056 activeDS *activeSources;
00057
00058
00059 extern activeDS *TWAIN_LookupSource (pTW_IDENTITY pDest);
00060 extern TW_UINT16 TWAIN_SaneCapability (activeDS *pSource,
00061 pTW_CAPABILITY pCapability, TW_UINT16 action);
00062
00063
00064 extern TW_UINT16 TWAIN_ControlGroupHandler (
00065 pTW_IDENTITY pOrigin, pTW_IDENTITY pDest,
00066 TW_UINT16 DAT, TW_UINT16 MSG, TW_MEMREF pData);
00067 extern TW_UINT16 TWAIN_ImageGroupHandler (
00068 pTW_IDENTITY pOrigin, pTW_IDENTITY pDest,
00069 TW_UINT16 DAT, TW_UINT16 MSG, TW_MEMREF pData);
00070 extern TW_UINT16 TWAIN_AudioGroupHandler (
00071 pTW_IDENTITY pOrigin, pTW_IDENTITY pDest,
00072 TW_UINT16 DAT, TW_UINT16 MSG, TW_MEMREF pData);
00073 extern TW_UINT16 TWAIN_SourceManagerHandler (
00074 pTW_IDENTITY pOrigin, TW_UINT16 DAT, TW_UINT16 MSG, TW_MEMREF pData);
00075
00076
00077 extern TW_UINT16 TWAIN_CloseDS
00078 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00079 extern TW_UINT16 TWAIN_IdentityGetDefault
00080 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00081 extern TW_UINT16 TWAIN_IdentityGetFirst
00082 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00083 extern TW_UINT16 TWAIN_IdentityGetNext
00084 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00085 extern TW_UINT16 TWAIN_OpenDS
00086 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00087 extern TW_UINT16 TWAIN_UserSelect
00088 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00089 extern TW_UINT16 TWAIN_CloseDSM
00090 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00091 extern TW_UINT16 TWAIN_OpenDSM
00092 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00093 extern TW_UINT16 TWAIN_GetDSMStatus
00094 (pTW_IDENTITY pOrigin, TW_MEMREF pData);
00095
00096
00097
00098 TW_UINT16 TWAIN_CapabilityGet
00099 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00100 TW_UINT16 TWAIN_CapabilityGetCurrent
00101 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest,TW_MEMREF pData);
00102 TW_UINT16 TWAIN_CapabilityGetDefault
00103 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00104 TW_UINT16 TWAIN_CapabilityQuerySupport
00105 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00106 TW_UINT16 TWAIN_CapabilityReset
00107 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00108 TW_UINT16 TWAIN_CapabilitySet
00109 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00110 TW_UINT16 TWAIN_CustomDSDataGet
00111 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00112 TW_UINT16 TWAIN_CustomDSDataSet
00113 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00114 TW_UINT16 TWAIN_AutomaticCaptureDirectory
00115 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00116 TW_UINT16 TWAIN_ChangeDirectory
00117 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00118 TW_UINT16 TWAIN_FileSystemCopy
00119 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00120 TW_UINT16 TWAIN_CreateDirectory
00121 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00122 TW_UINT16 TWAIN_FileSystemDelete
00123 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00124 TW_UINT16 TWAIN_FormatMedia
00125 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00126 TW_UINT16 TWAIN_FileSystemGetClose
00127 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00128 TW_UINT16 TWAIN_FileSystemGetFirstFile
00129 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00130 TW_UINT16 TWAIN_FileSystemGetInfo
00131 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00132 TW_UINT16 TWAIN_FileSystemGetNextFile
00133 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00134 TW_UINT16 TWAIN_FileSystemRename
00135 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00136 TW_UINT16 TWAIN_ProcessEvent
00137 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00138 TW_UINT16 TWAIN_PassThrough
00139 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00140 TW_UINT16 TWAIN_PendingXfersEndXfer
00141 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00142 TW_UINT16 TWAIN_PendingXfersGet
00143 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00144 TW_UINT16 TWAIN_PendingXfersReset
00145 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00146 TW_UINT16 TWAIN_PendingXfersStopFeeder
00147 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00148 TW_UINT16 TWAIN_SetupFileXferGet
00149 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00150 TW_UINT16 TWAIN_SetupFileXferGetDefault
00151 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00152 TW_UINT16 TWAIN_SetupFileXferReset
00153 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00154 TW_UINT16 TWAIN_SetupFileXferSet
00155 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00156 TW_UINT16 TWAIN_SetupFileXfer2Get
00157 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00158 TW_UINT16 TWAIN_SetupFileXfer2GetDefault
00159 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00160 TW_UINT16 TWAIN_SetupFileXfer2Reset
00161 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00162 TW_UINT16 TWAIN_SetupFileXfer2Set
00163 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00164 TW_UINT16 TWAIN_SetupMemXferGet
00165 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00166 TW_UINT16 TWAIN_GetDSStatus
00167 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00168 TW_UINT16 TWAIN_DisableDSUserInterface
00169 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00170 TW_UINT16 TWAIN_EnableDSUserInterface
00171 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00172 TW_UINT16 TWAIN_EnableDSUIOnly
00173 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00174 TW_UINT16 TWAIN_XferGroupGet
00175 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00176 TW_UINT16 TWAIN_XferGroupSet
00177 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00178
00179
00180
00181 TW_UINT16 TWAIN_CIEColorGet
00182 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00183 TW_UINT16 TWAIN_ExtImageInfoGet
00184 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00185 TW_UINT16 TWAIN_GrayResponseReset
00186 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00187 TW_UINT16 TWAIN_GrayResponseSet
00188 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00189 TW_UINT16 TWAIN_ImageFileXferGet
00190 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00191 TW_UINT16 TWAIN_ImageInfoGet
00192 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00193 TW_UINT16 TWAIN_ImageLayoutGet
00194 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00195 TW_UINT16 TWAIN_ImageLayoutGetDefault
00196 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00197 TW_UINT16 TWAIN_ImageLayoutReset
00198 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00199 TW_UINT16 TWAIN_ImageLayoutSet
00200 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00201 TW_UINT16 TWAIN_ImageMemXferGet
00202 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00203 TW_UINT16 TWAIN_ImageNativeXferGet
00204 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00205 TW_UINT16 TWAIN_JPEGCompressionGet
00206 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00207 TW_UINT16 TWAIN_JPEGCompressionGetDefault
00208 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00209 TW_UINT16 TWAIN_JPEGCompressionReset
00210 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00211 TW_UINT16 TWAIN_JPEGCompressionSet
00212 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00213 TW_UINT16 TWAIN_Palette8Get
00214 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00215 TW_UINT16 TWAIN_Palette8GetDefault
00216 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00217 TW_UINT16 TWAIN_Palette8Reset
00218 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00219 TW_UINT16 TWAIN_Palette8Set
00220 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00221 TW_UINT16 TWAIN_RGBResponseReset
00222 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00223 TW_UINT16 TWAIN_RGBResponseSet
00224 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00225
00226
00227
00228 TW_UINT16 TWAIN_AudioFileXferGet
00229 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00230 TW_UINT16 TWAIN_AudioInfoGet
00231 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00232 TW_UINT16 TWAIN_AudioNativeXferGet
00233 (pTW_IDENTITY pOrigin, pTW_IDENTITY pDest, TW_MEMREF pData);
00234
00235
00236 TW_UINT16 TWAIN_ICAPXferMech
00237 (activeDS *pSource, pTW_CAPABILITY pCapability, TW_UINT16 action);
00238
00239 #endif