diff options
Diffstat (limited to 'common/quicktime_win32/ICADevice.h')
| -rw-r--r-- | common/quicktime_win32/ICADevice.h | 190 |
1 files changed, 190 insertions, 0 deletions
diff --git a/common/quicktime_win32/ICADevice.h b/common/quicktime_win32/ICADevice.h new file mode 100644 index 0000000..465314c --- /dev/null +++ b/common/quicktime_win32/ICADevice.h @@ -0,0 +1,190 @@ +/* + File: ICADevice.h + + Contains: Low level Image Capture device 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 __ICADEVICE__ +#define __ICADEVICE__ + +#ifndef __ICAAPPLICATION__ +#include <ICAApplication.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 + +/* +--------------- Completion Procs --------------- +*/ +/* + + NOTE: the parameter for the completion proc (ICDHeader*) has to be casted to the appropriate type + e.g. (ICD_BuildObjectChildrenPB*), ... + +*/ +typedef struct ICDHeader ICDHeader; +typedef CALLBACK_API_C( void , ICDCompletion )(ICDHeader * pb); +/* +--------------- ICDHeader --------------- +*/ +struct ICDHeader { + OSErr err; /* --> */ + UInt32 refcon; /* <-- */ +}; + +/* +--------------- Object parameter blocks --------------- +*/ +struct ICD_NewObjectPB { + ICDHeader header; + + ICAObject parentObject; /* <-- */ + ICAObjectInfo objectInfo; /* <-- */ + + ICAObject object; /* --> */ +}; +typedef struct ICD_NewObjectPB ICD_NewObjectPB; +struct ICD_DisposeObjectPB { + ICDHeader header; + + ICAObject object; /* <-- */ +}; +typedef struct ICD_DisposeObjectPB ICD_DisposeObjectPB; +/* +--------------- Property parameter blocks --------------- +*/ +struct ICD_NewPropertyPB { + ICDHeader header; + + ICAObject object; /* <-- */ + ICAPropertyInfo propertyInfo; /* <-- */ + + ICAProperty property; /* --> */ +}; +typedef struct ICD_NewPropertyPB ICD_NewPropertyPB; +struct ICD_DisposePropertyPB { + ICDHeader header; + + ICAProperty property; /* <-- */ +}; +typedef struct ICD_DisposePropertyPB ICD_DisposePropertyPB; +/* + + NOTE: for all APIs - pass NULL as completion parameter to make a synchronous call + +*/ + +/* +--------------- Object utilities for device libraries --------------- +*/ +/* + * ICDNewObject() + * + * Availability: + * Non-Carbon CFM: in ImageCaptureLib 1.0 and later + * CarbonLib: in CarbonLib 1.1 and later + * Mac OS X: in version 10.0 and later + */ +EXTERN_API( OSErr ) +ICDNewObject( + ICD_NewObjectPB * pb, + ICDCompletion completion); /* can be NULL */ + + +/* + * ICDDisposeObject() + * + * Availability: + * Non-Carbon CFM: in ImageCaptureLib 1.0 and later + * CarbonLib: in CarbonLib 1.1 and later + * Mac OS X: in version 10.0 and later + */ +EXTERN_API( OSErr ) +ICDDisposeObject( + ICD_DisposeObjectPB * pb, + ICDCompletion completion); /* can be NULL */ + + +/* + * ICDNewProperty() + * + * Availability: + * Non-Carbon CFM: in ImageCaptureLib 1.0 and later + * CarbonLib: in CarbonLib 1.1 and later + * Mac OS X: in version 10.0 and later + */ +EXTERN_API( OSErr ) +ICDNewProperty( + ICD_NewPropertyPB * pb, + ICDCompletion completion); /* can be NULL */ + + +/* + * ICDDisposeProperty() + * + * Availability: + * Non-Carbon CFM: in ImageCaptureLib 1.0 and later + * CarbonLib: in CarbonLib 1.1 and later + * Mac OS X: in version 10.0 and later + */ +EXTERN_API( OSErr ) +ICDDisposeProperty( + ICD_DisposePropertyPB * pb, + ICDCompletion 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 /* __ICADEVICE__ */ + |