summaryrefslogtreecommitdiff
path: root/common/quicktime_win32/QDOffscreen.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/quicktime_win32/QDOffscreen.h')
-rw-r--r--common/quicktime_win32/QDOffscreen.h507
1 files changed, 507 insertions, 0 deletions
diff --git a/common/quicktime_win32/QDOffscreen.h b/common/quicktime_win32/QDOffscreen.h
new file mode 100644
index 0000000..d6e95f7
--- /dev/null
+++ b/common/quicktime_win32/QDOffscreen.h
@@ -0,0 +1,507 @@
+/*
+ File: QDOffscreen.h
+
+ Contains: Quickdraw Offscreen GWorld Interfaces.
+
+ Version: QuickTime 7.3
+
+ Copyright: (c) 2007 (c) 1985-2003 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 __QDOFFSCREEN__
+#define __QDOFFSCREEN__
+
+#ifndef __MACERRORS__
+#include <MacErrors.h>
+#endif
+
+#ifndef __QUICKDRAW__
+#include <Quickdraw.h>
+#endif
+
+
+
+
+#if PRAGMA_ONCE
+#pragma once
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if PRAGMA_IMPORT
+#pragma import on
+#endif
+
+enum {
+ pixPurgeBit = 0,
+ noNewDeviceBit = 1,
+ useTempMemBit = 2,
+ keepLocalBit = 3,
+ useDistantHdwrMemBit = 4,
+ useLocalHdwrMemBit = 5,
+ pixelsPurgeableBit = 6,
+ pixelsLockedBit = 7,
+ mapPixBit = 16,
+ newDepthBit = 17,
+ alignPixBit = 18,
+ newRowBytesBit = 19,
+ reallocPixBit = 20,
+ clipPixBit = 28,
+ stretchPixBit = 29,
+ ditherPixBit = 30,
+ gwFlagErrBit = 31
+};
+
+enum {
+ pixPurge = 1L << pixPurgeBit,
+ noNewDevice = 1L << noNewDeviceBit,
+ useTempMem = 1L << useTempMemBit,
+ keepLocal = 1L << keepLocalBit,
+ useDistantHdwrMem = 1L << useDistantHdwrMemBit,
+ useLocalHdwrMem = 1L << useLocalHdwrMemBit,
+ pixelsPurgeable = 1L << pixelsPurgeableBit,
+ pixelsLocked = 1L << pixelsLockedBit,
+ kAllocDirectDrawSurface = 1L << 14,
+ mapPix = 1L << mapPixBit,
+ newDepth = 1L << newDepthBit,
+ alignPix = 1L << alignPixBit,
+ newRowBytes = 1L << newRowBytesBit,
+ reallocPix = 1L << reallocPixBit,
+ clipPix = 1L << clipPixBit,
+ stretchPix = 1L << stretchPixBit,
+ ditherPix = 1L << ditherPixBit,
+ gwFlagErr = 1L << gwFlagErrBit
+};
+
+typedef unsigned long GWorldFlags;
+/* Type definition of a GWorldPtr */
+typedef CGrafPtr GWorldPtr;
+/*
+ * NewGWorld()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( QDErr )
+NewGWorld(
+ GWorldPtr * offscreenGWorld,
+ short PixelDepth,
+ const Rect * boundsRect,
+ CTabHandle cTable, /* can be NULL */
+ GDHandle aGDevice, /* can be NULL */
+ GWorldFlags flags) FOURWORDINLINE(0x203C, 0x0016, 0x0000, 0xAB1D);
+
+
+/* GDevice attribute bits for Carbon and QuickTime 3.0*/
+enum {
+ deviceIsIndirect = (1L << 0),
+ deviceNeedsLock = (1L << 1),
+ deviceIsStatic = (1L << 2),
+ deviceIsExternalBuffer = (1L << 3),
+ deviceIsDDSurface = (1L << 4),
+ deviceIsDCISurface = (1L << 5),
+ deviceIsGDISurface = (1L << 6),
+ deviceIsAScreen = (1L << 7),
+ deviceIsOverlaySurface = (1L << 8),
+ pixMapIsDoubleBuffered = (1L << 9)
+};
+
+#if TARGET_OS_WIN32
+#if CALL_NOT_IN_CARBON
+/*
+ * GetGDeviceSurface()
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: not available
+ */
+EXTERN_API( void * )
+GetGDeviceSurface(GDHandle gdh);
+
+
+/*
+ * GetGDeviceAttributes()
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: not available
+ */
+EXTERN_API( unsigned long )
+GetGDeviceAttributes(GDHandle gdh);
+
+
+/* to allocate non-mac-rgb GWorlds use QTNewGWorld (ImageCompression.h) */
+/*
+ * NewGWorldFromHBITMAP()
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: not available
+ * Mac OS X: not available
+ */
+EXTERN_API( QDErr )
+NewGWorldFromHBITMAP(
+ GWorldPtr * offscreenGWorld,
+ CTabHandle cTable,
+ GDHandle aGDevice,
+ GWorldFlags flags,
+ void * newHBITMAP,
+ void * newHDC);
+
+
+#endif /* CALL_NOT_IN_CARBON */
+
+#endif /* TARGET_OS_WIN32 */
+
+/*
+ * NewGWorldFromPtr()
+ *
+ * Availability:
+ * Non-Carbon CFM: not available
+ * CarbonLib: in CarbonLib 1.1 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( QDErr )
+NewGWorldFromPtr(
+ GWorldPtr * offscreenGWorld,
+ unsigned long PixelFormat,
+ const Rect * boundsRect,
+ CTabHandle cTable, /* can be NULL */
+ GDHandle aGDevice, /* can be NULL */
+ GWorldFlags flags,
+ Ptr newBuffer,
+ long rowBytes);
+
+
+/*
+ * LockPixels()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( Boolean )
+LockPixels(PixMapHandle pm) FOURWORDINLINE(0x203C, 0x0004, 0x0001, 0xAB1D);
+
+
+/*
+ * UnlockPixels()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+UnlockPixels(PixMapHandle pm) FOURWORDINLINE(0x203C, 0x0004, 0x0002, 0xAB1D);
+
+
+/*
+ * UpdateGWorld()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( GWorldFlags )
+UpdateGWorld(
+ GWorldPtr * offscreenGWorld,
+ short pixelDepth,
+ const Rect * boundsRect,
+ CTabHandle cTable,
+ GDHandle aGDevice, /* can be NULL */
+ GWorldFlags flags) FOURWORDINLINE(0x203C, 0x0016, 0x0003, 0xAB1D);
+
+
+/*
+ * DisposeGWorld()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+DisposeGWorld(GWorldPtr offscreenGWorld) FOURWORDINLINE(0x203C, 0x0004, 0x0004, 0xAB1D);
+
+
+/*
+ * GetGWorld()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+GetGWorld(
+ CGrafPtr * port,
+ GDHandle * gdh) FOURWORDINLINE(0x203C, 0x0008, 0x0005, 0xAB1D);
+
+
+/*
+ * SetGWorld()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+SetGWorld(
+ CGrafPtr port,
+ GDHandle gdh) FOURWORDINLINE(0x203C, 0x0008, 0x0006, 0xAB1D);
+
+
+/*
+ * CTabChanged()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+CTabChanged(CTabHandle ctab) FOURWORDINLINE(0x203C, 0x0004, 0x0007, 0xAB1D);
+
+
+/*
+ * PixPatChanged()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+PixPatChanged(PixPatHandle ppat) FOURWORDINLINE(0x203C, 0x0004, 0x0008, 0xAB1D);
+
+
+/*
+ * PortChanged()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+PortChanged(GrafPtr port) FOURWORDINLINE(0x203C, 0x0004, 0x0009, 0xAB1D);
+
+
+/*
+ * GDeviceChanged()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+GDeviceChanged(GDHandle gdh) FOURWORDINLINE(0x203C, 0x0004, 0x000A, 0xAB1D);
+
+
+/*
+ * AllowPurgePixels()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+AllowPurgePixels(PixMapHandle pm) FOURWORDINLINE(0x203C, 0x0004, 0x000B, 0xAB1D);
+
+
+/*
+ * NoPurgePixels()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+NoPurgePixels(PixMapHandle pm) FOURWORDINLINE(0x203C, 0x0004, 0x000C, 0xAB1D);
+
+
+/*
+ * GetPixelsState()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( GWorldFlags )
+GetPixelsState(PixMapHandle pm) FOURWORDINLINE(0x203C, 0x0004, 0x000D, 0xAB1D);
+
+
+/*
+ * SetPixelsState()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+SetPixelsState(
+ PixMapHandle pm,
+ GWorldFlags state) FOURWORDINLINE(0x203C, 0x0008, 0x000E, 0xAB1D);
+
+
+/*
+ * GetPixBaseAddr()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( Ptr )
+GetPixBaseAddr(PixMapHandle pm) FOURWORDINLINE(0x203C, 0x0004, 0x000F, 0xAB1D);
+
+
+/*
+ * GetPixRowBytes()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 8.5 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( long )
+GetPixRowBytes(PixMapHandle pm) FOURWORDINLINE(0x203C, 0x0004, 0x0018, 0xAB1D);
+
+
+/*
+ * NewScreenBuffer()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( QDErr )
+NewScreenBuffer(
+ const Rect * globalRect,
+ Boolean purgeable,
+ GDHandle * gdh,
+ PixMapHandle * offscreenPixMap) FOURWORDINLINE(0x203C, 0x000E, 0x0010, 0xAB1D);
+
+
+/*
+ * DisposeScreenBuffer()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( void )
+DisposeScreenBuffer(PixMapHandle offscreenPixMap) FOURWORDINLINE(0x203C, 0x0004, 0x0011, 0xAB1D);
+
+
+/*
+ * GetGWorldDevice()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( GDHandle )
+GetGWorldDevice(GWorldPtr offscreenGWorld) FOURWORDINLINE(0x203C, 0x0004, 0x0012, 0xAB1D);
+
+
+/*
+ * QDDone()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( Boolean )
+QDDone(GrafPtr port) FOURWORDINLINE(0x203C, 0x0004, 0x0013, 0xAB1D);
+
+
+/*
+ * OffscreenVersion()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( long )
+OffscreenVersion(void) TWOWORDINLINE(0x7014, 0xAB1D);
+
+
+/*
+ * NewTempScreenBuffer()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( QDErr )
+NewTempScreenBuffer(
+ const Rect * globalRect,
+ Boolean purgeable,
+ GDHandle * gdh,
+ PixMapHandle * offscreenPixMap) FOURWORDINLINE(0x203C, 0x000E, 0x0015, 0xAB1D);
+
+
+/*
+ * PixMap32Bit()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( Boolean )
+PixMap32Bit(PixMapHandle pmHandle) FOURWORDINLINE(0x203C, 0x0004, 0x0016, 0xAB1D);
+
+
+/*
+ * GetGWorldPixMap()
+ *
+ * Availability:
+ * Non-Carbon CFM: in InterfaceLib 7.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( PixMapHandle )
+GetGWorldPixMap(GWorldPtr offscreenGWorld) FOURWORDINLINE(0x203C, 0x0004, 0x0017, 0xAB1D);
+
+
+
+#ifdef PRAGMA_IMPORT_OFF
+#pragma import off
+#elif PRAGMA_IMPORT
+#pragma import reset
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __QDOFFSCREEN__ */
+