summaryrefslogtreecommitdiff
path: root/common/quicktime_win32/TextEncodingConverter.h
diff options
context:
space:
mode:
authorFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
committerFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
commit3bf9df6b2785fa6d951086978a3e66f49427166a (patch)
tree2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /common/quicktime_win32/TextEncodingConverter.h
downloadarchived-source-engine-2018-hl2-src-master.tar.xz
archived-source-engine-2018-hl2-src-master.zip
Diffstat (limited to 'common/quicktime_win32/TextEncodingConverter.h')
-rw-r--r--common/quicktime_win32/TextEncodingConverter.h573
1 files changed, 573 insertions, 0 deletions
diff --git a/common/quicktime_win32/TextEncodingConverter.h b/common/quicktime_win32/TextEncodingConverter.h
new file mode 100644
index 0000000..bf7e558
--- /dev/null
+++ b/common/quicktime_win32/TextEncodingConverter.h
@@ -0,0 +1,573 @@
+/*
+ File: TextEncodingConverter.h
+
+ Contains: Text Encoding Conversion Interfaces.
+
+ Version: QuickTime 7.3
+
+ Copyright: (c) 2007 (c) 1994-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 __TEXTENCODINGCONVERTER__
+#define __TEXTENCODINGCONVERTER__
+
+#ifndef __MACTYPES__
+#include <MacTypes.h>
+#endif
+
+#ifndef __TEXTCOMMON__
+#include <TextCommon.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 OSType TECPluginSignature;
+typedef UInt32 TECPluginVersion;
+/* plugin signatures */
+enum {
+ kTECSignature = FOUR_CHAR_CODE('encv'),
+ kTECUnicodePluginSignature = FOUR_CHAR_CODE('puni'),
+ kTECJapanesePluginSignature = FOUR_CHAR_CODE('pjpn'),
+ kTECChinesePluginSignature = FOUR_CHAR_CODE('pzho'),
+ kTECKoreanPluginSignature = FOUR_CHAR_CODE('pkor')
+};
+
+
+/* converter object reference */
+typedef struct OpaqueTECObjectRef* TECObjectRef;
+typedef struct OpaqueTECSnifferObjectRef* TECSnifferObjectRef;
+typedef OSType TECPluginSig;
+struct TECConversionInfo {
+ TextEncoding sourceEncoding;
+ TextEncoding destinationEncoding;
+ UInt16 reserved1;
+ UInt16 reserved2;
+};
+typedef struct TECConversionInfo TECConversionInfo;
+/* return number of encodings types supported by user's configuraton of the encoding converter */
+/*
+ * TECCountAvailableTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCountAvailableTextEncodings(ItemCount * numberEncodings);
+
+
+/* fill in an array of type TextEncoding passed in by the user with types of encodings the current configuration of the encoder can handle. */
+/*
+ * TECGetAvailableTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetAvailableTextEncodings(
+ TextEncoding availableEncodings[],
+ ItemCount maxAvailableEncodings,
+ ItemCount * actualAvailableEncodings);
+
+
+/* return number of from-to encoding conversion pairs supported */
+/*
+ * TECCountDirectTextEncodingConversions()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCountDirectTextEncodingConversions(ItemCount * numberOfEncodings);
+
+
+/* fill in an array of type TextEncodingPair passed in by the user with types of encoding pairs the current configuration of the encoder can handle. */
+/*
+ * TECGetDirectTextEncodingConversions()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetDirectTextEncodingConversions(
+ TECConversionInfo availableConversions[],
+ ItemCount maxAvailableConversions,
+ ItemCount * actualAvailableConversions);
+
+
+/* return number of encodings a given encoding can be converter into */
+/*
+ * TECCountDestinationTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCountDestinationTextEncodings(
+ TextEncoding inputEncoding,
+ ItemCount * numberOfEncodings);
+
+
+/* fill in an array of type TextEncodingPair passed in by the user with types of encodings pairs the current configuration of the encoder can handle. */
+/*
+ * TECGetDestinationTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetDestinationTextEncodings(
+ TextEncoding inputEncoding,
+ TextEncoding destinationEncodings[],
+ ItemCount maxDestinationEncodings,
+ ItemCount * actualDestinationEncodings);
+
+
+/* get info about a text encoding */
+/*
+ * TECGetTextEncodingInternetName()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetTextEncodingInternetName(
+ TextEncoding textEncoding,
+ Str255 encodingName);
+
+
+/*
+ * TECGetTextEncodingFromInternetName()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetTextEncodingFromInternetName(
+ TextEncoding * textEncoding,
+ ConstStr255Param encodingName);
+
+
+/* create/dispose converters */
+/*
+ * TECCreateConverter()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCreateConverter(
+ TECObjectRef * newEncodingConverter,
+ TextEncoding inputEncoding,
+ TextEncoding outputEncoding);
+
+
+/*
+ * TECCreateConverterFromPath()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCreateConverterFromPath(
+ TECObjectRef * newEncodingConverter,
+ const TextEncoding inPath[],
+ ItemCount inEncodings);
+
+
+/*
+ * TECDisposeConverter()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECDisposeConverter(TECObjectRef newEncodingConverter);
+
+
+/* convert text encodings */
+/*
+ * TECClearConverterContextInfo()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECClearConverterContextInfo(TECObjectRef encodingConverter);
+
+
+/*
+ * TECConvertText()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECConvertText(
+ TECObjectRef encodingConverter,
+ ConstTextPtr inputBuffer,
+ ByteCount inputBufferLength,
+ ByteCount * actualInputLength,
+ TextPtr outputBuffer,
+ ByteCount outputBufferLength,
+ ByteCount * actualOutputLength);
+
+
+/*
+ * TECFlushText()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECFlushText(
+ TECObjectRef encodingConverter,
+ TextPtr outputBuffer,
+ ByteCount outputBufferLength,
+ ByteCount * actualOutputLength);
+
+
+/* one-to-many routines */
+/*
+ * TECCountSubTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCountSubTextEncodings(
+ TextEncoding inputEncoding,
+ ItemCount * numberOfEncodings);
+
+
+/*
+ * TECGetSubTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetSubTextEncodings(
+ TextEncoding inputEncoding,
+ TextEncoding subEncodings[],
+ ItemCount maxSubEncodings,
+ ItemCount * actualSubEncodings);
+
+
+/*
+ * TECGetEncodingList()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.1 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetEncodingList(
+ TECObjectRef encodingConverter,
+ ItemCount * numEncodings,
+ Handle * encodingList);
+
+
+/*
+ * TECCreateOneToManyConverter()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCreateOneToManyConverter(
+ TECObjectRef * newEncodingConverter,
+ TextEncoding inputEncoding,
+ ItemCount numOutputEncodings,
+ const TextEncoding outputEncodings[]);
+
+
+/*
+ * TECConvertTextToMultipleEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECConvertTextToMultipleEncodings(
+ TECObjectRef encodingConverter,
+ ConstTextPtr inputBuffer,
+ ByteCount inputBufferLength,
+ ByteCount * actualInputLength,
+ TextPtr outputBuffer,
+ ByteCount outputBufferLength,
+ ByteCount * actualOutputLength,
+ TextEncodingRun outEncodingsBuffer[],
+ ItemCount maxOutEncodingRuns,
+ ItemCount * actualOutEncodingRuns);
+
+
+/*
+ * TECFlushMultipleEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECFlushMultipleEncodings(
+ TECObjectRef encodingConverter,
+ TextPtr outputBuffer,
+ ByteCount outputBufferLength,
+ ByteCount * actualOutputLength,
+ TextEncodingRun outEncodingsBuffer[],
+ ItemCount maxOutEncodingRuns,
+ ItemCount * actualOutEncodingRuns);
+
+
+/* international internet info */
+/*
+ * TECCountWebTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCountWebTextEncodings(
+ RegionCode locale,
+ ItemCount * numberEncodings);
+
+
+/*
+ * TECGetWebTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetWebTextEncodings(
+ RegionCode locale,
+ TextEncoding availableEncodings[],
+ ItemCount maxAvailableEncodings,
+ ItemCount * actualAvailableEncodings);
+
+
+/*
+ * TECCountMailTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCountMailTextEncodings(
+ RegionCode locale,
+ ItemCount * numberEncodings);
+
+
+/*
+ * TECGetMailTextEncodings()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetMailTextEncodings(
+ RegionCode locale,
+ TextEncoding availableEncodings[],
+ ItemCount maxAvailableEncodings,
+ ItemCount * actualAvailableEncodings);
+
+
+/* examine text encodings */
+/*
+ * TECCountAvailableSniffers()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCountAvailableSniffers(ItemCount * numberOfEncodings);
+
+
+/*
+ * TECGetAvailableSniffers()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECGetAvailableSniffers(
+ TextEncoding availableSniffers[],
+ ItemCount maxAvailableSniffers,
+ ItemCount * actualAvailableSniffers);
+
+
+/*
+ * TECCreateSniffer()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECCreateSniffer(
+ TECSnifferObjectRef * encodingSniffer,
+ TextEncoding testEncodings[],
+ ItemCount numTextEncodings);
+
+
+/*
+ * TECSniffTextEncoding()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECSniffTextEncoding(
+ TECSnifferObjectRef encodingSniffer,
+ TextPtr inputBuffer,
+ ByteCount inputBufferLength,
+ TextEncoding testEncodings[],
+ ItemCount numTextEncodings,
+ ItemCount numErrsArray[],
+ ItemCount maxErrs,
+ ItemCount numFeaturesArray[],
+ ItemCount maxFeatures);
+
+
+/*
+ * TECDisposeSniffer()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECDisposeSniffer(TECSnifferObjectRef encodingSniffer);
+
+
+/*
+ * TECClearSnifferContextInfo()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.2 and later
+ * CarbonLib: in CarbonLib 1.0 and later
+ * Mac OS X: in version 10.0 and later
+ */
+EXTERN_API( OSStatus )
+TECClearSnifferContextInfo(TECSnifferObjectRef encodingSniffer);
+
+
+#if CALL_NOT_IN_CARBON
+/*
+ * TECSetBasicOptions()
+ *
+ * Availability:
+ * Non-Carbon CFM: in TextEncodingConverter 1.5 and later
+ * CarbonLib: not available
+ * Mac OS X: not available
+ */
+EXTERN_API( OSStatus )
+TECSetBasicOptions(
+ TECObjectRef encodingConverter,
+ OptionBits controlFlags);
+
+
+#endif /* CALL_NOT_IN_CARBON */
+
+
+
+#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 /* __TEXTENCODINGCONVERTER__ */
+