You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
987 lines
28 KiB
987 lines
28 KiB
5 years ago
|
/*
|
||
|
File: ICAApplication.h
|
||
|
|
||
|
Contains: General purpose Image Capture definitions
|
||
|
|
||
|
Version: QuickTime 7.3
|
||
|
|
||
|
Copyright: (c) 2007 (c) 2000-2001 by Apple Computer, Inc., all rights reserved.
|
||
|
|
||
|
Bugs?: For bug reports, consult the following page on
|
||
|
the World Wide Web:
|
||
|
|
||
|
http://developer.apple.com/bugreporter/
|
||
|
|
||
|
*/
|
||
|
#ifndef __ICAAPPLICATION__
|
||
|
#define __ICAAPPLICATION__
|
||
|
|
||
|
#ifndef __MACTYPES__
|
||
|
#include <MacTypes.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __FILES__
|
||
|
#include <Files.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __CFDICTIONARY__
|
||
|
#include <CFDictionary.h>
|
||
|
#endif
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_ONCE
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_IMPORT
|
||
|
#pragma import on
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_STRUCT_ALIGN
|
||
|
#pragma options align=mac68k
|
||
|
#elif PRAGMA_STRUCT_PACKPUSH
|
||
|
#pragma pack(push, 2)
|
||
|
#elif PRAGMA_STRUCT_PACK
|
||
|
#pragma pack(2)
|
||
|
#endif
|
||
|
|
||
|
typedef struct OpaqueICAObject* ICAObject;
|
||
|
typedef struct OpaqueICAProperty* ICAProperty;
|
||
|
typedef struct OpaqueICAConnectionID* ICAConnectionID;
|
||
|
typedef struct OpaqueICAEventDataCookie* ICAEventDataCookie;
|
||
|
typedef struct OpaqueICAScannerSessionID* ICAScannerSessionID;
|
||
|
/*
|
||
|
--------------- Defines ---------------
|
||
|
*/
|
||
|
/* Error codes (Image Capture range = -9900...-9949)*/
|
||
|
enum {
|
||
|
kICACommunicationErr = -9900,
|
||
|
kICADeviceNotFoundErr = -9901,
|
||
|
kICADeviceNotOpenErr = -9902,
|
||
|
kICAFileCorruptedErr = -9903,
|
||
|
kICAIOPendingErr = -9904,
|
||
|
kICAInvalidObjectErr = -9905,
|
||
|
kICAInvalidPropertyErr = -9906,
|
||
|
kICAIndexOutOfRangeErr = -9907,
|
||
|
kICAPropertyTypeNotFoundErr = -9908
|
||
|
};
|
||
|
|
||
|
/* ICAObject types and subtypes */
|
||
|
enum {
|
||
|
kICADevice = FOUR_CHAR_CODE('icdv'), /* Also creator of device library files */
|
||
|
kICADeviceCamera = FOUR_CHAR_CODE('cmra'), /* Also file type of device library files */
|
||
|
kICADeviceScanner = FOUR_CHAR_CODE('scan'), /* Also file type of device library files */
|
||
|
kICADeviceMFP = FOUR_CHAR_CODE('mfp '), /* Also file type of device library files */
|
||
|
kICAList = FOUR_CHAR_CODE('objl'),
|
||
|
kICADirectory = FOUR_CHAR_CODE('dire'),
|
||
|
kICAFile = FOUR_CHAR_CODE('file'),
|
||
|
kICAFileImage = FOUR_CHAR_CODE('imag'),
|
||
|
kICAFileMovie = FOUR_CHAR_CODE('moov'),
|
||
|
kICAFileAudio = FOUR_CHAR_CODE('audo'),
|
||
|
kICAFileFirmware = FOUR_CHAR_CODE('firm'),
|
||
|
kICAFileOther = FOUR_CHAR_CODE('othe')
|
||
|
};
|
||
|
|
||
|
/* ICAProperties */
|
||
|
enum {
|
||
|
kICAProperty = FOUR_CHAR_CODE('prop'), /* */
|
||
|
/* file properties */
|
||
|
/* */
|
||
|
/* for images, refer to 'Digital Still Camera Image File Format Standard' Exif Version 2.1 section 2.6.4. and 2.6.5.*/
|
||
|
kICAPropertyImageWidth = FOUR_CHAR_CODE('0100'), /* UInt32 */
|
||
|
kICAPropertyImageHeight = FOUR_CHAR_CODE('0101'), /* UInt32 */
|
||
|
kICAPropertyImageBitDepth = FOUR_CHAR_CODE('0102'), /* UInt32 */
|
||
|
kICAPropertyImageDPI = FOUR_CHAR_CODE('011A'), /* UInt32 */
|
||
|
kICAPropertyImageExposureTime = FOUR_CHAR_CODE('829A'),
|
||
|
kICAPropertyImageFNumber = FOUR_CHAR_CODE('829D'),
|
||
|
kICAPropertyImageDateOriginal = FOUR_CHAR_CODE('9003'), /* null terminated string (YYYYMMDDThhmmss.s) */
|
||
|
kICAPropertyImageDateDigitized = FOUR_CHAR_CODE('9004'), /* null terminated string (YYYYMMDDThhmmss.s) */
|
||
|
kICAPropertyImageShutterSpeed = FOUR_CHAR_CODE('9201'), /* */
|
||
|
kICAPropertyImageAperture = FOUR_CHAR_CODE('9202'), /* */
|
||
|
kICAPropertyImageFlash = FOUR_CHAR_CODE('9209'), /* UInt16*/
|
||
|
kICAPropertyColorSpace = FOUR_CHAR_CODE('A001'), /* UInt16*/
|
||
|
kICAPropertyImageFilename = FOUR_CHAR_CODE('ifil'), /* null terminated string */
|
||
|
kICAPropertyImageSize = FOUR_CHAR_CODE('isiz'), /* UInt32 */
|
||
|
kICAPropertyImageData = FOUR_CHAR_CODE('idat'), /* void * */
|
||
|
kICAPropertyImageThumbnail = FOUR_CHAR_CODE('thum'), /* void * */
|
||
|
kICAPropertyColorSyncProfile = FOUR_CHAR_CODE('prof')
|
||
|
};
|
||
|
|
||
|
/* Messages */
|
||
|
enum {
|
||
|
kICAMessageConnect = FOUR_CHAR_CODE('open'),
|
||
|
kICAMessageDisconnect = FOUR_CHAR_CODE('clos'),
|
||
|
kICAMessageReset = FOUR_CHAR_CODE('rese'),
|
||
|
kICAMessageCheckDevice = FOUR_CHAR_CODE('chkd')
|
||
|
};
|
||
|
|
||
|
|
||
|
/* Data type definitions, mapped to AppleEvent types */
|
||
|
enum {
|
||
|
kICATypeUInt16 = FOUR_CHAR_CODE('ui16'), /* UInt16 */
|
||
|
kICATypeUInt32 = FOUR_CHAR_CODE('ui32'), /* UInt32 */
|
||
|
kICATypeUInt64 = FOUR_CHAR_CODE('ui64'), /* UInt64 */
|
||
|
kICATypeSInt16 = FOUR_CHAR_CODE('si16'), /* SInt16 */
|
||
|
kICATypeSInt32 = FOUR_CHAR_CODE('si32'), /* SInt32 */
|
||
|
kICATypeSInt64 = FOUR_CHAR_CODE('si64'), /* SInt64 */
|
||
|
kICATypeFixed = FOUR_CHAR_CODE('sing'), /* typeIEEE32BitFloatingPoint */
|
||
|
kICATypeBoolean = FOUR_CHAR_CODE('bool'), /* typeBoolean */
|
||
|
kICATypeString = FOUR_CHAR_CODE('TEXT'), /* typeChar */
|
||
|
kICATypeData = FOUR_CHAR_CODE('data'), /* void * */
|
||
|
kICATypeThumbnail = FOUR_CHAR_CODE('thum') /* ICAThumbnail*/
|
||
|
};
|
||
|
|
||
|
|
||
|
/* Flags for PropertyInfo flag element */
|
||
|
enum {
|
||
|
kICAFlagReadWriteAccess = 1L << 0,
|
||
|
kICAFlagReadAccess = 1L << 1
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
/* Notification types (Refer to section 12.4 of PTP spec) */
|
||
|
enum {
|
||
|
kICAEventCancelTransaction = FOUR_CHAR_CODE('ecnt'),
|
||
|
kICAEventObjectAdded = FOUR_CHAR_CODE('eoba'),
|
||
|
kICAEventObjectRemoved = FOUR_CHAR_CODE('eobr'),
|
||
|
kICAEventStoreAdded = FOUR_CHAR_CODE('esta'),
|
||
|
kICAEventStoreRemoved = FOUR_CHAR_CODE('estr'),
|
||
|
kICAEventDeviceAdded = FOUR_CHAR_CODE('edea'),
|
||
|
kICAEventDeviceRemoved = FOUR_CHAR_CODE('eder'),
|
||
|
kICAEventDevicePropChanged = FOUR_CHAR_CODE('edpc'),
|
||
|
kICAEventObjectInfoChanged = FOUR_CHAR_CODE('eoic'),
|
||
|
kICAEventDeviceInfoChanged = FOUR_CHAR_CODE('edic'),
|
||
|
kICAEventRequestObjectTransfer = FOUR_CHAR_CODE('erot'),
|
||
|
kICAEventStoreFull = FOUR_CHAR_CODE('estf'),
|
||
|
kICAEventDeviceReset = FOUR_CHAR_CODE('edvr'),
|
||
|
kICAEventStorageInfoChanged = FOUR_CHAR_CODE('esic'),
|
||
|
kICAEventCaptureComplete = FOUR_CHAR_CODE('ecpc'),
|
||
|
kICAEventUnreportedStatus = FOUR_CHAR_CODE('eurs')
|
||
|
};
|
||
|
|
||
|
|
||
|
/* Used for partial reads via ICAGetPropertyData */
|
||
|
enum {
|
||
|
kICAStartAtBeginning = 0,
|
||
|
kICAEntireLength = -1
|
||
|
};
|
||
|
|
||
|
/* ICADownloadFile flags */
|
||
|
enum {
|
||
|
kDeleteAfterDownload = 0x00000001,
|
||
|
kCreateCustomIcon = 0x00000002,
|
||
|
kAddMetaDataToFinderComment = 0x00000004,
|
||
|
kAdjustCreationDate = 0x00000008,
|
||
|
kSetFileTypeAndCreator = 0x00000010,
|
||
|
kEmbedColorSyncProfile = 0x00000020,
|
||
|
kRotateImage = 0x00000040
|
||
|
};
|
||
|
|
||
|
/* extended notification */
|
||
|
enum {
|
||
|
kExtendedNotificationPB = FOUR_CHAR_CODE('extd'),
|
||
|
kMessageGetEventData = FOUR_CHAR_CODE('mged'),
|
||
|
kEventClassPTPStandard = FOUR_CHAR_CODE('PTPs'),
|
||
|
kEventClassPTPVendor = FOUR_CHAR_CODE('PTPv')
|
||
|
};
|
||
|
|
||
|
/*
|
||
|
--------------- Structures ---------------
|
||
|
*/
|
||
|
struct ICAObjectInfo {
|
||
|
OSType objectType; /* i.e. kICAFile*/
|
||
|
OSType objectSubtype; /* i.e. kICAFileImage */
|
||
|
};
|
||
|
typedef struct ICAObjectInfo ICAObjectInfo;
|
||
|
|
||
|
|
||
|
struct ICAPropertyInfo {
|
||
|
OSType propertyType;
|
||
|
OSType dataType;
|
||
|
UInt32 dataSize;
|
||
|
UInt32 dataFlags;
|
||
|
};
|
||
|
typedef struct ICAPropertyInfo ICAPropertyInfo;
|
||
|
|
||
|
|
||
|
struct ICAMessage {
|
||
|
OSType messageType; /* <-- i.e. kICAMessageCameraCaptureNewImage */
|
||
|
UInt32 startByte; /* <-- */
|
||
|
void * dataPtr; /* <-- */
|
||
|
UInt32 dataSize; /* <-- */
|
||
|
OSType dataType; /* <-- */
|
||
|
};
|
||
|
typedef struct ICAMessage ICAMessage;
|
||
|
|
||
|
|
||
|
struct ICAThumbnail {
|
||
|
UInt32 width;
|
||
|
UInt32 height;
|
||
|
UInt32 dataSize;
|
||
|
UInt8 data[1]; /* 8-bit RGB data (RGBRGBRGB...)*/
|
||
|
};
|
||
|
typedef struct ICAThumbnail ICAThumbnail;
|
||
|
enum {
|
||
|
kICAPBVersion = 0x00010000
|
||
|
};
|
||
|
|
||
|
/*
|
||
|
--------------- Completion Procs ---------------
|
||
|
*/
|
||
|
/*
|
||
|
|
||
|
NOTE: the parameter for the completion proc (ICAHeader*) has to be casted to the appropriate type
|
||
|
e.g. (ICAGetChildCountPB*), ...
|
||
|
|
||
|
*/
|
||
|
|
||
|
typedef struct ICAHeader ICAHeader;
|
||
|
typedef CALLBACK_API_C( void , ICACompletion )(ICAHeader * pb);
|
||
|
/*
|
||
|
--------------- ICAHeader ---------------
|
||
|
*/
|
||
|
|
||
|
|
||
|
struct ICAHeader {
|
||
|
OSErr err; /* --> */
|
||
|
UInt32 refcon; /* <-- */
|
||
|
};
|
||
|
|
||
|
/*
|
||
|
--------------- Object parameter blocks ---------------
|
||
|
*/
|
||
|
|
||
|
|
||
|
struct ICAGetChildCountPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
UInt32 count; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetChildCountPB ICAGetChildCountPB;
|
||
|
|
||
|
|
||
|
struct ICAGetNthChildPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject parentObject; /* <-- */
|
||
|
UInt32 index; /* <-- zero based */
|
||
|
ICAObject childObject; /* --> */
|
||
|
ICAObjectInfo childInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetNthChildPB ICAGetNthChildPB;
|
||
|
|
||
|
|
||
|
struct ICAGetObjectInfoPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
ICAObjectInfo objectInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetObjectInfoPB ICAGetObjectInfoPB;
|
||
|
|
||
|
|
||
|
struct ICAGetParentOfObjectPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
ICAObject parentObject; /* --> */
|
||
|
ICAObjectInfo parentInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetParentOfObjectPB ICAGetParentOfObjectPB;
|
||
|
|
||
|
|
||
|
struct ICAGetRootOfObjectPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
ICAObject rootObject; /* --> */
|
||
|
ICAObjectInfo rootInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetRootOfObjectPB ICAGetRootOfObjectPB;
|
||
|
|
||
|
|
||
|
struct ICAGetObjectRefConPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
UInt32 objectRefCon; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetObjectRefConPB ICAGetObjectRefConPB;
|
||
|
|
||
|
|
||
|
struct ICASetObjectRefConPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
UInt32 objectRefCon; /* <-- */
|
||
|
};
|
||
|
typedef struct ICASetObjectRefConPB ICASetObjectRefConPB;
|
||
|
/*
|
||
|
--------------- Property parameter blocks ---------------
|
||
|
*/
|
||
|
|
||
|
|
||
|
struct ICAGetPropertyCountPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
UInt32 count; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetPropertyCountPB ICAGetPropertyCountPB;
|
||
|
|
||
|
|
||
|
struct ICAGetNthPropertyPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
UInt32 index; /* <-- zero based */
|
||
|
ICAProperty property; /* --> */
|
||
|
ICAPropertyInfo propertyInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetNthPropertyPB ICAGetNthPropertyPB;
|
||
|
|
||
|
|
||
|
struct ICAGetPropertyByTypePB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
OSType propertyType; /* <-- */
|
||
|
ICAProperty property; /* --> */
|
||
|
ICAPropertyInfo propertyInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetPropertyByTypePB ICAGetPropertyByTypePB;
|
||
|
|
||
|
|
||
|
struct ICAGetPropertyInfoPB {
|
||
|
ICAHeader header;
|
||
|
ICAProperty property; /* <-- */
|
||
|
ICAPropertyInfo propertyInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetPropertyInfoPB ICAGetPropertyInfoPB;
|
||
|
|
||
|
|
||
|
struct ICAGetPropertyDataPB {
|
||
|
ICAHeader header;
|
||
|
ICAProperty property; /* <-- */
|
||
|
UInt32 startByte; /* <-- */
|
||
|
UInt32 requestedSize; /* <-- */
|
||
|
void * dataPtr; /* <-> */
|
||
|
UInt32 actualSize; /* --> */
|
||
|
OSType dataType; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetPropertyDataPB ICAGetPropertyDataPB;
|
||
|
|
||
|
|
||
|
struct ICASetPropertyDataPB {
|
||
|
ICAHeader header;
|
||
|
ICAProperty property; /* <-- */
|
||
|
UInt32 startByte; /* <-- */
|
||
|
void * dataPtr; /* <-- */
|
||
|
UInt32 dataSize; /* <-- */
|
||
|
OSType dataType; /* <-- */
|
||
|
};
|
||
|
typedef struct ICASetPropertyDataPB ICASetPropertyDataPB;
|
||
|
|
||
|
|
||
|
struct ICAGetParentOfPropertyPB {
|
||
|
ICAHeader header;
|
||
|
ICAProperty property; /* <-- */
|
||
|
ICAObject parentObject; /* --> */
|
||
|
ICAObjectInfo parentInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetParentOfPropertyPB ICAGetParentOfPropertyPB;
|
||
|
|
||
|
|
||
|
struct ICAGetRootOfPropertyPB {
|
||
|
ICAHeader header;
|
||
|
ICAProperty property; /* <-- */
|
||
|
ICAObject rootObject; /* --> */
|
||
|
ICAObjectInfo rootInfo; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetRootOfPropertyPB ICAGetRootOfPropertyPB;
|
||
|
|
||
|
|
||
|
struct ICAGetPropertyRefConPB {
|
||
|
ICAHeader header;
|
||
|
ICAProperty property; /* <-- */
|
||
|
UInt32 propertyRefCon; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetPropertyRefConPB ICAGetPropertyRefConPB;
|
||
|
|
||
|
|
||
|
struct ICASetPropertyRefConPB {
|
||
|
ICAHeader header;
|
||
|
ICAProperty property; /* <-- */
|
||
|
UInt32 propertyRefCon; /* <-- */
|
||
|
};
|
||
|
typedef struct ICASetPropertyRefConPB ICASetPropertyRefConPB;
|
||
|
/*
|
||
|
--------------- Device parameter blocks ---------------
|
||
|
*/
|
||
|
|
||
|
|
||
|
struct ICAGetDeviceListPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* --> */
|
||
|
};
|
||
|
typedef struct ICAGetDeviceListPB ICAGetDeviceListPB;
|
||
|
|
||
|
|
||
|
struct ICAObjectSendMessagePB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
ICAMessage message; /* <-- */
|
||
|
UInt32 result; /* --> message specific result*/
|
||
|
};
|
||
|
typedef struct ICAObjectSendMessagePB ICAObjectSendMessagePB;
|
||
|
|
||
|
|
||
|
struct ICARegisterEventNotificationPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-> */
|
||
|
OSType notifyType; /* <-> */
|
||
|
ICACompletion notifyProc; /* <-- */
|
||
|
};
|
||
|
typedef struct ICARegisterEventNotificationPB ICARegisterEventNotificationPB;
|
||
|
|
||
|
|
||
|
struct ICAExtendedRegisterEventNotificationPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-> */
|
||
|
OSType extd; /* <-- */
|
||
|
ICACompletion notifyProc; /* <-- */
|
||
|
|
||
|
UInt32 rawEventType; /* -->*/
|
||
|
OSType eventType; /* <->*/
|
||
|
OSType eventClass; /* -->*/
|
||
|
UInt32 eventDataSize; /* -->*/
|
||
|
ICAEventDataCookie eventDataCookie; /* -->*/
|
||
|
ICAObject deviceObject; /* -->*/
|
||
|
};
|
||
|
typedef struct ICAExtendedRegisterEventNotificationPB ICAExtendedRegisterEventNotificationPB;
|
||
|
|
||
|
|
||
|
struct ICADownloadFilePB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
FSRef * dirFSRef; /* <-- */
|
||
|
UInt32 flags; /* <-- */
|
||
|
OSType fileType; /* <-- */
|
||
|
OSType fileCreator; /* <-- */
|
||
|
Fixed rotationAngle; /* <-- */
|
||
|
FSRef * fileFSRef; /* --> can be NULL*/
|
||
|
};
|
||
|
typedef struct ICADownloadFilePB ICADownloadFilePB;
|
||
|
|
||
|
|
||
|
struct ICACopyObjectPropertyDictionaryPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
CFDictionaryRef * theDict; /* --> */
|
||
|
};
|
||
|
typedef struct ICACopyObjectPropertyDictionaryPB ICACopyObjectPropertyDictionaryPB;
|
||
|
/*
|
||
|
|
||
|
NOTE: for all APIs - pass NULL as completion parameter to make a synchronous call
|
||
|
|
||
|
*/
|
||
|
/*
|
||
|
--------------- Object functions ---------------
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* ICAGetChildCount()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetChildCount(
|
||
|
ICAGetChildCountPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetNthChild()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetNthChild(
|
||
|
ICAGetNthChildPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetObjectInfo()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetObjectInfo(
|
||
|
ICAGetObjectInfoPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetParentOfObject()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetParentOfObject(
|
||
|
ICAGetParentOfObjectPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetRootOfObject()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetRootOfObject(
|
||
|
ICAGetRootOfObjectPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetObjectRefCon()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetObjectRefCon(
|
||
|
ICAGetObjectRefConPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICASetObjectRefCon()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICASetObjectRefCon(
|
||
|
ICASetObjectRefConPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
--------------- Property functions ---------------
|
||
|
*/
|
||
|
/*
|
||
|
* ICAGetPropertyCount()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetPropertyCount(
|
||
|
ICAGetPropertyCountPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetNthProperty()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetNthProperty(
|
||
|
ICAGetNthPropertyPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetPropertyByType()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetPropertyByType(
|
||
|
ICAGetPropertyByTypePB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetPropertyInfo()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetPropertyInfo(
|
||
|
ICAGetPropertyInfoPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetPropertyData()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetPropertyData(
|
||
|
ICAGetPropertyDataPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICASetPropertyData()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICASetPropertyData(
|
||
|
ICASetPropertyDataPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetParentOfProperty()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetParentOfProperty(
|
||
|
ICAGetParentOfPropertyPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetRootOfProperty()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetRootOfProperty(
|
||
|
ICAGetRootOfPropertyPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAGetPropertyRefCon()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetPropertyRefCon(
|
||
|
ICAGetPropertyRefConPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICASetPropertyRefCon()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICASetPropertyRefCon(
|
||
|
ICASetPropertyRefConPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
--------------- Device functions ---------------
|
||
|
*/
|
||
|
/*
|
||
|
* ICAGetDeviceList()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAGetDeviceList(
|
||
|
ICAGetDeviceListPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAObjectSendMessage()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAObjectSendMessage(
|
||
|
ICAObjectSendMessagePB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICARegisterEventNotification()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.1 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICARegisterEventNotification(
|
||
|
ICARegisterEventNotificationPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
------------------------------------------------
|
||
|
*/
|
||
|
/*
|
||
|
* ICADownloadFile()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.4 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICADownloadFile(
|
||
|
ICADownloadFilePB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICACopyObjectPropertyDictionary()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.4 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICACopyObjectPropertyDictionary(
|
||
|
ICACopyObjectPropertyDictionaryPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
--- scanner support ---------------------------------------------
|
||
|
*/
|
||
|
struct ICAScannerOpenSessionPB {
|
||
|
ICAHeader header;
|
||
|
ICAObject object; /* <-- */
|
||
|
ICAScannerSessionID sessionID; /* --> */
|
||
|
};
|
||
|
typedef struct ICAScannerOpenSessionPB ICAScannerOpenSessionPB;
|
||
|
|
||
|
|
||
|
struct ICAScannerCloseSessionPB {
|
||
|
ICAHeader header;
|
||
|
ICAScannerSessionID sessionID; /* <-- */
|
||
|
};
|
||
|
typedef struct ICAScannerCloseSessionPB ICAScannerCloseSessionPB;
|
||
|
|
||
|
|
||
|
struct ICAScannerInitializePB {
|
||
|
ICAHeader header;
|
||
|
ICAScannerSessionID sessionID; /* <-- */
|
||
|
};
|
||
|
typedef struct ICAScannerInitializePB ICAScannerInitializePB;
|
||
|
|
||
|
|
||
|
struct ICAScannerGetParametersPB {
|
||
|
ICAHeader header;
|
||
|
ICAScannerSessionID sessionID; /* <-- */
|
||
|
CFMutableDictionaryRef theDict; /* --> */
|
||
|
};
|
||
|
typedef struct ICAScannerGetParametersPB ICAScannerGetParametersPB;
|
||
|
|
||
|
|
||
|
struct ICAScannerSetParametersPB {
|
||
|
ICAHeader header;
|
||
|
ICAScannerSessionID sessionID; /* <-- */
|
||
|
CFMutableDictionaryRef theDict; /* <-> */
|
||
|
};
|
||
|
typedef struct ICAScannerSetParametersPB ICAScannerSetParametersPB;
|
||
|
|
||
|
|
||
|
struct ICAScannerStatusPB {
|
||
|
ICAHeader header;
|
||
|
ICAScannerSessionID sessionID; /* <-- */
|
||
|
UInt32 status; /* --> */
|
||
|
};
|
||
|
typedef struct ICAScannerStatusPB ICAScannerStatusPB;
|
||
|
|
||
|
|
||
|
struct ICAScannerStartPB {
|
||
|
ICAHeader header;
|
||
|
ICAScannerSessionID sessionID; /* <-- */
|
||
|
};
|
||
|
typedef struct ICAScannerStartPB ICAScannerStartPB;
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAScannerOpenSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.6 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAScannerOpenSession(
|
||
|
ICAScannerOpenSessionPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAScannerCloseSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.6 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAScannerCloseSession(
|
||
|
ICAScannerCloseSessionPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAScannerInitialize()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.6 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAScannerInitialize(
|
||
|
ICAScannerInitializePB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAScannerGetParameters()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.6 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAScannerGetParameters(
|
||
|
ICAScannerGetParametersPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAScannerSetParameters()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.6 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAScannerSetParameters(
|
||
|
ICAScannerSetParametersPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAScannerStatus()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.6 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAScannerStatus(
|
||
|
ICAScannerStatusPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
/*
|
||
|
* ICAScannerStart()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: in CarbonLib 1.6 and later
|
||
|
* Mac OS X: in version 10.1 and later
|
||
|
*/
|
||
|
EXTERN_API( OSErr )
|
||
|
ICAScannerStart(
|
||
|
ICAScannerStartPB * pb,
|
||
|
ICACompletion completion); /* can be NULL */
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_STRUCT_ALIGN
|
||
|
#pragma options align=reset
|
||
|
#elif PRAGMA_STRUCT_PACKPUSH
|
||
|
#pragma pack(pop)
|
||
|
#elif PRAGMA_STRUCT_PACK
|
||
|
#pragma pack()
|
||
|
#endif
|
||
|
|
||
|
#ifdef PRAGMA_IMPORT_OFF
|
||
|
#pragma import off
|
||
|
#elif PRAGMA_IMPORT
|
||
|
#pragma import reset
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif /* __ICAAPPLICATION__ */
|
||
|
|