summaryrefslogtreecommitdiff
path: root/common/quicktime_win32/ICADevice.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/quicktime_win32/ICADevice.h')
-rw-r--r--common/quicktime_win32/ICADevice.h190
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__ */
+