~ubuntu-branches/debian/lenny/fpc/lenny

« back to all changes in this revision

Viewing changes to fpcsrc/packages/extra/univint/Movies.pas

  • Committer: Bazaar Package Importer
  • Author(s): Mazen Neifer, Torsten Werner, Mazen Neifer
  • Date: 2008-05-17 17:12:11 UTC
  • mfrom: (3.1.9 intrepid)
  • Revision ID: james.westby@ubuntu.com-20080517171211-9qi33xhd9evfa0kg
Tags: 2.2.0-dfsg1-9
[ Torsten Werner ]
* Add Mazen Neifer to Uploaders field.

[ Mazen Neifer ]
* Moved FPC sources into a version dependent directory from /usr/share/fpcsrc
  to /usr/share/fpcsrc/${FPCVERSION}. This allow installing more than on FPC
  release.
* Fixed far call issue in compiler preventing building huge binearies.
  (closes: #477743)
* Updated building dependencies, recomennded and suggested packages.
* Moved fppkg to fp-utils as it is just a helper tool and is not required by
  compiler.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
{
 
2
     File:       Movies.p
 
3
 
 
4
     Contains:   QuickTime Interfaces.
 
5
 
 
6
     Version:    Technology: QuickTime 6.0
 
7
                 Release:    Universal Interfaces 3.4.2
 
8
 
 
9
     Copyright:  � 1990-2002 by Apple Computer, Inc., all rights reserved
 
10
 
 
11
     Bugs?:      For bug reports, consult the following page on
 
12
                 the World Wide Web:
 
13
 
 
14
                     http://www.freepascal.org/bugs.html
 
15
 
 
16
}
 
17
 
 
18
 
 
19
{
 
20
    Modified for use with Free Pascal
 
21
    Version 200
 
22
    Please report any bugs to <gpc@microbizz.nl>
 
23
}
 
24
 
 
25
{$mode macpas}
 
26
{$packenum 1}
 
27
{$macro on}
 
28
{$inline on}
 
29
{$CALLING MWPASCAL}
 
30
 
 
31
unit Movies;
 
32
interface
 
33
{$setc UNIVERSAL_INTERFACES_VERSION := $0342}
 
34
{$setc GAP_INTERFACES_VERSION := $0200}
 
35
 
 
36
{$ifc not defined USE_CFSTR_CONSTANT_MACROS}
 
37
    {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
 
38
{$endc}
 
39
 
 
40
{$ifc defined CPUPOWERPC and defined CPUI386}
 
41
        {$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
 
42
{$endc}
 
43
{$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
 
44
        {$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
 
45
{$endc}
 
46
 
 
47
{$ifc not defined __ppc__ and defined CPUPOWERPC}
 
48
        {$setc __ppc__ := 1}
 
49
{$elsec}
 
50
        {$setc __ppc__ := 0}
 
51
{$endc}
 
52
{$ifc not defined __i386__ and defined CPUI386}
 
53
        {$setc __i386__ := 1}
 
54
{$elsec}
 
55
        {$setc __i386__ := 0}
 
56
{$endc}
 
57
 
 
58
{$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
 
59
        {$error Conflicting definitions for __ppc__ and __i386__}
 
60
{$endc}
 
61
 
 
62
{$ifc defined __ppc__ and __ppc__}
 
63
        {$setc TARGET_CPU_PPC := TRUE}
 
64
        {$setc TARGET_CPU_X86 := FALSE}
 
65
{$elifc defined __i386__ and __i386__}
 
66
        {$setc TARGET_CPU_PPC := FALSE}
 
67
        {$setc TARGET_CPU_X86 := TRUE}
 
68
{$elsec}
 
69
        {$error Neither __ppc__ nor __i386__ is defined.}
 
70
{$endc}
 
71
{$setc TARGET_CPU_PPC_64 := FALSE}
 
72
 
 
73
{$ifc defined FPC_BIG_ENDIAN}
 
74
        {$setc TARGET_RT_BIG_ENDIAN := TRUE}
 
75
        {$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
 
76
{$elifc defined FPC_LITTLE_ENDIAN}
 
77
        {$setc TARGET_RT_BIG_ENDIAN := FALSE}
 
78
        {$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
 
79
{$elsec}
 
80
        {$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
 
81
{$endc}
 
82
{$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
 
83
{$setc CALL_NOT_IN_CARBON := FALSE}
 
84
{$setc OLDROUTINENAMES := FALSE}
 
85
{$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
 
86
{$setc OPAQUE_UPP_TYPES := TRUE}
 
87
{$setc OTCARBONAPPLICATION := TRUE}
 
88
{$setc OTKERNEL := FALSE}
 
89
{$setc PM_USE_SESSION_APIS := TRUE}
 
90
{$setc TARGET_API_MAC_CARBON := TRUE}
 
91
{$setc TARGET_API_MAC_OS8 := FALSE}
 
92
{$setc TARGET_API_MAC_OSX := TRUE}
 
93
{$setc TARGET_CARBON := TRUE}
 
94
{$setc TARGET_CPU_68K := FALSE}
 
95
{$setc TARGET_CPU_MIPS := FALSE}
 
96
{$setc TARGET_CPU_SPARC := FALSE}
 
97
{$setc TARGET_OS_MAC := TRUE}
 
98
{$setc TARGET_OS_UNIX := FALSE}
 
99
{$setc TARGET_OS_WIN32 := FALSE}
 
100
{$setc TARGET_RT_MAC_68881 := FALSE}
 
101
{$setc TARGET_RT_MAC_CFM := FALSE}
 
102
{$setc TARGET_RT_MAC_MACHO := TRUE}
 
103
{$setc TYPED_FUNCTION_POINTERS := TRUE}
 
104
{$setc TYPE_BOOL := FALSE}
 
105
{$setc TYPE_EXTENDED := FALSE}
 
106
{$setc TYPE_LONGLONG := TRUE}
 
107
uses MacTypes,Files,QDOffscreen,TextEdit,Controls,Dialogs,Quickdraw,Aliases,Events,Menus,Components,Sound,ImageCompression;
 
108
 
 
109
 
 
110
{$ALIGN MAC68K}
 
111
 
 
112
 
 
113
{  "kFix1" is defined in FixMath as "fixed1"  }
 
114
{ error codes are in Errors.[haa] }
 
115
{ gestalt codes are in Gestalt.[hpa] }
 
116
 
 
117
const
 
118
        MovieFileType                           = $4D6F6F56 (* 'MooV' *);
 
119
        MovieScrapType                          = $6D6F6F76 (* 'moov' *);
 
120
 
 
121
        MovieResourceType                       = $6D6F6F76 (* 'moov' *);
 
122
        MovieForwardPointerResourceType = $666F7265 (* 'fore' *);
 
123
        MovieBackwardPointerResourceType = $6261636B (* 'back' *);
 
124
 
 
125
        MovieResourceAtomType           = $6D6F6F76 (* 'moov' *);
 
126
        MovieDataAtomType                       = $6D646174 (* 'mdat' *);
 
127
        FreeAtomType                            = $66726565 (* 'free' *);
 
128
        SkipAtomType                            = $736B6970 (* 'skip' *);
 
129
        WideAtomPlaceholderType         = $77696465 (* 'wide' *);
 
130
 
 
131
        MediaHandlerType                        = $6D686C72 (* 'mhlr' *);
 
132
        DataHandlerType                         = $64686C72 (* 'dhlr' *);
 
133
 
 
134
        VideoMediaType                          = $76696465 (* 'vide' *);
 
135
        SoundMediaType                          = $736F756E (* 'soun' *);
 
136
        TextMediaType                           = $74657874 (* 'text' *);
 
137
        BaseMediaType                           = $676E7263 (* 'gnrc' *);
 
138
        MPEGMediaType                           = $4D504547 (* 'MPEG' *);
 
139
        MusicMediaType                          = $6D757369 (* 'musi' *);
 
140
        TimeCodeMediaType                       = $746D6364 (* 'tmcd' *);
 
141
        SpriteMediaType                         = $73707274 (* 'sprt' *);
 
142
        FlashMediaType                          = $666C7368 (* 'flsh' *);
 
143
        MovieMediaType                          = $6D6F6F76 (* 'moov' *);
 
144
        TweenMediaType                          = $7477656E (* 'twen' *);
 
145
        ThreeDeeMediaType                       = $71643364 (* 'qd3d' *);
 
146
        SkinMediaType                           = $736B696E (* 'skin' *);
 
147
        HandleDataHandlerSubType        = $686E646C (* 'hndl' *);
 
148
        PointerDataHandlerSubType       = $70747220 (* 'ptr ' *);
 
149
        NullDataHandlerSubType          = $6E756C6C (* 'null' *);
 
150
        ResourceDataHandlerSubType      = $72737263 (* 'rsrc' *);
 
151
        URLDataHandlerSubType           = $75726C20 (* 'url ' *);
 
152
        WiredActionHandlerType          = $77697265 (* 'wire' *);
 
153
 
 
154
        VisualMediaCharacteristic       = $65796573 (* 'eyes' *);
 
155
        AudioMediaCharacteristic        = $65617273 (* 'ears' *);
 
156
        kCharacteristicCanSendVideo     = $76736E64 (* 'vsnd' *);
 
157
        kCharacteristicProvidesActions = $6163746E (* 'actn' *);
 
158
        kCharacteristicNonLinear        = $6E6F6E6C (* 'nonl' *);
 
159
        kCharacteristicCanStep          = $73746570 (* 'step' *);
 
160
        kCharacteristicHasNoDuration = $6E6F7469 (* 'noti' *);
 
161
        kCharacteristicHasSkinData      = $736B696E (* 'skin' *);
 
162
        kCharacteristicProvidesKeyFocus = $6B657966 (* 'keyf' *);
 
163
 
 
164
        kUserDataMovieControllerType = $63747970 (* 'ctyp' *);
 
165
        kUserDataName                           = $6E616D65 (* 'name' *);
 
166
        kUserDataTextAlbum                      = $C2A9616C (* '�alb' *);
 
167
        kUserDataTextArtist                     = $C2A94152 (* '�ART' *);
 
168
        kUserDataTextAuthor                     = $C2A96175 (* '�aut' *);
 
169
        kUserDataTextChapter            = $C2A96368 (* '�chp' *);
 
170
        kUserDataTextComment            = $C2A9636D (* '�cmt' *);
 
171
        kUserDataTextComposer           = $C2A9636F (* '�com' *);
 
172
        kUserDataTextCopyright          = $C2A96370 (* '�cpy' *);
 
173
        kUserDataTextCreationDate       = $C2A96461 (* '�day' *);
 
174
        kUserDataTextDescription        = $C2A96465 (* '�des' *);
 
175
        kUserDataTextDirector           = $C2A96469 (* '�dir' *);
 
176
        kUserDataTextDisclaimer         = $C2A96469 (* '�dis' *);
 
177
        kUserDataTextEncodedBy          = $C2A9656E (* '�enc' *);
 
178
        kUserDataTextFullName           = $C2A96E61 (* '�nam' *);
 
179
        kUserDataTextGenre                      = $C2A96765 (* '�gen' *);
 
180
        kUserDataTextHostComputer       = $C2A96873 (* '�hst' *);
 
181
        kUserDataTextInformation        = $C2A9696E (* '�inf' *);
 
182
        kUserDataTextKeywords           = $C2A96B65 (* '�key' *);
 
183
        kUserDataTextMake                       = $C2A96D61 (* '�mak' *);
 
184
        kUserDataTextModel                      = $C2A96D6F (* '�mod' *);
 
185
        kUserDataTextOriginalArtist     = $C2A96F70 (* '�ope' *);
 
186
        kUserDataTextOriginalFormat     = $C2A9666D (* '�fmt' *);
 
187
        kUserDataTextOriginalSource     = $C2A97372 (* '�src' *);
 
188
        kUserDataTextPerformers         = $C2A97072 (* '�prf' *);
 
189
        kUserDataTextProducer           = $C2A97072 (* '�prd' *);
 
190
        kUserDataTextProduct            = $C2A95052 (* '�PRD' *);
 
191
        kUserDataTextSoftware           = $C2A97377 (* '�swr' *);
 
192
        kUserDataTextSpecialPlaybackRequirements = $C2A97265 (* '�req' *);
 
193
        kUserDataTextTrack                      = $C2A97472 (* '�trk' *);
 
194
        kUserDataTextWarning            = $C2A97772 (* '�wrn' *);
 
195
        kUserDataTextWriter                     = $C2A97772 (* '�wrt' *);
 
196
        kUserDataTextURLLink            = $C2A97572 (* '�url' *);
 
197
        kUserDataTextEditDate1          = $C2A96564 (* '�ed1' *);
 
198
 
 
199
        kUserDataUnicodeBit                     = $00000080;
 
200
 
 
201
        DoTheRightThing                         = 0;
 
202
 
 
203
 
 
204
type
 
205
        MovieRecordPtr = ^MovieRecord;
 
206
        MovieRecord = record
 
207
                data:                                   array [0..0] of SInt32;
 
208
        end;
 
209
 
 
210
        Movie                                                           = ^MovieRecord;
 
211
        Movie_GAP_Private_field_type_fix        = Movie; { used as field type when a record declaration contains a Movie field identifier }
 
212
        MoviePtr                                                        = ^Movie;
 
213
        TrackRecordPtr = ^TrackRecord;
 
214
        TrackRecord = record
 
215
                data:                                   array [0..0] of SInt32;
 
216
        end;
 
217
 
 
218
        Track                                                           = ^TrackRecord;
 
219
        Track_GAP_Private_field_type_fix        = Track; { used as field type when a record declaration contains a Track field identifier }
 
220
        MediaRecordPtr = ^MediaRecord;
 
221
        MediaRecord = record
 
222
                data:                                   array [0..0] of SInt32;
 
223
        end;
 
224
 
 
225
        Media                                                           = ^MediaRecord;
 
226
        UserDataRecordPtr = ^UserDataRecord;
 
227
        UserDataRecord = record
 
228
                data:                                   array [0..0] of SInt32;
 
229
        end;
 
230
 
 
231
        UserData                                                        = ^UserDataRecord;
 
232
        TrackEditStateRecordPtr = ^TrackEditStateRecord;
 
233
        TrackEditStateRecord = record
 
234
                data:                                   array [0..0] of SInt32;
 
235
        end;
 
236
 
 
237
        TrackEditState                                          = ^TrackEditStateRecord;
 
238
        MovieEditStateRecordPtr = ^MovieEditStateRecord;
 
239
        MovieEditStateRecord = record
 
240
                data:                                   array [0..0] of SInt32;
 
241
        end;
 
242
 
 
243
        MovieEditState                                          = ^MovieEditStateRecord;
 
244
        QTRestrictionSetRecordPtr = ^QTRestrictionSetRecord;
 
245
        QTRestrictionSetRecord = record
 
246
                data:                                   array [0..0] of SInt32;
 
247
        end;
 
248
 
 
249
        QTRestrictionSet                                        = ^QTRestrictionSetRecord;
 
250
        SpriteWorldRecordPtr = ^SpriteWorldRecord;
 
251
        SpriteWorldRecord = record
 
252
                data:                                   array [0..0] of SInt32;
 
253
        end;
 
254
 
 
255
        SpriteWorld                                                     = ^SpriteWorldRecord;
 
256
        SpriteRecordPtr = ^SpriteRecord;
 
257
        SpriteRecord = record
 
258
                data:                                   array [0..0] of SInt32;
 
259
        end;
 
260
 
 
261
        Sprite                                                          = ^SpriteRecord;
 
262
        QTTweenerRecordPtr = ^QTTweenerRecord;
 
263
        QTTweenerRecord = record
 
264
                data:                                   array [0..0] of SInt32;
 
265
        end;
 
266
 
 
267
        QTTweener                                                       = ^QTTweenerRecord;
 
268
        SampleDescriptionPtr = ^SampleDescription;
 
269
        SampleDescription = record
 
270
                descSize:                               SInt32;
 
271
                dataFormat:                             SInt32;
 
272
                resvd1:                                 SInt32;
 
273
                resvd2:                                 SInt16;
 
274
                dataRefIndex:                   SInt16;
 
275
        end;
 
276
 
 
277
        SampleDescriptionHandle                         = ^SampleDescriptionPtr;
 
278
        QTBandwidthReference    = ^SInt32; { an opaque 32-bit type }
 
279
        QTBandwidthReferencePtr = ^QTBandwidthReference;  { when a var xx:QTBandwidthReference parameter can be nil, it is changed to xx: QTBandwidthReferencePtr }
 
280
        QTScheduledBandwidthReference    = ^SInt32; { an opaque 32-bit type }
 
281
        QTScheduledBandwidthReferencePtr = ^QTScheduledBandwidthReference;  { when a var xx:QTScheduledBandwidthReference parameter can be nil, it is changed to xx: QTScheduledBandwidthReferencePtr }
 
282
 
 
283
const
 
284
        kQTNetworkStatusNoNetwork       = -2;
 
285
        kQTNetworkStatusUncertain       = -1;
 
286
        kQTNetworkStatusNotConnected = 0;
 
287
        kQTNetworkStatusConnected       = 1;
 
288
 
 
289
 
 
290
type
 
291
        QTAtomContainer                                         = Handle;
 
292
        QTAtom                                                          = SInt32;
 
293
        QTAtomType                                                      = SInt32;
 
294
        QTAtomID                                                        = SInt32;
 
295
        {  QTFloatDouble is the 64-bit IEEE-754 standard }
 
296
        QTFloatDouble                                           = Float64;
 
297
        {  QTFloatSingle is the 32-bit IEEE-754 standard }
 
298
        QTFloatSingle                                           = Float32;
 
299
 
 
300
 
 
301
        SoundDescriptionPtr = ^SoundDescription;
 
302
        SoundDescription = record
 
303
                descSize:                               SInt32;                                                         {  total size of SoundDescription including extra data  }
 
304
                dataFormat:                             SInt32;                                                         {  sound format  }
 
305
                resvd1:                                 SInt32;                                                         {  reserved for apple use. set to zero  }
 
306
                resvd2:                                 SInt16;                                                         {  reserved for apple use. set to zero  }
 
307
                dataRefIndex:                   SInt16;
 
308
                version:                                SInt16;                                                         {  which version is this data  }
 
309
                revlevel:                               SInt16;                                                         {  what version of that codec did this  }
 
310
                vendor:                                 SInt32;                                                         {  whose  codec compressed this data  }
 
311
                numChannels:                    SInt16;                                                         {  number of channels of sound  }
 
312
                sampleSize:                             SInt16;                                                         {  number of bits per sample  }
 
313
                compressionID:                  SInt16;                                                         {  unused. set to zero.  }
 
314
                packetSize:                             SInt16;                                                         {  unused. set to zero.  }
 
315
                sampleRate:                             UnsignedFixed;                                                  {  sample rate sound is captured at  }
 
316
        end;
 
317
 
 
318
        SoundDescriptionHandle                          = ^SoundDescriptionPtr;
 
319
        {  version 1 of the SoundDescription record }
 
320
        SoundDescriptionV1Ptr = ^SoundDescriptionV1;
 
321
        SoundDescriptionV1 = record
 
322
                                                                                                                                                {  original fields }
 
323
                desc:                                   SoundDescription;
 
324
                                                                                                                                                {  fixed compression ratio information }
 
325
                samplesPerPacket:               UInt32;
 
326
                bytesPerPacket:                 UInt32;
 
327
                bytesPerFrame:                  UInt32;
 
328
                bytesPerSample:                 UInt32;
 
329
                                                                                                                                                {  additional atom based fields ([long size, long type, some data], repeat) }
 
330
        end;
 
331
 
 
332
        SoundDescriptionV1Handle                        = ^SoundDescriptionV1Ptr;
 
333
        TextDescriptionPtr = ^TextDescription;
 
334
        TextDescription = record
 
335
                descSize:                               SInt32;                                                         {  Total size of TextDescription }
 
336
                dataFormat:                             SInt32;                                                         {  'text' }
 
337
                resvd1:                                 SInt32;
 
338
                resvd2:                                 SInt16;
 
339
                dataRefIndex:                   SInt16;
 
340
                displayFlags:                   SInt32;                                                         {  see enum below for flag values }
 
341
                textJustification:              SInt32;                                                         {  Can be: teCenter,teFlush -Default,-Right,-Left }
 
342
                bgColor:                                RGBColor;                                                               {  Background color }
 
343
                defaultTextBox:                 Rect;                                                                   {  Location to place the text within the track bounds }
 
344
                defaultStyle:                   ScrpSTElement;                                                  {  Default style (struct defined in TextEdit.h) }
 
345
                defaultFontName:                SInt8;                                                                  {  Font Name (pascal string - struct extended to fit)  }
 
346
        end;
 
347
 
 
348
        TextDescriptionHandle                           = ^TextDescriptionPtr;
 
349
        SpriteDescriptionPtr = ^SpriteDescription;
 
350
        SpriteDescription = record
 
351
                descSize:                               SInt32;                                                         {  total size of SpriteDescription including extra data  }
 
352
                dataFormat:                             SInt32;                                                         {    }
 
353
                resvd1:                                 SInt32;                                                         {  reserved for apple use  }
 
354
                resvd2:                                 SInt16;
 
355
                dataRefIndex:                   SInt16;
 
356
                version:                                SInt32;                                                         {  which version is this data  }
 
357
                decompressorType:               OSType;                                                                 {  which decompressor to use, 0 for no decompression  }
 
358
                sampleFlags:                    SInt32;                                                         {  how to interpret samples  }
 
359
        end;
 
360
 
 
361
        SpriteDescriptionHandle                         = ^SpriteDescriptionPtr;
 
362
        FlashDescriptionPtr = ^FlashDescription;
 
363
        FlashDescription = record
 
364
                descSize:                               SInt32;
 
365
                dataFormat:                             SInt32;
 
366
                resvd1:                                 SInt32;
 
367
                resvd2:                                 SInt16;
 
368
                dataRefIndex:                   SInt16;
 
369
                version:                                SInt32;                                                         {  which version is this data  }
 
370
                decompressorType:               OSType;                                                                 {  which decompressor to use, 0 for no decompression  }
 
371
                flags:                                  SInt32;
 
372
        end;
 
373
 
 
374
        FlashDescriptionHandle                          = ^FlashDescriptionPtr;
 
375
        ThreeDeeDescriptionPtr = ^ThreeDeeDescription;
 
376
        ThreeDeeDescription = record
 
377
                descSize:                               SInt32;                                                         {  total size of ThreeDeeDescription including extra data  }
 
378
                dataFormat:                             SInt32;                                                         {    }
 
379
                resvd1:                                 SInt32;                                                         {  reserved for apple use  }
 
380
                resvd2:                                 SInt16;
 
381
                dataRefIndex:                   SInt16;
 
382
                version:                                SInt32;                                                         {  which version is this data  }
 
383
                rendererType:                   SInt32;                                                         {  which renderer to use, 0 for default  }
 
384
                decompressorType:               SInt32;                                                         {  which decompressor to use, 0 for default  }
 
385
        end;
 
386
 
 
387
        ThreeDeeDescriptionHandle                       = ^ThreeDeeDescriptionPtr;
 
388
        DataReferenceRecordPtr = ^DataReferenceRecord;
 
389
        DataReferenceRecord = record
 
390
                dataRefType:                    OSType;
 
391
                dataRef:                                Handle;
 
392
        end;
 
393
 
 
394
        DataReferencePtr                                        = ^DataReferenceRecord;
 
395
        {       --------------------------
 
396
          Music Sample Description
 
397
        --------------------------      }
 
398
        MusicDescriptionPtr = ^MusicDescription;
 
399
        MusicDescription = record
 
400
                descSize:                               SInt32;
 
401
                dataFormat:                             SInt32;                                                         {  'musi'  }
 
402
                resvd1:                                 SInt32;
 
403
                resvd2:                                 SInt16;
 
404
                dataRefIndex:                   SInt16;
 
405
                musicFlags:                             SInt32;
 
406
                headerData:                             array [0..0] of UInt32;                                 {  variable size!  }
 
407
        end;
 
408
 
 
409
        MusicDescriptionHandle                          = ^MusicDescriptionPtr;
 
410
 
 
411
const
 
412
        kMusicFlagDontPlay2Soft         = $00000001;
 
413
        kMusicFlagDontSlaveToMovie      = $00000002;
 
414
 
 
415
 
 
416
        dfDontDisplay                           = $01;                                                  {  Don't display the text }
 
417
        dfDontAutoScale                         = $02;                                                  {  Don't scale text as track bounds grows or shrinks }
 
418
        dfClipToTextBox                         = $04;                                                  {  Clip update to the textbox }
 
419
        dfUseMovieBGColor                       = $08;                                                  {  Set text background to movie's background color }
 
420
        dfShrinkTextBoxToFit            = $10;                                                  {  Compute minimum box to fit the sample }
 
421
        dfScrollIn                                      = $20;                                                  {  Scroll text in until last of text is in view  }
 
422
        dfScrollOut                                     = $40;                                                  {  Scroll text out until last of text is gone (if both set, scroll in then out) }
 
423
        dfHorizScroll                           = $80;                                                  {  Scroll text horizontally (otherwise it's vertical) }
 
424
        dfReverseScroll                         = $0100;                                                {  vert: scroll down rather than up; horiz: scroll backwards (justfication dependent) }
 
425
        dfContinuousScroll                      = $0200;                                                {  new samples cause previous samples to scroll out  }
 
426
        dfFlowHoriz                                     = $0400;                                                {  horiz scroll text flows in textbox rather than extend to right  }
 
427
        dfContinuousKaraoke                     = $0800;                                                {  ignore begin offset, hilite everything up to the end offset(karaoke) }
 
428
        dfDropShadow                            = $1000;                                                {  display text with a drop shadow  }
 
429
        dfAntiAlias                                     = $2000;                                                {  attempt to display text anti aliased }
 
430
        dfKeyedText                                     = $4000;                                                {  key the text over background }
 
431
        dfInverseHilite                         = $8000;                                                {  Use inverse hiliting rather than using hilite color }
 
432
        dfTextColorHilite                       = $00010000;                                    {  changes text color in place of hiliting.  }
 
433
 
 
434
        searchTextDontGoToFoundTime     = $00010000;
 
435
        searchTextDontHiliteFoundText = $00020000;
 
436
        searchTextOneTrackOnly          = $00040000;
 
437
        searchTextEnabledTracksOnly     = $00080000;
 
438
 
 
439
        { use these with the text property routines }
 
440
                                                                                                                                {  set property parameter / get property parameter }
 
441
        kTextTextHandle                         = 1;                                                    {  Handle / preallocated Handle }
 
442
        kTextTextPtr                            = 2;                                                    {  Pointer }
 
443
        kTextTEStyle                            = 3;                                                    {  TextStyle * / TextStyle * }
 
444
        kTextSelection                          = 4;                                                    {  long [2] / long [2] }
 
445
        kTextBackColor                          = 5;                                                    {  RGBColor * / RGBColor * }
 
446
        kTextForeColor                          = 6;                                                    {  RGBColor * / RGBColor * }
 
447
        kTextFace                                       = 7;                                                    {  long / long * }
 
448
        kTextFont                                       = 8;                                                    {  long / long * }
 
449
        kTextSize                                       = 9;                                                    {  long / long * }
 
450
        kTextAlignment                          = 10;                                                   {  short * / short * }
 
451
        kTextHilite                                     = 11;                                                   {  hiliteRecord * / hiliteRecord * }
 
452
        kTextDropShadow                         = 12;                                                   {  dropShadowRecord * / dropShadowRecord * }
 
453
        kTextDisplayFlags                       = 13;                                                   {  long / long * }
 
454
        kTextScroll                                     = 14;                                                   {  TimeValue * / TimeValue * }
 
455
        kTextRelativeScroll                     = 15;                                                   {  Point * }
 
456
        kTextHyperTextFace                      = 16;                                                   {  hyperTextSetFace * / hyperTextSetFace * }
 
457
        kTextHyperTextColor                     = 17;                                                   {  hyperTextSetColor * / hyperTextSetColor * }
 
458
        kTextKeyEntry                           = 18;                                                   {  short }
 
459
        kTextMouseDown                          = 19;                                                   {  Point * }
 
460
        kTextTextBox                            = 20;                                                   {  Rect * / Rect * }
 
461
        kTextEditState                          = 21;                                                   {  short / short * }
 
462
        kTextLength                                     = 22;                                                   {        / long * }
 
463
 
 
464
        k3DMediaRendererEntry           = $72656E64 (* 'rend' *);
 
465
        k3DMediaRendererName            = $6E616D65 (* 'name' *);
 
466
        k3DMediaRendererCode            = $72636F64 (* 'rcod' *);
 
467
 
 
468
        {        progress messages      }
 
469
        movieProgressOpen                       = 0;
 
470
        movieProgressUpdatePercent      = 1;
 
471
        movieProgressClose                      = 2;
 
472
 
 
473
        {        progress operations    }
 
474
        progressOpFlatten                       = 1;
 
475
        progressOpInsertTrackSegment = 2;
 
476
        progressOpInsertMovieSegment = 3;
 
477
        progressOpPaste                         = 4;
 
478
        progressOpAddMovieSelection     = 5;
 
479
        progressOpCopy                          = 6;
 
480
        progressOpCut                           = 7;
 
481
        progressOpLoadMovieIntoRam      = 8;
 
482
        progressOpLoadTrackIntoRam      = 9;
 
483
        progressOpLoadMediaIntoRam      = 10;
 
484
        progressOpImportMovie           = 11;
 
485
        progressOpExportMovie           = 12;
 
486
 
 
487
        mediaQualityDraft                       = $0000;
 
488
        mediaQualityNormal                      = $0040;
 
489
        mediaQualityBetter                      = $0080;
 
490
        mediaQualityBest                        = $00C0;
 
491
 
 
492
        {       ****
 
493
            Interactive Sprites Support
 
494
        ****    }
 
495
        {  QTEventRecord flags }
 
496
        kQTEventPayloadIsQTList         = $00000001;
 
497
 
 
498
 
 
499
type
 
500
        QTEventRecordPtr = ^QTEventRecord;
 
501
        QTEventRecord = record
 
502
                version:                                SInt32;
 
503
                eventType:                              OSType;
 
504
                where:                                  Point;
 
505
                flags:                                  SInt32;
 
506
                payloadRefcon:                  SInt32;                                                         {  from here down only present if version >= 2 }
 
507
                param1:                                 SInt32;
 
508
                param2:                                 SInt32;
 
509
                param3:                                 SInt32;
 
510
        end;
 
511
 
 
512
        QTAtomSpecPtr = ^QTAtomSpec;
 
513
        QTAtomSpec = record
 
514
                container:                              QTAtomContainer;
 
515
                atom:                                   QTAtom;
 
516
        end;
 
517
 
 
518
        ResolvedQTEventSpecPtr = ^ResolvedQTEventSpec;
 
519
        ResolvedQTEventSpec = record
 
520
                actionAtom:                             QTAtomSpec;
 
521
                targetTrack:                    Track;
 
522
                targetRefCon:                   SInt32;
 
523
        end;
 
524
 
 
525
 
 
526
        {  action constants  }
 
527
 
 
528
const
 
529
        kActionMovieSetVolume           = 1024;                                                 {  (short movieVolume)  }
 
530
        kActionMovieSetRate                     = 1025;                                                 {  (Fixed rate)  }
 
531
        kActionMovieSetLoopingFlags     = 1026;                                                 {  (long loopingFlags)  }
 
532
        kActionMovieGoToTime            = 1027;                                                 {  (TimeValue time)  }
 
533
        kActionMovieGoToTimeByName      = 1028;                                                 {  (Str255 timeName)  }
 
534
        kActionMovieGoToBeginning       = 1029;                                                 {  no params  }
 
535
        kActionMovieGoToEnd                     = 1030;                                                 {  no params  }
 
536
        kActionMovieStepForward         = 1031;                                                 {  no params  }
 
537
        kActionMovieStepBackward        = 1032;                                                 {  no params  }
 
538
        kActionMovieSetSelection        = 1033;                                                 {  (TimeValue startTime, TimeValue endTime)  }
 
539
        kActionMovieSetSelectionByName = 1034;                                          {  (Str255 startTimeName, Str255 endTimeName)  }
 
540
        kActionMoviePlaySelection       = 1035;                                                 {  (Boolean selectionOnly)  }
 
541
        kActionMovieSetLanguage         = 1036;                                                 {  (long language)  }
 
542
        kActionMovieChanged                     = 1037;                                                 {  no params  }
 
543
        kActionMovieRestartAtTime       = 1038;                                                 {  (TimeValue startTime, Fixed rate)  }
 
544
        kActionMovieGotoNextChapter     = 1039;                                                 {  no params  }
 
545
        kActionMovieGotoPreviousChapter = 1040;                                         {  no params  }
 
546
        kActionMovieGotoFirstChapter = 1041;                                            {  no params  }
 
547
        kActionMovieGotoLastChapter     = 1042;                                                 {  no params  }
 
548
        kActionMovieGotoChapterByIndex = 1043;                                          {  ( short index )  }
 
549
        kActionMovieSetScale            = 1044;                                                 {  (Fixed xScale, Fixed yScale)  }
 
550
        kActionTrackSetVolume           = 2048;                                                 {  (short volume)  }
 
551
        kActionTrackSetBalance          = 2049;                                                 {  (short balance)  }
 
552
        kActionTrackSetEnabled          = 2050;                                                 {  (Boolean enabled)  }
 
553
        kActionTrackSetMatrix           = 2051;                                                 {  (MatrixRecord matrix)  }
 
554
        kActionTrackSetLayer            = 2052;                                                 {  (short layer)  }
 
555
        kActionTrackSetClip                     = 2053;                                                 {  (RgnHandle clip)  }
 
556
        kActionTrackSetCursor           = 2054;                                                 {  (QTATomID cursorID)  }
 
557
        kActionTrackSetGraphicsMode     = 2055;                                                 {  (ModifierTrackGraphicsModeRecord graphicsMode)  }
 
558
        kActionTrackSetIdleFrequency = 2056;                                            {  (long frequency)  }
 
559
        kActionTrackSetBassTreble       = 2057;                                                 {  (short base, short treble)  }
 
560
        kActionSpriteSetMatrix          = 3072;                                                 {  (MatrixRecord matrix)  }
 
561
        kActionSpriteSetImageIndex      = 3073;                                                 {  (short imageIndex)  }
 
562
        kActionSpriteSetVisible         = 3074;                                                 {  (short visible)  }
 
563
        kActionSpriteSetLayer           = 3075;                                                 {  (short layer)  }
 
564
        kActionSpriteSetGraphicsMode = 3076;                                            {  (ModifierTrackGraphicsModeRecord graphicsMode)  }
 
565
        kActionSpritePassMouseToCodec = 3078;                                           {  no params  }
 
566
        kActionSpriteClickOnCodec       = 3079;                                                 {  Point localLoc  }
 
567
        kActionSpriteTranslate          = 3080;                                                 {  (Fixed x, Fixed y, Boolean isAbsolute)  }
 
568
        kActionSpriteScale                      = 3081;                                                 {  (Fixed xScale, Fixed yScale)  }
 
569
        kActionSpriteRotate                     = 3082;                                                 {  (Fixed degrees)  }
 
570
        kActionSpriteStretch            = 3083;                                                 {  (Fixed p1x, Fixed p1y, Fixed p2x, Fixed p2y, Fixed p3x, Fixed p3y, Fixed p4x, Fixed p4y)  }
 
571
        kActionSpriteSetCanBeHitTested = 3094;                                          {  (short canBeHitTested)  }
 
572
        kActionQTVRSetPanAngle          = 4096;                                                 {  (float panAngle)  }
 
573
        kActionQTVRSetTiltAngle         = 4097;                                                 {  (float tiltAngle)  }
 
574
        kActionQTVRSetFieldOfView       = 4098;                                                 {  (float fieldOfView)  }
 
575
        kActionQTVRShowDefaultView      = 4099;                                                 {  no params  }
 
576
        kActionQTVRGoToNodeID           = 4100;                                                 {  (UInt32 nodeID)  }
 
577
        kActionQTVREnableHotSpot        = 4101;                                                 {  long ID, Boolean enable  }
 
578
        kActionQTVRShowHotSpots         = 4102;                                                 {  Boolean show  }
 
579
        kActionQTVRTranslateObject      = 4103;                                                 {  float xMove, float yMove  }
 
580
        kActionQTVRSetViewState         = 4109;                                                 {  long viewStateType, short state  }
 
581
        kActionMusicPlayNote            = 5120;                                                 {  (long sampleDescIndex, long partNumber, long delay, long pitch, long velocity, long duration)  }
 
582
        kActionMusicSetController       = 5121;                                                 {  (long sampleDescIndex, long partNumber, long delay, long controller, long value)  }
 
583
        kActionCase                                     = 6144;                                                 {  [(CaseStatementActionAtoms)]  }
 
584
        kActionWhile                            = 6145;                                                 {  [(WhileStatementActionAtoms)]  }
 
585
        kActionGoToURL                          = 6146;                                                 {  (C string urlLink)  }
 
586
        kActionSendQTEventToSprite      = 6147;                                                 {  ([(SpriteTargetAtoms)], QTEventRecord theEvent)  }
 
587
        kActionDebugStr                         = 6148;                                                 {  (Str255 theString)  }
 
588
        kActionPushCurrentTime          = 6149;                                                 {  no params  }
 
589
        kActionPushCurrentTimeWithLabel = 6150;                                         {  (Str255 theLabel)  }
 
590
        kActionPopAndGotoTopTime        = 6151;                                                 {  no params  }
 
591
        kActionPopAndGotoLabeledTime = 6152;                                            {  (Str255 theLabel)  }
 
592
        kActionStatusString                     = 6153;                                                 {  (C string theString, long stringTypeFlags)  }
 
593
        kActionSendQTEventToTrackObject = 6154;                                         {  ([(TrackObjectTargetAtoms)], QTEventRecord theEvent)  }
 
594
        kActionAddChannelSubscription = 6155;                                           {  (Str255 channelName, C string channelsURL, C string channelsPictureURL)  }
 
595
        kActionRemoveChannelSubscription = 6156;                                        {  (C string channelsURL)  }
 
596
        kActionOpenCustomActionHandler = 6157;                                          {  (long handlerID, ComponentDescription handlerDesc)  }
 
597
        kActionDoScript                         = 6158;                                                 {  (long scriptTypeFlags, CString command, CString arguments)  }
 
598
        kActionDoCompressedActions      = 6159;                                                 {  (compressed QTAtomContainer prefixed with eight bytes: long compressorType, long decompressedSize)  }
 
599
        kActionSendAppMessage           = 6160;                                                 {  (long appMessageID)  }
 
600
        kActionLoadComponent            = 6161;                                                 {  (ComponentDescription handlerDesc)  }
 
601
        kActionSetFocus                         = 6162;                                                 {  [(TargetAtoms theObject)]  }
 
602
        kActionDontPassKeyEvent         = 6163;                                                 {  no params  }
 
603
        kActionSetRandomSeed            = 6164;                                                 {  long randomSeed  }
 
604
        kActionSpriteTrackSetVariable = 7168;                                           {  (QTAtomID variableID, float value)  }
 
605
        kActionSpriteTrackNewSprite     = 7169;                                                 {  (QTAtomID spriteID, short imageIndex, MatrixRecord *matrix, short visible, short layer, ModifierTrackGraphicsModeRecord *graphicsMode, QTAtomID actionHandlingSpriteID)  }
 
606
        kActionSpriteTrackDisposeSprite = 7170;                                         {  (QTAtomID spriteID)  }
 
607
        kActionSpriteTrackSetVariableToString = 7171;                           {  (QTAtomID variableID, C string value)  }
 
608
        kActionSpriteTrackConcatVariables = 7172;                                       {  (QTAtomID firstVariableID, QTAtomID secondVariableID, QTAtomID resultVariableID )  }
 
609
        kActionSpriteTrackSetVariableToMovieURL = 7173;                         {  (QTAtomID variableID, < optional: [(MovieTargetAtoms)] > )  }
 
610
        kActionSpriteTrackSetVariableToMovieBaseURL = 7174;                     {  (QTAtomID variableID, < optional: [(MovieTargetAtoms)] > )  }
 
611
        kActionSpriteTrackSetAllSpritesHitTestingMode = 7181;
 
612
        kActionSpriteTrackNewImage      = 7182;                                                 {  (C string imageURL, QTAtomID desiredID)  }
 
613
        kActionSpriteTrackDisposeImage = 7183;                                          {  (short imageIndex)  }
 
614
        kActionApplicationNumberAndString = 8192;                                       {  (long aNumber, Str255 aString )  }
 
615
        kActionQD3DNamedObjectTranslateTo = 9216;                                       {  (Fixed x, Fixed y, Fixed z )  }
 
616
        kActionQD3DNamedObjectScaleTo = 9217;                                           {  (Fixed xScale, Fixed yScale, Fixed zScale )  }
 
617
        kActionQD3DNamedObjectRotateTo = 9218;                                          {  (Fixed xDegrees, Fixed yDegrees, Fixed zDegrees )  }
 
618
        kActionFlashTrackSetPan         = 10240;                                                {  (short xPercent, short yPercent )  }
 
619
        kActionFlashTrackSetZoom        = 10241;                                                {  (short zoomFactor )  }
 
620
        kActionFlashTrackSetZoomRect = 10242;                                           {  (long left, long top, long right, long bottom )  }
 
621
        kActionFlashTrackGotoFrameNumber = 10243;                                       {  (long frameNumber )  }
 
622
        kActionFlashTrackGotoFrameLabel = 10244;                                        {  (C string frameLabel )  }
 
623
        kActionFlashTrackSetFlashVariable = 10245;                                      {  (C string path, C string name, C string value, Boolean updateFocus)  }
 
624
        kActionFlashTrackDoButtonActions = 10246;                                       {  (C string path, long buttonID, long transition)  }
 
625
        kActionMovieTrackAddChildMovie = 11264;                                         {  (QTAtomID childMovieID, C string childMovieURL)  }
 
626
        kActionMovieTrackLoadChildMovie = 11265;                                        {  (QTAtomID childMovieID)  }
 
627
        kActionMovieTrackLoadChildMovieWithQTListParams = 11266;        {  (QTAtomID childMovieID, C string qtlistXML)  }
 
628
        kActionTextTrackPasteText       = 12288;                                                {  (C string theText, long startSelection, long endSelection )  }
 
629
        kActionTextTrackSetTextBox      = 12291;                                                {  (short left, short top, short right, short bottom)  }
 
630
        kActionTextTrackSetTextStyle = 12292;                                           {  (Handle textStyle)  }
 
631
        kActionTextTrackSetSelection = 12293;                                           {  (long startSelection, long endSelection )  }
 
632
        kActionTextTrackSetBackgroundColor = 12294;                                     {  (ModifierTrackGraphicsModeRecord backgroundColor )  }
 
633
        kActionTextTrackSetForegroundColor = 12295;                                     {  (ModifierTrackGraphicsModeRecord foregroundColor )  }
 
634
        kActionTextTrackSetFace         = 12296;                                                {  (long fontFace )  }
 
635
        kActionTextTrackSetFont         = 12297;                                                {  (long fontID )  }
 
636
        kActionTextTrackSetSize         = 12298;                                                {  (long fontSize )  }
 
637
        kActionTextTrackSetAlignment = 12299;                                           {  (short alignment )  }
 
638
        kActionTextTrackSetHilite       = 12300;                                                {  (long startHighlight, long endHighlight, ModifierTrackGraphicsModeRecord highlightColor )  }
 
639
        kActionTextTrackSetDropShadow = 12301;                                          {  (Point dropShadow, short transparency )  }
 
640
        kActionTextTrackSetDisplayFlags = 12302;                                        {  (long flags )  }
 
641
        kActionTextTrackSetScroll       = 12303;                                                {  (long delay )  }
 
642
        kActionTextTrackRelativeScroll = 12304;                                         {  (short deltaX, short deltaY )  }
 
643
        kActionTextTrackFindText        = 12305;                                                {  (long flags, Str255 theText, ModifierTrackGraphicsModeRecord highlightColor )  }
 
644
        kActionTextTrackSetHyperTextFace = 12306;                                       {  (short index, long fontFace )  }
 
645
        kActionTextTrackSetHyperTextColor = 12307;                                      {  (short index, ModifierTrackGraphicsModeRecord highlightColor )  }
 
646
        kActionTextTrackKeyEntry        = 12308;                                                {  (short character )  }
 
647
        kActionTextTrackMouseDown       = 12309;                                                {  no params  }
 
648
        kActionTextTrackSetEditable     = 12310;                                                {  (short editState)  }
 
649
        kActionListAddElement           = 13312;                                                {  (C string parentPath, long atIndex, C string newElementName)  }
 
650
        kActionListRemoveElements       = 13313;                                                {  (C string parentPath, long startIndex, long endIndex)  }
 
651
        kActionListSetElementValue      = 13314;                                                {  (C string elementPath, C string valueString)  }
 
652
        kActionListPasteFromXML         = 13315;                                                {  (C string xml, C string targetParentPath, long startIndex)  }
 
653
        kActionListSetMatchingFromXML = 13316;                                          {  (C string xml, C string targetParentPath)  }
 
654
        kActionListSetFromURL           = 13317;                                                {  (C string url, C string targetParentPath )  }
 
655
        kActionListExchangeLists        = 13318;                                                {  (C string url, C string parentPath)  }
 
656
        kActionListServerQuery          = 13319;                                                {  (C string url, C string keyValuePairs, long flags, C string parentPath)  }
 
657
 
 
658
 
 
659
        kOperandExpression                      = 1;
 
660
        kOperandConstant                        = 2;
 
661
        kOperandSubscribedToChannel     = 3;                                                    {  C string channelsURL  }
 
662
        kOperandUniqueCustomActionHandlerID = 4;
 
663
        kOperandCustomActionHandlerIDIsOpen = 5;                                        {  long ID  }
 
664
        kOperandConnectionSpeed         = 6;
 
665
        kOperandGMTDay                          = 7;
 
666
        kOperandGMTMonth                        = 8;
 
667
        kOperandGMTYear                         = 9;
 
668
        kOperandGMTHours                        = 10;
 
669
        kOperandGMTMinutes                      = 11;
 
670
        kOperandGMTSeconds                      = 12;
 
671
        kOperandLocalDay                        = 13;
 
672
        kOperandLocalMonth                      = 14;
 
673
        kOperandLocalYear                       = 15;
 
674
        kOperandLocalHours                      = 16;
 
675
        kOperandLocalMinutes            = 17;
 
676
        kOperandLocalSeconds            = 18;
 
677
        kOperandRegisteredForQuickTimePro = 19;
 
678
        kOperandPlatformRunningOn       = 20;
 
679
        kOperandQuickTimeVersion        = 21;
 
680
        kOperandComponentVersion        = 22;                                                   {  C string type, C string subType, C string manufacturer  }
 
681
        kOperandOriginalHandlerRefcon = 23;
 
682
        kOperandTicks                           = 24;
 
683
        kOperandMaxLoadedTimeInMovie = 25;
 
684
        kOperandEventParameter          = 26;                                                   {  short index  }
 
685
        kOperandFreeMemory                      = 27;
 
686
        kOperandNetworkStatus           = 28;
 
687
        kOperandQuickTimeVersionRegistered = 29;                                        {  long version  }
 
688
        kOperandSystemVersion           = 30;
 
689
        kOperandMovieVolume                     = 1024;
 
690
        kOperandMovieRate                       = 1025;
 
691
        kOperandMovieIsLooping          = 1026;
 
692
        kOperandMovieLoopIsPalindrome = 1027;
 
693
        kOperandMovieTime                       = 1028;
 
694
        kOperandMovieDuration           = 1029;
 
695
        kOperandMovieTimeScale          = 1030;
 
696
        kOperandMovieWidth                      = 1031;
 
697
        kOperandMovieHeight                     = 1032;
 
698
        kOperandMovieLoadState          = 1033;
 
699
        kOperandMovieTrackCount         = 1034;
 
700
        kOperandMovieIsActive           = 1035;
 
701
        kOperandMovieName                       = 1036;
 
702
        kOperandMovieID                         = 1037;
 
703
        kOperandMovieChapterCount       = 1038;
 
704
        kOperandMovieChapterIndex       = 1039;
 
705
        kOperandMovieChapterName        = 1040;
 
706
        kOperandMovieChapterNameByIndex = 1041;                                         {  ( short index )  }
 
707
        kOperandMovieChapterIndexByName = 1042;                                         {  (c string name)   }
 
708
        kOperandMovieAnnotation         = 1043;                                                 {  (c string requested, long flags)  }
 
709
        kOperandMovieConnectionFlags = 1044;
 
710
        kOperandMovieConnectionString = 1045;
 
711
        kOperandTrackVolume                     = 2048;
 
712
        kOperandTrackBalance            = 2049;
 
713
        kOperandTrackEnabled            = 2050;
 
714
        kOperandTrackLayer                      = 2051;
 
715
        kOperandTrackWidth                      = 2052;
 
716
        kOperandTrackHeight                     = 2053;
 
717
        kOperandTrackDuration           = 2054;
 
718
        kOperandTrackName                       = 2055;
 
719
        kOperandTrackID                         = 2056;
 
720
        kOperandTrackIdleFrequency      = 2057;
 
721
        kOperandTrackBass                       = 2058;
 
722
        kOperandTrackTreble                     = 2059;
 
723
        kOperandSpriteBoundsLeft        = 3072;
 
724
        kOperandSpriteBoundsTop         = 3073;
 
725
        kOperandSpriteBoundsRight       = 3074;
 
726
        kOperandSpriteBoundsBottom      = 3075;
 
727
        kOperandSpriteImageIndex        = 3076;
 
728
        kOperandSpriteVisible           = 3077;
 
729
        kOperandSpriteLayer                     = 3078;
 
730
        kOperandSpriteTrackVariable     = 3079;                                                 {  [QTAtomID variableID]  }
 
731
        kOperandSpriteTrackNumSprites = 3080;
 
732
        kOperandSpriteTrackNumImages = 3081;
 
733
        kOperandSpriteID                        = 3082;
 
734
        kOperandSpriteIndex                     = 3083;
 
735
        kOperandSpriteFirstCornerX      = 3084;
 
736
        kOperandSpriteFirstCornerY      = 3085;
 
737
        kOperandSpriteSecondCornerX     = 3086;
 
738
        kOperandSpriteSecondCornerY     = 3087;
 
739
        kOperandSpriteThirdCornerX      = 3088;
 
740
        kOperandSpriteThirdCornerY      = 3089;
 
741
        kOperandSpriteFourthCornerX     = 3090;
 
742
        kOperandSpriteFourthCornerY     = 3091;
 
743
        kOperandSpriteImageRegistrationPointX = 3092;
 
744
        kOperandSpriteImageRegistrationPointY = 3093;
 
745
        kOperandSpriteTrackSpriteIDAtPoint = 3094;                                      {  short x, short y  }
 
746
        kOperandSpriteName                      = 3095;
 
747
        kOperandSpriteCanBeHitTested = 3105;                                            {  short  }
 
748
        kOperandSpriteTrackAllSpritesHitTestingMode = 3106;
 
749
        kOperandSpriteTrackImageIDByIndex = 3107;                                       {  short imageIndex  }
 
750
        kOperandSpriteTrackImageIndexByID = 3108;                                       {  QTAtomID  }
 
751
        kOperandQTVRPanAngle            = 4096;
 
752
        kOperandQTVRTiltAngle           = 4097;
 
753
        kOperandQTVRFieldOfView         = 4098;
 
754
        kOperandQTVRNodeID                      = 4099;
 
755
        kOperandQTVRHotSpotsVisible     = 4100;
 
756
        kOperandQTVRViewCenterH         = 4101;
 
757
        kOperandQTVRViewCenterV         = 4102;
 
758
        kOperandQTVRViewStateCount      = 4103;
 
759
        kOperandQTVRViewState           = 4104;                                                 {  long viewStateType  }
 
760
        kOperandMouseLocalHLoc          = 5120;                                                 {  [TargetAtoms aTrack]  }
 
761
        kOperandMouseLocalVLoc          = 5121;                                                 {  [TargetAtoms aTrack]  }
 
762
        kOperandKeyIsDown                       = 5122;                                                 {  [short modKeys, char asciiValue]  }
 
763
        kOperandRandom                          = 5123;                                                 {  [short min, short max]  }
 
764
        kOperandCanHaveFocus            = 5124;                                                 {  [(TargetAtoms theObject)]  }
 
765
        kOperandHasFocus                        = 5125;                                                 {  [(TargetAtoms theObject)]  }
 
766
        kOperandTextTrackEditable       = 6144;
 
767
        kOperandTextTrackCopyText       = 6145;                                                 {  long startSelection, long endSelection  }
 
768
        kOperandTextTrackStartSelection = 6146;
 
769
        kOperandTextTrackEndSelection = 6147;
 
770
        kOperandTextTrackTextBoxLeft = 6148;
 
771
        kOperandTextTrackTextBoxTop     = 6149;
 
772
        kOperandTextTrackTextBoxRight = 6150;
 
773
        kOperandTextTrackTextBoxBottom = 6151;
 
774
        kOperandTextTrackTextLength     = 6152;
 
775
        kOperandListCountElements       = 7168;                                                 {  (C string parentPath)  }
 
776
        kOperandListGetElementPathByIndex = 7169;                                       {  (C string parentPath, long index)  }
 
777
        kOperandListGetElementValue     = 7170;                                                 {  (C string elementPath)  }
 
778
        kOperandListCopyToXML           = 7171;                                                 {  (C string parentPath, long startIndex, long endIndex)  }
 
779
        kOperandSin                                     = 8192;                                                 {  float x     }
 
780
        kOperandCos                                     = 8193;                                                 {  float x     }
 
781
        kOperandTan                                     = 8194;                                                 {  float x     }
 
782
        kOperandATan                            = 8195;                                                 {  float x     }
 
783
        kOperandATan2                           = 8196;                                                 {  float y, float x    }
 
784
        kOperandDegreesToRadians        = 8197;                                                 {  float x  }
 
785
        kOperandRadiansToDegrees        = 8198;                                                 {  float x  }
 
786
        kOperandSquareRoot                      = 8199;                                                 {  float x  }
 
787
        kOperandExponent                        = 8200;                                                 {  float x  }
 
788
        kOperandLog                                     = 8201;                                                 {  float x  }
 
789
        kOperandFlashTrackVariable      = 9216;                                                 {  [CString path, CString name]  }
 
790
        kOperandStringLength            = 10240;                                                {  (C string text)  }
 
791
        kOperandStringCompare           = 10241;                                                {  (C string aText, C string bText, Boolean caseSensitive, Boolan diacSensitive)  }
 
792
        kOperandStringSubString         = 10242;                                                {  (C string text, long offset, long length)  }
 
793
        kOperandStringConcat            = 10243;                                                {  (C string aText, C string bText)  }
 
794
 
 
795
        kFirstMovieAction                       = 1024;
 
796
        kLastMovieAction                        = 1044;
 
797
        kFirstTrackAction                       = 2048;
 
798
        kLastTrackAction                        = 2057;
 
799
        kFirstSpriteAction                      = 3072;
 
800
        kLastSpriteAction                       = 3094;
 
801
        kFirstQTVRAction                        = 4096;
 
802
        kLastQTVRAction                         = 4109;
 
803
        kFirstMusicAction                       = 5120;
 
804
        kLastMusicAction                        = 5121;
 
805
        kFirstSystemAction                      = 6144;
 
806
        kLastSystemAction                       = 6164;
 
807
        kFirstSpriteTrackAction         = 7168;
 
808
        kLastSpriteTrackAction          = 7183;
 
809
        kFirstApplicationAction         = 8192;
 
810
        kLastApplicationAction          = 8192;
 
811
        kFirstQD3DNamedObjectAction     = 9216;
 
812
        kLastQD3DNamedObjectAction      = 9218;
 
813
        kFirstFlashTrackAction          = 10240;
 
814
        kLastFlashTrackAction           = 10246;
 
815
        kFirstMovieTrackAction          = 11264;
 
816
        kLastMovieTrackAction           = 11266;
 
817
        kFirstTextTrackAction           = 12288;
 
818
        kLastTextTrackAction            = 12310;
 
819
        kFirstMultiTargetAction         = 13312;
 
820
        kLastMultiTargetAction          = 13319;
 
821
        kFirstAction                            = 1024;
 
822
        kLastAction                                     = 13319;
 
823
 
 
824
        {  target atom types }
 
825
        kTargetMovie                            = $6D6F6F76 (* 'moov' *);                                               {  no data  }
 
826
        kTargetMovieName                        = $6D6F6E61 (* 'mona' *);                                               {  (PString movieName)  }
 
827
        kTargetMovieID                          = $6D6F6964 (* 'moid' *);                                               {  (long movieID)  }
 
828
        kTargetRootMovie                        = $6D6F726F (* 'moro' *);                                               {  no data  }
 
829
        kTargetParentMovie                      = $6D6F7061 (* 'mopa' *);                                               {  no data  }
 
830
        kTargetChildMovieTrackName      = $6D6F746E (* 'motn' *);                                               {  (PString childMovieTrackName)  }
 
831
        kTargetChildMovieTrackID        = $6D6F7469 (* 'moti' *);                                               {  (long childMovieTrackID)  }
 
832
        kTargetChildMovieTrackIndex     = $6D6F7478 (* 'motx' *);                                               {  (long childMovieTrackIndex)  }
 
833
        kTargetChildMovieMovieName      = $6D6F6D6E (* 'momn' *);                                               {  (PString childMovieName)  }
 
834
        kTargetChildMovieMovieID        = $6D6F6D69 (* 'momi' *);                                               {  (long childMovieID)  }
 
835
        kTargetTrackName                        = $74726E61 (* 'trna' *);                                               {  (PString trackName)  }
 
836
        kTargetTrackID                          = $74726964 (* 'trid' *);                                               {  (long trackID)  }
 
837
        kTargetTrackType                        = $74727479 (* 'trty' *);                                               {  (OSType trackType)  }
 
838
        kTargetTrackIndex                       = $7472696E (* 'trin' *);                                               {  (long trackIndex)  }
 
839
        kTargetSpriteName                       = $73706E61 (* 'spna' *);                                               {  (PString spriteName)  }
 
840
        kTargetSpriteID                         = $73706964 (* 'spid' *);                                               {  (QTAtomID spriteID)  }
 
841
        kTargetSpriteIndex                      = $7370696E (* 'spin' *);                                               {  (short spriteIndex)  }
 
842
        kTargetQD3DNamedObjectName      = $6E616E61 (* 'nana' *);                                               {  (CString objectName)  }
 
843
        kTargetCurrentQTEventParams     = $65767061 (* 'evpa' *);                                               {  no data  }
 
844
 
 
845
        {  action container atom types }
 
846
        kQTEventType                            = $65766E74 (* 'evnt' *);
 
847
        kAction                                         = $6163746E (* 'actn' *);
 
848
        kWhichAction                            = $77686963 (* 'whic' *);
 
849
        kActionParameter                        = $7061726D (* 'parm' *);
 
850
        kActionTarget                           = $74617267 (* 'targ' *);
 
851
        kActionFlags                            = $666C6167 (* 'flag' *);
 
852
        kActionParameterMinValue        = $6D696E76 (* 'minv' *);
 
853
        kActionParameterMaxValue        = $6D617876 (* 'maxv' *);
 
854
        kActionListAtomType                     = $6C697374 (* 'list' *);
 
855
        kExpressionContainerAtomType = $65787072 (* 'expr' *);
 
856
        kConditionalAtomType            = $74657374 (* 'test' *);
 
857
        kOperatorAtomType                       = $6F706572 (* 'oper' *);
 
858
        kOperandAtomType                        = $6F70726E (* 'oprn' *);
 
859
        kCommentAtomType                        = $77687920 (* 'why ' *);
 
860
        kCustomActionHandler            = $63757374 (* 'cust' *);
 
861
        kCustomHandlerID                        = $69642020 (* 'id  ' *);
 
862
        kCustomHandlerDesc                      = $64657363 (* 'desc' *);
 
863
        kQTEventRecordAtomType          = $65726563 (* 'erec' *);
 
864
 
 
865
        {  QTEvent types  }
 
866
        kQTEventMouseClick                      = $636C696B (* 'clik' *);
 
867
        kQTEventMouseClickEnd           = $63656E64 (* 'cend' *);
 
868
        kQTEventMouseClickEndTriggerButton = $74726967 (* 'trig' *);
 
869
        kQTEventMouseEnter                      = $656E7472 (* 'entr' *);
 
870
        kQTEventMouseExit                       = $65786974 (* 'exit' *);
 
871
        kQTEventMouseMoved                      = $6D6F7665 (* 'move' *);
 
872
        kQTEventFrameLoaded                     = $6672616D (* 'fram' *);
 
873
        kQTEventIdle                            = $69646C65 (* 'idle' *);
 
874
        kQTEventKey                                     = $6B657920 (* 'key ' *);                                               {  qtevent.param1 = key, qtevent.param2 = modifiers, qtEvent.param3 = scanCode  }
 
875
        kQTEventMovieLoaded                     = $6C6F6164 (* 'load' *);
 
876
        kQTEventRequestToModifyMovie = $7265716D (* 'reqm' *);
 
877
        kQTEventListReceived            = $6C697374 (* 'list' *);
 
878
        kQTEventKeyUp                           = $6B657955 (* 'keyU' *);                                               {  qtevent.param1 = key, qtevent.param2 = modifiers, qtEvent.param3 = scanCode  }
 
879
 
 
880
        {  flags for the kActionFlags atom  }
 
881
        kActionFlagActionIsDelta        = $00000002;
 
882
        kActionFlagParameterWrapsAround = $00000004;
 
883
        kActionFlagActionIsToggle       = $00000008;
 
884
 
 
885
        {  flags for stringTypeFlags field of the QTStatusStringRecord  }
 
886
        kStatusStringIsURLLink          = $00000002;
 
887
        kStatusStringIsStreamingStatus = $00000004;
 
888
        kStatusHasCodeNumber            = $00000008;                                    {  high 16 bits of stringTypeFlags is error code number }
 
889
        kStatusIsError                          = $00000010;
 
890
 
 
891
        {  flags for scriptTypeFlags field of the QTDoScriptRecord }
 
892
        kScriptIsUnknownType            = $00000001;
 
893
        kScriptIsJavaScript                     = $00000002;
 
894
        kScriptIsLingoEvent                     = $00000004;
 
895
        kScriptIsVBEvent                        = $00000008;
 
896
        kScriptIsProjectorCommand       = $00000010;
 
897
        kScriptIsAppleScript            = $00000020;
 
898
 
 
899
        {  flags for CheckQuickTimeRegistration routine }
 
900
        kQTRegistrationDialogTimeOutFlag = $01;
 
901
        kQTRegistrationDialogShowDialog = $02;
 
902
        kQTRegistrationDialogForceDialog = $04;
 
903
 
 
904
        {  constants for kOperatorAtomType IDs (operator types) }
 
905
        kOperatorAdd                            = $61646420 (* 'add ' *);
 
906
        kOperatorSubtract                       = $73756220 (* 'sub ' *);
 
907
        kOperatorMultiply                       = $6D756C74 (* 'mult' *);
 
908
        kOperatorDivide                         = $64697620 (* 'div ' *);
 
909
        kOperatorOr                                     = $6F722020 (* 'or  ' *);
 
910
        kOperatorAnd                            = $616E6420 (* 'and ' *);
 
911
        kOperatorNot                            = $6E6F7420 (* 'not ' *);
 
912
        kOperatorLessThan                       = $3C202020 (* '<   ' *);
 
913
        kOperatorLessThanEqualTo        = $3C3D2020 (* '<=  ' *);
 
914
        kOperatorEqualTo                        = $3D202020 (* '=   ' *);
 
915
        kOperatorNotEqualTo                     = $213D2020 (* '!=  ' *);
 
916
        kOperatorGreaterThan            = $3E202020 (* '>   ' *);
 
917
        kOperatorGreaterThanEqualTo     = $3E3D2020 (* '>=  ' *);
 
918
        kOperatorModulo                         = $6D6F6420 (* 'mod ' *);
 
919
        kOperatorIntegerDivide          = $69646976 (* 'idiv' *);
 
920
        kOperatorAbsoluteValue          = $61627320 (* 'abs ' *);
 
921
        kOperatorNegate                         = $6E656720 (* 'neg ' *);
 
922
 
 
923
        {  constants for kOperandPlatformRunningOn }
 
924
        kPlatformMacintosh                      = 1;
 
925
        kPlatformWindows                        = 2;
 
926
 
 
927
        {  flags for kOperandSystemVersion }
 
928
        kSystemIsWindows9x                      = $00010000;
 
929
        kSystemIsWindowsNT                      = $00020000;
 
930
 
 
931
        {  constants for MediaPropertiesAtom }
 
932
        kMediaPropertyNonLinearAtomType = $6E6F6E6C (* 'nonl' *);
 
933
        kMediaPropertyHasActions        = 105;
 
934
 
 
935
        {        TimeBase and TimeRecord moved to MacTypes.h    }
 
936
 
 
937
type
 
938
        TimeBaseFlags                           = UInt32;
 
939
const
 
940
        loopTimeBase                            = 1;
 
941
        palindromeLoopTimeBase          = 2;
 
942
        maintainTimeBaseZero            = 4;
 
943
 
 
944
 
 
945
type
 
946
        CallBackRecordPtr = ^CallBackRecord;
 
947
        CallBackRecord = record
 
948
                data:                                   array [0..0] of SInt32;
 
949
        end;
 
950
 
 
951
        QTCallBack                                                      = ^CallBackRecord;
 
952
        {        CallBack equates       }
 
953
        QTCallBackFlags                         = UInt16;
 
954
const
 
955
        triggerTimeFwd                          = $0001;                                                {  when curTime exceeds triggerTime going forward  }
 
956
        triggerTimeBwd                          = $0002;                                                {  when curTime exceeds triggerTime going backwards  }
 
957
        triggerTimeEither                       = $0003;                                                {  when curTime exceeds triggerTime going either direction  }
 
958
        triggerRateLT                           = $0004;                                                {  when rate changes to less than trigger value  }
 
959
        triggerRateGT                           = $0008;                                                {  when rate changes to greater than trigger value  }
 
960
        triggerRateEqual                        = $0010;                                                {  when rate changes to equal trigger value  }
 
961
        triggerRateLTE                          = $0014;
 
962
        triggerRateGTE                          = $0018;
 
963
        triggerRateNotEqual                     = $001C;
 
964
        triggerRateChange                       = 0;
 
965
        triggerAtStart                          = $0001;
 
966
        triggerAtStop                           = $0002;
 
967
 
 
968
 
 
969
type
 
970
        TimeBaseStatus                          = UInt32;
 
971
const
 
972
        timeBaseBeforeStartTime         = 1;
 
973
        timeBaseAfterStopTime           = 2;
 
974
 
 
975
 
 
976
type
 
977
        QTCallBackType                          = UInt16;
 
978
const
 
979
        callBackAtTime                          = 1;
 
980
        callBackAtRate                          = 2;
 
981
        callBackAtTimeJump                      = 3;
 
982
        callBackAtExtremes                      = 4;
 
983
        callBackAtTimeBaseDisposed      = 5;
 
984
        callBackAtInterrupt                     = $8000;
 
985
        callBackAtDeferredTask          = $4000;
 
986
 
 
987
 
 
988
type
 
989
{$ifc TYPED_FUNCTION_POINTERS}
 
990
        QTCallBackProcPtr = procedure(cb: QTCallBack; refCon: SInt32);
 
991
{$elsec}
 
992
        QTCallBackProcPtr = ProcPtr;
 
993
{$endc}
 
994
 
 
995
{$ifc OPAQUE_UPP_TYPES}
 
996
        QTCallBackUPP = ^SInt32; { an opaque UPP }
 
997
{$elsec}
 
998
        QTCallBackUPP = UniversalProcPtr;
 
999
{$endc} 
 
1000
 
 
1001
const
 
1002
        qtcbNeedsRateChanges            = 1;                                                    {  wants to know about rate changes  }
 
1003
        qtcbNeedsTimeChanges            = 2;                                                    {  wants to know about time changes  }
 
1004
        qtcbNeedsStartStopChanges       = 4;                                                    {  wants to know when TimeBase start/stop is changed }
 
1005
 
 
1006
 
 
1007
type
 
1008
        QTCallBackHeaderPtr = ^QTCallBackHeader;
 
1009
        QTCallBackHeader = record
 
1010
                callBackFlags:                  SInt32;
 
1011
                reserved1:                              SInt32;
 
1012
                qtPrivate:                              array [0..39] of SInt8;
 
1013
        end;
 
1014
 
 
1015
{$ifc TYPED_FUNCTION_POINTERS}
 
1016
        QTSyncTaskProcPtr = procedure(task: UnivPtr);
 
1017
{$elsec}
 
1018
        QTSyncTaskProcPtr = ProcPtr;
 
1019
{$endc}
 
1020
 
 
1021
{$ifc OPAQUE_UPP_TYPES}
 
1022
        QTSyncTaskUPP = ^SInt32; { an opaque UPP }
 
1023
{$elsec}
 
1024
        QTSyncTaskUPP = UniversalProcPtr;
 
1025
{$endc} 
 
1026
        QTSyncTaskRecordPtr = ^QTSyncTaskRecord;
 
1027
        QTSyncTaskRecord = record
 
1028
                qLink:                                  Ptr;
 
1029
                proc:                                   QTSyncTaskUPP;
 
1030
        end;
 
1031
 
 
1032
        QTSyncTaskPtr                                           = ^QTSyncTaskRecord;
 
1033
 
 
1034
{$ifc TYPED_FUNCTION_POINTERS}
 
1035
        MovieRgnCoverProcPtr = function(theMovie: Movie; changedRgn: RgnHandle; refcon: SInt32): OSErr;
 
1036
{$elsec}
 
1037
        MovieRgnCoverProcPtr = ProcPtr;
 
1038
{$endc}
 
1039
 
 
1040
{$ifc TYPED_FUNCTION_POINTERS}
 
1041
        MovieProgressProcPtr = function(theMovie: Movie; message: SInt16; whatOperation: SInt16; percentDone: Fixed; refcon: SInt32): OSErr;
 
1042
{$elsec}
 
1043
        MovieProgressProcPtr = ProcPtr;
 
1044
{$endc}
 
1045
 
 
1046
{$ifc TYPED_FUNCTION_POINTERS}
 
1047
        MovieDrawingCompleteProcPtr = function(theMovie: Movie; refCon: SInt32): OSErr;
 
1048
{$elsec}
 
1049
        MovieDrawingCompleteProcPtr = ProcPtr;
 
1050
{$endc}
 
1051
 
 
1052
{$ifc TYPED_FUNCTION_POINTERS}
 
1053
        TrackTransferProcPtr = function(t: Track; refCon: SInt32): OSErr;
 
1054
{$elsec}
 
1055
        TrackTransferProcPtr = ProcPtr;
 
1056
{$endc}
 
1057
 
 
1058
{$ifc TYPED_FUNCTION_POINTERS}
 
1059
        GetMovieProcPtr = function(offset: SInt32; size: SInt32; dataPtr: UnivPtr; refCon: UnivPtr): OSErr;
 
1060
{$elsec}
 
1061
        GetMovieProcPtr = ProcPtr;
 
1062
{$endc}
 
1063
 
 
1064
{$ifc TYPED_FUNCTION_POINTERS}
 
1065
        MoviePreviewCallOutProcPtr = function(refcon: SInt32): boolean;
 
1066
{$elsec}
 
1067
        MoviePreviewCallOutProcPtr = ProcPtr;
 
1068
{$endc}
 
1069
 
 
1070
{$ifc TYPED_FUNCTION_POINTERS}
 
1071
        TextMediaProcPtr = function(theText: Handle; theMovie: Movie; var displayFlag: SInt16; refcon: SInt32): OSErr;
 
1072
{$elsec}
 
1073
        TextMediaProcPtr = ProcPtr;
 
1074
{$endc}
 
1075
 
 
1076
{$ifc TYPED_FUNCTION_POINTERS}
 
1077
        ActionsProcPtr = function(refcon: UnivPtr; targetTrack: Track; targetRefCon: SInt32; theEvent: QTEventRecordPtr): OSErr;
 
1078
{$elsec}
 
1079
        ActionsProcPtr = ProcPtr;
 
1080
{$endc}
 
1081
 
 
1082
{$ifc TYPED_FUNCTION_POINTERS}
 
1083
        DoMCActionProcPtr = function(refcon: UnivPtr; action: SInt16; params: UnivPtr; var handled: boolean): OSErr;
 
1084
{$elsec}
 
1085
        DoMCActionProcPtr = ProcPtr;
 
1086
{$endc}
 
1087
 
 
1088
{$ifc TYPED_FUNCTION_POINTERS}
 
1089
        MovieExecuteWiredActionsProcPtr = function(theMovie: Movie; refcon: UnivPtr; flags: SInt32; wiredActions: QTAtomContainer): OSErr;
 
1090
{$elsec}
 
1091
        MovieExecuteWiredActionsProcPtr = ProcPtr;
 
1092
{$endc}
 
1093
 
 
1094
{$ifc TYPED_FUNCTION_POINTERS}
 
1095
        MoviePrePrerollCompleteProcPtr = procedure(theMovie: Movie; prerollErr: OSErr; refcon: UnivPtr);
 
1096
{$elsec}
 
1097
        MoviePrePrerollCompleteProcPtr = ProcPtr;
 
1098
{$endc}
 
1099
 
 
1100
{$ifc TYPED_FUNCTION_POINTERS}
 
1101
        QTNextTaskNeededSoonerCallbackProcPtr = procedure(duration: TimeValue; flags: UInt32; refcon: UnivPtr);
 
1102
{$elsec}
 
1103
        QTNextTaskNeededSoonerCallbackProcPtr = ProcPtr;
 
1104
{$endc}
 
1105
 
 
1106
{$ifc TYPED_FUNCTION_POINTERS}
 
1107
        MoviesErrorProcPtr = procedure(theErr: OSErr; refcon: SInt32);
 
1108
{$elsec}
 
1109
        MoviesErrorProcPtr = ProcPtr;
 
1110
{$endc}
 
1111
 
 
1112
{$ifc OPAQUE_UPP_TYPES}
 
1113
        MovieRgnCoverUPP = ^SInt32; { an opaque UPP }
 
1114
{$elsec}
 
1115
        MovieRgnCoverUPP = UniversalProcPtr;
 
1116
{$endc} 
 
1117
{$ifc OPAQUE_UPP_TYPES}
 
1118
        MovieProgressUPP = ^SInt32; { an opaque UPP }
 
1119
{$elsec}
 
1120
        MovieProgressUPP = UniversalProcPtr;
 
1121
{$endc} 
 
1122
{$ifc OPAQUE_UPP_TYPES}
 
1123
        MovieDrawingCompleteUPP = ^SInt32; { an opaque UPP }
 
1124
{$elsec}
 
1125
        MovieDrawingCompleteUPP = UniversalProcPtr;
 
1126
{$endc} 
 
1127
{$ifc OPAQUE_UPP_TYPES}
 
1128
        TrackTransferUPP = ^SInt32; { an opaque UPP }
 
1129
{$elsec}
 
1130
        TrackTransferUPP = UniversalProcPtr;
 
1131
{$endc} 
 
1132
{$ifc OPAQUE_UPP_TYPES}
 
1133
        GetMovieUPP = ^SInt32; { an opaque UPP }
 
1134
{$elsec}
 
1135
        GetMovieUPP = UniversalProcPtr;
 
1136
{$endc} 
 
1137
{$ifc OPAQUE_UPP_TYPES}
 
1138
        MoviePreviewCallOutUPP = ^SInt32; { an opaque UPP }
 
1139
{$elsec}
 
1140
        MoviePreviewCallOutUPP = UniversalProcPtr;
 
1141
{$endc} 
 
1142
{$ifc OPAQUE_UPP_TYPES}
 
1143
        TextMediaUPP = ^SInt32; { an opaque UPP }
 
1144
{$elsec}
 
1145
        TextMediaUPP = UniversalProcPtr;
 
1146
{$endc} 
 
1147
{$ifc OPAQUE_UPP_TYPES}
 
1148
        ActionsUPP = ^SInt32; { an opaque UPP }
 
1149
{$elsec}
 
1150
        ActionsUPP = UniversalProcPtr;
 
1151
{$endc} 
 
1152
{$ifc OPAQUE_UPP_TYPES}
 
1153
        DoMCActionUPP = ^SInt32; { an opaque UPP }
 
1154
{$elsec}
 
1155
        DoMCActionUPP = UniversalProcPtr;
 
1156
{$endc} 
 
1157
{$ifc OPAQUE_UPP_TYPES}
 
1158
        MovieExecuteWiredActionsUPP = ^SInt32; { an opaque UPP }
 
1159
{$elsec}
 
1160
        MovieExecuteWiredActionsUPP = UniversalProcPtr;
 
1161
{$endc} 
 
1162
{$ifc OPAQUE_UPP_TYPES}
 
1163
        MoviePrePrerollCompleteUPP = ^SInt32; { an opaque UPP }
 
1164
{$elsec}
 
1165
        MoviePrePrerollCompleteUPP = UniversalProcPtr;
 
1166
{$endc} 
 
1167
{$ifc OPAQUE_UPP_TYPES}
 
1168
        QTNextTaskNeededSoonerCallbackUPP = ^SInt32; { an opaque UPP }
 
1169
{$elsec}
 
1170
        QTNextTaskNeededSoonerCallbackUPP = UniversalProcPtr;
 
1171
{$endc} 
 
1172
{$ifc OPAQUE_UPP_TYPES}
 
1173
        MoviesErrorUPP = ^SInt32; { an opaque UPP }
 
1174
{$elsec}
 
1175
        MoviesErrorUPP = UniversalProcPtr;
 
1176
{$endc} 
 
1177
        MediaHandler                                            = ComponentInstance;
 
1178
        DataHandler                                                     = ComponentInstance;
 
1179
        MediaHandlerComponent                           = Component;
 
1180
        DataHandlerComponent                            = Component;
 
1181
        HandlerError                                            = ComponentResult;
 
1182
 
 
1183
const
 
1184
        keepInRam                                       = $01;                                                  {  load and make non-purgable }
 
1185
        unkeepInRam                                     = $02;                                                  {  mark as purgable }
 
1186
        flushFromRam                            = $04;                                                  {  empty those handles }
 
1187
        loadForwardTrackEdits           = $08;                                                  {     load track edits into ram for playing forward }
 
1188
        loadBackwardTrackEdits          = $10;                                                  {     load track edits into ram for playing in reverse }
 
1189
 
 
1190
        newMovieActive                          = $01;
 
1191
        newMovieDontResolveDataRefs     = $02;
 
1192
        newMovieDontAskUnresolvedDataRefs = $04;
 
1193
        newMovieDontAutoAlternates      = $08;
 
1194
        newMovieDontUpdateForeBackPointers = $10;
 
1195
        newMovieDontAutoUpdateClock     = $20;
 
1196
        newMovieAsyncOK                         = $0100;
 
1197
        newMovieIdleImportOK            = $0400;
 
1198
        newMovieDontInteractWithUser = $0800;
 
1199
 
 
1200
        {        track usage bits       }
 
1201
        trackUsageInMovie                       = $02;
 
1202
        trackUsageInPreview                     = $04;
 
1203
        trackUsageInPoster                      = $08;
 
1204
 
 
1205
        {        Add/GetMediaSample flags       }
 
1206
        mediaSampleNotSync                      = $01;                                                  {  sample is not a sync sample (eg. is frame differenced  }
 
1207
        mediaSampleShadowSync           = $02;                                                  {  sample is a shadow sync  }
 
1208
 
 
1209
        pasteInParallel                         = $01;
 
1210
        showUserSettingsDialog          = $02;
 
1211
        movieToFileOnlyExport           = $04;
 
1212
        movieFileSpecValid                      = $08;
 
1213
 
 
1214
        nextTimeMediaSample                     = $01;
 
1215
        nextTimeMediaEdit                       = $02;
 
1216
        nextTimeTrackEdit                       = $04;
 
1217
        nextTimeSyncSample                      = $08;
 
1218
        nextTimeStep                            = $10;
 
1219
        nextTimeEdgeOK                          = $4000;
 
1220
        nextTimeIgnoreActiveSegment     = $8000;
 
1221
 
 
1222
 
 
1223
type
 
1224
        nextTimeFlagsEnum                                       = UInt16;
 
1225
 
 
1226
const
 
1227
        createMovieFileDeleteCurFile = $80000000;
 
1228
        createMovieFileDontCreateMovie = $40000000;
 
1229
        createMovieFileDontOpenFile     = $20000000;
 
1230
        createMovieFileDontCreateResFile = $10000000;
 
1231
 
 
1232
 
 
1233
type
 
1234
        createMovieFileFlagsEnum                        = UInt32;
 
1235
 
 
1236
const
 
1237
        flattenAddMovieToDataFork       = $00000001;
 
1238
        flattenActiveTracksOnly         = $00000004;
 
1239
        flattenDontInterleaveFlatten = $00000008;
 
1240
        flattenFSSpecPtrIsDataRefRecordPtr = $00000010;
 
1241
        flattenCompressMovieResource = $00000020;
 
1242
        flattenForceMovieResourceBeforeMovieData = $00000040;
 
1243
 
 
1244
 
 
1245
type
 
1246
        movieFlattenFlagsEnum                           = UInt32;
 
1247
 
 
1248
const
 
1249
        movieInDataForkResID            = -1;                                                   {  magic res ID  }
 
1250
 
 
1251
        mcTopLeftMovie                          = $01;                                                  {  usually centered  }
 
1252
        mcScaleMovieToFit                       = $02;                                                  {  usually only scales down  }
 
1253
        mcWithBadge                                     = $04;                                                  {  give me a badge  }
 
1254
        mcNotVisible                            = $08;                                                  {  don't show controller  }
 
1255
        mcWithFrame                                     = $10;                                                  {  gimme a frame  }
 
1256
 
 
1257
        movieScrapDontZeroScrap         = $01;
 
1258
        movieScrapOnlyPutMovie          = $02;
 
1259
 
 
1260
        dataRefSelfReference            = $01;
 
1261
        dataRefWasNotResolved           = $02;
 
1262
 
 
1263
 
 
1264
type
 
1265
        dataRefAttributesFlags                          = UInt32;
 
1266
 
 
1267
const
 
1268
        kMovieAnchorDataRefIsDefault = $01;                                                     {  data ref returned is movie default data ref  }
 
1269
 
 
1270
        hintsScrubMode                          = $01;                                                  {  mask == && (if flags == scrub on, flags != scrub off)  }
 
1271
        hintsLoop                                       = $02;
 
1272
        hintsDontPurge                          = $04;
 
1273
        hintsUseScreenBuffer            = $20;
 
1274
        hintsAllowInterlace                     = $40;
 
1275
        hintsUseSoundInterp                     = $80;
 
1276
        hintsHighQuality                        = $0100;                                                {  slooooow  }
 
1277
        hintsPalindrome                         = $0200;
 
1278
        hintsInactive                           = $0800;
 
1279
        hintsOffscreen                          = $1000;
 
1280
        hintsDontDraw                           = $2000;
 
1281
        hintsAllowBlacklining           = $4000;
 
1282
        hintsDontUseVideoOverlaySurface = $00010000;
 
1283
        hintsIgnoreBandwidthRestrictions = $00020000;
 
1284
        hintsPlayingEveryFrame          = $00040000;
 
1285
        hintsAllowDynamicResize         = $00080000;
 
1286
        hintsSingleField                        = $00100000;
 
1287
        hintsNoRenderingTimeOut         = $00200000;
 
1288
        hintsFlushVideoInsteadOfDirtying = $00400000;
 
1289
        hintsEnableSubPixelPositioning = $00800000;
 
1290
 
 
1291
 
 
1292
type
 
1293
        playHintsEnum                                           = UInt32;
 
1294
 
 
1295
const
 
1296
        mediaHandlerFlagBaseClient      = 1;
 
1297
 
 
1298
 
 
1299
type
 
1300
        mediaHandlerFlagsEnum                           = UInt32;
 
1301
 
 
1302
const
 
1303
        movieTrackMediaType                     = $01;
 
1304
        movieTrackCharacteristic        = $02;
 
1305
        movieTrackEnabledOnly           = $04;
 
1306
 
 
1307
 
 
1308
type
 
1309
        SampleReferenceRecordPtr = ^SampleReferenceRecord;
 
1310
        SampleReferenceRecord = record
 
1311
                dataOffset:                             SInt32;
 
1312
                dataSize:                               SInt32;
 
1313
                durationPerSample:              TimeValue;
 
1314
                numberOfSamples:                SInt32;
 
1315
                sampleFlags:                    SInt16;
 
1316
        end;
 
1317
 
 
1318
        SampleReferencePtr                                      = ^SampleReferenceRecord;
 
1319
        SampleReference64RecordPtr = ^SampleReference64Record;
 
1320
        SampleReference64Record = record
 
1321
                dataOffset:                             wide;
 
1322
                dataSize:                               UInt32;
 
1323
                durationPerSample:              TimeValue;
 
1324
                numberOfSamples:                UInt32;
 
1325
                sampleFlags:                    SInt16;
 
1326
        end;
 
1327
 
 
1328
        SampleReference64Ptr                            = ^SampleReference64Record;
 
1329
 
 
1330
        {       ************************
 
1331
        * Initialization Routines 
 
1332
        *************************       }
 
1333
        {
 
1334
         *  CheckQuickTimeRegistration()
 
1335
         *  
 
1336
         *  Availability:
 
1337
         *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
1338
         *    CarbonLib:        in CarbonLib 1.1 and later
 
1339
         *    Mac OS X:         in version 10.0 and later
 
1340
         *    Windows:          in qtmlClient.lib 3.0 and later
 
1341
                }
 
1342
procedure CheckQuickTimeRegistration(registrationKey: UnivPtr; flags: SInt32); external name '_CheckQuickTimeRegistration';
 
1343
{
 
1344
 *  EnterMovies()
 
1345
 *  
 
1346
 *  Availability:
 
1347
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1348
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1349
 *    Mac OS X:         in version 10.0 and later
 
1350
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1351
 }
 
1352
function EnterMovies: OSErr; external name '_EnterMovies';
 
1353
{
 
1354
 *  ExitMovies()
 
1355
 *  
 
1356
 *  Availability:
 
1357
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1358
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1359
 *    Mac OS X:         in version 10.0 and later
 
1360
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1361
 }
 
1362
procedure ExitMovies; external name '_ExitMovies';
 
1363
{************************
 
1364
* Error Routines 
 
1365
*************************}
 
1366
 
 
1367
{
 
1368
 *  GetMoviesError()
 
1369
 *  
 
1370
 *  Availability:
 
1371
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1372
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1373
 *    Mac OS X:         in version 10.0 and later
 
1374
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1375
 }
 
1376
function GetMoviesError: OSErr; external name '_GetMoviesError';
 
1377
{
 
1378
 *  ClearMoviesStickyError()
 
1379
 *  
 
1380
 *  Availability:
 
1381
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1382
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1383
 *    Mac OS X:         in version 10.0 and later
 
1384
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1385
 }
 
1386
procedure ClearMoviesStickyError; external name '_ClearMoviesStickyError';
 
1387
{
 
1388
 *  GetMoviesStickyError()
 
1389
 *  
 
1390
 *  Availability:
 
1391
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1392
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1393
 *    Mac OS X:         in version 10.0 and later
 
1394
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1395
 }
 
1396
function GetMoviesStickyError: OSErr; external name '_GetMoviesStickyError';
 
1397
{
 
1398
 *  SetMoviesErrorProc()
 
1399
 *  
 
1400
 *  Availability:
 
1401
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1402
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1403
 *    Mac OS X:         in version 10.0 and later
 
1404
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1405
 }
 
1406
procedure SetMoviesErrorProc(errProc: MoviesErrorUPP; refcon: SInt32); external name '_SetMoviesErrorProc';
 
1407
{************************
 
1408
* Idle Routines 
 
1409
*************************}
 
1410
{
 
1411
 *  MoviesTask()
 
1412
 *  
 
1413
 *  Availability:
 
1414
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1415
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1416
 *    Mac OS X:         in version 10.0 and later
 
1417
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1418
 }
 
1419
procedure MoviesTask(theMovie: Movie; maxMilliSecToUse: SInt32); external name '_MoviesTask';
 
1420
{
 
1421
 *  PrerollMovie()
 
1422
 *  
 
1423
 *  Availability:
 
1424
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1425
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1426
 *    Mac OS X:         in version 10.0 and later
 
1427
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1428
 }
 
1429
function PrerollMovie(theMovie: Movie; time: TimeValue; Rate: Fixed): OSErr; external name '_PrerollMovie';
 
1430
{
 
1431
 *  PrePrerollMovie()
 
1432
 *  
 
1433
 *  Availability:
 
1434
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
1435
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
1436
 *    Mac OS X:         in version 10.0 and later
 
1437
 *    Windows:          in qtmlClient.lib 4.0 and later
 
1438
 }
 
1439
function PrePrerollMovie(m: Movie; time: TimeValue; rate: Fixed; proc: MoviePrePrerollCompleteUPP; refcon: UnivPtr): OSErr; external name '_PrePrerollMovie';
 
1440
{
 
1441
 *  AbortPrePrerollMovie()
 
1442
 *  
 
1443
 *  Availability:
 
1444
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
1445
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
1446
 *    Mac OS X:         in version 10.0 and later
 
1447
 *    Windows:          in qtmlClient.lib 4.0 and later
 
1448
 }
 
1449
procedure AbortPrePrerollMovie(m: Movie; err: OSErr); external name '_AbortPrePrerollMovie';
 
1450
{
 
1451
 *  LoadMovieIntoRam()
 
1452
 *  
 
1453
 *  Availability:
 
1454
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1455
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1456
 *    Mac OS X:         in version 10.0 and later
 
1457
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1458
 }
 
1459
function LoadMovieIntoRam(theMovie: Movie; time: TimeValue; duration: TimeValue; flags: SInt32): OSErr; external name '_LoadMovieIntoRam';
 
1460
{
 
1461
 *  LoadTrackIntoRam()
 
1462
 *  
 
1463
 *  Availability:
 
1464
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1465
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1466
 *    Mac OS X:         in version 10.0 and later
 
1467
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1468
 }
 
1469
function LoadTrackIntoRam(theTrack: Track; time: TimeValue; duration: TimeValue; flags: SInt32): OSErr; external name '_LoadTrackIntoRam';
 
1470
{
 
1471
 *  LoadMediaIntoRam()
 
1472
 *  
 
1473
 *  Availability:
 
1474
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1475
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1476
 *    Mac OS X:         in version 10.0 and later
 
1477
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1478
 }
 
1479
function LoadMediaIntoRam(theMedia: Media; time: TimeValue; duration: TimeValue; flags: SInt32): OSErr; external name '_LoadMediaIntoRam';
 
1480
{
 
1481
 *  SetMovieActive()
 
1482
 *  
 
1483
 *  Availability:
 
1484
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1485
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1486
 *    Mac OS X:         in version 10.0 and later
 
1487
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1488
 }
 
1489
procedure SetMovieActive(theMovie: Movie; active: boolean); external name '_SetMovieActive';
 
1490
{
 
1491
 *  GetMovieActive()
 
1492
 *  
 
1493
 *  Availability:
 
1494
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1495
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1496
 *    Mac OS X:         in version 10.0 and later
 
1497
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1498
 }
 
1499
function GetMovieActive(theMovie: Movie): boolean; external name '_GetMovieActive';
 
1500
{
 
1501
 *  QTGetWallClockTimeBase()
 
1502
 *  
 
1503
 *  Availability:
 
1504
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1505
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1506
 *    Mac OS X:         in version 10.2 and later
 
1507
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1508
 }
 
1509
function QTGetWallClockTimeBase(var wallClockTimeBase: TimeBase): OSErr; external name '_QTGetWallClockTimeBase';
 
1510
{************************
 
1511
* Idle Management
 
1512
*************************}
 
1513
 
 
1514
type
 
1515
        IdleManager    = ^SInt32; { an opaque 32-bit type }
 
1516
        IdleManagerPtr = ^IdleManager;  { when a var xx:IdleManager parameter can be nil, it is changed to xx: IdleManagerPtr }
 
1517
        {
 
1518
         *  QTIdleManagerOpen()
 
1519
         *  
 
1520
         *  Availability:
 
1521
         *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1522
         *    CarbonLib:        in CarbonLib 1.6 and later
 
1523
         *    Mac OS X:         in version 10.2 and later
 
1524
         *    Windows:          in qtmlClient.lib 6.0 and later
 
1525
                }
 
1526
function QTIdleManagerOpen: IdleManager; external name '_QTIdleManagerOpen';
 
1527
{
 
1528
 *  QTIdleManagerClose()
 
1529
 *  
 
1530
 *  Availability:
 
1531
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1532
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1533
 *    Mac OS X:         in version 10.2 and later
 
1534
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1535
 }
 
1536
function QTIdleManagerClose(im: IdleManager): OSErr; external name '_QTIdleManagerClose';
 
1537
{
 
1538
 *  QTIdleManagerGetNextIdleTime()
 
1539
 *  
 
1540
 *  Availability:
 
1541
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1542
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1543
 *    Mac OS X:         in version 10.2 and later
 
1544
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1545
 }
 
1546
function QTIdleManagerGetNextIdleTime(im: IdleManager; var nextIdle: TimeRecord): OSErr; external name '_QTIdleManagerGetNextIdleTime';
 
1547
{
 
1548
 *  QTIdleManagerSetNextIdleTime()
 
1549
 *  
 
1550
 *  Availability:
 
1551
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1552
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1553
 *    Mac OS X:         in version 10.2 and later
 
1554
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1555
 }
 
1556
function QTIdleManagerSetNextIdleTime(im: IdleManager; var nextIdle: TimeRecord): OSErr; external name '_QTIdleManagerSetNextIdleTime';
 
1557
{
 
1558
 *  QTIdleManagerSetNextIdleTimeNever()
 
1559
 *  
 
1560
 *  Availability:
 
1561
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1562
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1563
 *    Mac OS X:         in version 10.2 and later
 
1564
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1565
 }
 
1566
function QTIdleManagerSetNextIdleTimeNever(im: IdleManager): OSErr; external name '_QTIdleManagerSetNextIdleTimeNever';
 
1567
{
 
1568
 *  QTIdleManagerSetNextIdleTimeNow()
 
1569
 *  
 
1570
 *  Availability:
 
1571
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1572
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1573
 *    Mac OS X:         in version 10.2 and later
 
1574
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1575
 }
 
1576
function QTIdleManagerSetNextIdleTimeNow(im: IdleManager): OSErr; external name '_QTIdleManagerSetNextIdleTimeNow';
 
1577
{
 
1578
 *  QTIdleManagerSetNextIdleTimeDelta()
 
1579
 *  
 
1580
 *  Availability:
 
1581
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1582
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1583
 *    Mac OS X:         in version 10.2 and later
 
1584
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1585
 }
 
1586
function QTIdleManagerSetNextIdleTimeDelta(im: IdleManager; duration: TimeValue; scale: TimeScale): OSErr; external name '_QTIdleManagerSetNextIdleTimeDelta';
 
1587
{
 
1588
 *  QTIdleManagerSetParent()
 
1589
 *  
 
1590
 *  Availability:
 
1591
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1592
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1593
 *    Mac OS X:         in version 10.2 and later
 
1594
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1595
 }
 
1596
function QTIdleManagerSetParent(im: IdleManager; parent: IdleManager): OSErr; external name '_QTIdleManagerSetParent';
 
1597
{
 
1598
 *  QTIdleManagerNeedsAnIdle()
 
1599
 *  
 
1600
 *  Availability:
 
1601
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1602
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1603
 *    Mac OS X:         in version 10.2 and later
 
1604
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1605
 }
 
1606
function QTIdleManagerNeedsAnIdle(im: IdleManager; var needsOne: boolean): OSErr; external name '_QTIdleManagerNeedsAnIdle';
 
1607
{************************
 
1608
* Carbon Movie Control
 
1609
*************************}
 
1610
{  Movie Control option bits }
 
1611
 
 
1612
const
 
1613
        kMovieControlOptionHideController = $00000001;
 
1614
        kMovieControlOptionLocateTopLeft = $00000002;
 
1615
        kMovieControlOptionEnableEditing = $00000004;
 
1616
        kMovieControlOptionHandleEditingHI = $00000008;
 
1617
        kMovieControlOptionSetKeysEnabled = $00000010;
 
1618
        kMovieControlOptionManuallyIdled = $00000020;
 
1619
 
 
1620
        {  Item tags for use in GetControlData() (some with SetControlData()) calls on Movie Controls }
 
1621
        kMovieControlDataMovieController = $6D632020 (* 'mc  ' *);
 
1622
        kMovieControlDataMovie          = $6D6F6F76 (* 'moov' *);
 
1623
        kMovieControlDataManualIdling = $6D616E75 (* 'manu' *);
 
1624
 
 
1625
        {       
 
1626
        ** CreateMovieControl() -   This is the public API routine that creates a Movie Control. Given a window and location
 
1627
        **                          plus a movie, it constructs a Movie Control with a Movie Controller in the window.
 
1628
                }
 
1629
        {
 
1630
         *  CreateMovieControl()
 
1631
         *  
 
1632
         *  Availability:
 
1633
         *    Non-Carbon CFM:   not available
 
1634
         *    CarbonLib:        in CarbonLib 1.6 and later
 
1635
         *    Mac OS X:         in version 10.2 and later
 
1636
                }
 
1637
function CreateMovieControl(theWindow: WindowRef; var localRect: Rect; theMovie: Movie; options: UInt32; var returnedControl: ControlRef): OSErr; external name '_CreateMovieControl';
 
1638
{************************
 
1639
* calls for playing movies, previews, posters
 
1640
*************************}
 
1641
{
 
1642
 *  StartMovie()
 
1643
 *  
 
1644
 *  Availability:
 
1645
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1646
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1647
 *    Mac OS X:         in version 10.0 and later
 
1648
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1649
 }
 
1650
procedure StartMovie(theMovie: Movie); external name '_StartMovie';
 
1651
{
 
1652
 *  StopMovie()
 
1653
 *  
 
1654
 *  Availability:
 
1655
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1656
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1657
 *    Mac OS X:         in version 10.0 and later
 
1658
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1659
 }
 
1660
procedure StopMovie(theMovie: Movie); external name '_StopMovie';
 
1661
{
 
1662
 *  GoToBeginningOfMovie()
 
1663
 *  
 
1664
 *  Availability:
 
1665
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1666
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1667
 *    Mac OS X:         in version 10.0 and later
 
1668
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1669
 }
 
1670
procedure GoToBeginningOfMovie(theMovie: Movie); external name '_GoToBeginningOfMovie';
 
1671
{
 
1672
 *  GoToEndOfMovie()
 
1673
 *  
 
1674
 *  Availability:
 
1675
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1676
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1677
 *    Mac OS X:         in version 10.0 and later
 
1678
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1679
 }
 
1680
procedure GoToEndOfMovie(theMovie: Movie); external name '_GoToEndOfMovie';
 
1681
{
 
1682
 *  IsMovieDone()
 
1683
 *  
 
1684
 *  Availability:
 
1685
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1686
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1687
 *    Mac OS X:         in version 10.0 and later
 
1688
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1689
 }
 
1690
function IsMovieDone(theMovie: Movie): boolean; external name '_IsMovieDone';
 
1691
{
 
1692
 *  GetMoviePreviewMode()
 
1693
 *  
 
1694
 *  Availability:
 
1695
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1696
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1697
 *    Mac OS X:         in version 10.0 and later
 
1698
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1699
 }
 
1700
function GetMoviePreviewMode(theMovie: Movie): boolean; external name '_GetMoviePreviewMode';
 
1701
{
 
1702
 *  SetMoviePreviewMode()
 
1703
 *  
 
1704
 *  Availability:
 
1705
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1706
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1707
 *    Mac OS X:         in version 10.0 and later
 
1708
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1709
 }
 
1710
procedure SetMoviePreviewMode(theMovie: Movie; usePreview: boolean); external name '_SetMoviePreviewMode';
 
1711
{
 
1712
 *  ShowMoviePoster()
 
1713
 *  
 
1714
 *  Availability:
 
1715
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1716
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1717
 *    Mac OS X:         in version 10.0 and later
 
1718
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1719
 }
 
1720
procedure ShowMoviePoster(theMovie: Movie); external name '_ShowMoviePoster';
 
1721
{
 
1722
 *  PlayMoviePreview()
 
1723
 *  
 
1724
 *  Availability:
 
1725
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1726
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1727
 *    Mac OS X:         in version 10.0 and later
 
1728
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1729
 }
 
1730
procedure PlayMoviePreview(theMovie: Movie; callOutProc: MoviePreviewCallOutUPP; refcon: SInt32); external name '_PlayMoviePreview';
 
1731
{************************
 
1732
* calls for controlling movies & tracks which are playing
 
1733
*************************}
 
1734
{
 
1735
 *  GetMovieTimeBase()
 
1736
 *  
 
1737
 *  Availability:
 
1738
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1739
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1740
 *    Mac OS X:         in version 10.0 and later
 
1741
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1742
 }
 
1743
function GetMovieTimeBase(theMovie: Movie): TimeBase; external name '_GetMovieTimeBase';
 
1744
{
 
1745
 *  SetMovieMasterTimeBase()
 
1746
 *  
 
1747
 *  Availability:
 
1748
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1749
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1750
 *    Mac OS X:         in version 10.0 and later
 
1751
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1752
 }
 
1753
procedure SetMovieMasterTimeBase(theMovie: Movie; tb: TimeBase; const (*var*) slaveZero: TimeRecord); external name '_SetMovieMasterTimeBase';
 
1754
{
 
1755
 *  SetMovieMasterClock()
 
1756
 *  
 
1757
 *  Availability:
 
1758
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1759
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1760
 *    Mac OS X:         in version 10.0 and later
 
1761
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1762
 }
 
1763
procedure SetMovieMasterClock(theMovie: Movie; clockMeister: Component; const (*var*) slaveZero: TimeRecord); external name '_SetMovieMasterClock';
 
1764
{
 
1765
 *  ChooseMovieClock()
 
1766
 *  
 
1767
 *  Availability:
 
1768
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
1769
 *    CarbonLib:        in CarbonLib 1.6 and later
 
1770
 *    Mac OS X:         in version 10.2 and later
 
1771
 *    Windows:          in qtmlClient.lib 6.0 and later
 
1772
 }
 
1773
procedure ChooseMovieClock(m: Movie; flags: SInt32); external name '_ChooseMovieClock';
 
1774
{
 
1775
 *  GetMovieGWorld()
 
1776
 *  
 
1777
 *  Availability:
 
1778
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1779
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1780
 *    Mac OS X:         in version 10.0 and later
 
1781
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1782
 }
 
1783
procedure GetMovieGWorld(theMovie: Movie; var port: CGrafPtr; var gdh: GDHandle); external name '_GetMovieGWorld';
 
1784
{
 
1785
 *  SetMovieGWorld()
 
1786
 *  
 
1787
 *  Availability:
 
1788
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1789
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1790
 *    Mac OS X:         in version 10.0 and later
 
1791
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1792
 }
 
1793
procedure SetMovieGWorld(theMovie: Movie; port: CGrafPtr; gdh: GDHandle); external name '_SetMovieGWorld';
 
1794
const
 
1795
        movieDrawingCallWhenChanged     = 0;
 
1796
        movieDrawingCallAlways          = 1;
 
1797
 
 
1798
        {
 
1799
         *  SetMovieDrawingCompleteProc()
 
1800
         *  
 
1801
         *  Availability:
 
1802
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1803
         *    CarbonLib:        in CarbonLib 1.0 and later
 
1804
         *    Mac OS X:         in version 10.0 and later
 
1805
         *    Windows:          in qtmlClient.lib 3.0 and later
 
1806
                }
 
1807
procedure SetMovieDrawingCompleteProc(theMovie: Movie; flags: SInt32; proc: MovieDrawingCompleteUPP; refCon: SInt32); external name '_SetMovieDrawingCompleteProc';
 
1808
{
 
1809
 *  GetMovieNaturalBoundsRect()
 
1810
 *  
 
1811
 *  Availability:
 
1812
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1813
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1814
 *    Mac OS X:         in version 10.0 and later
 
1815
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1816
 }
 
1817
procedure GetMovieNaturalBoundsRect(theMovie: Movie; var naturalBounds: Rect); external name '_GetMovieNaturalBoundsRect';
 
1818
{
 
1819
 *  GetNextTrackForCompositing()
 
1820
 *  
 
1821
 *  Availability:
 
1822
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1823
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1824
 *    Mac OS X:         in version 10.0 and later
 
1825
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1826
 }
 
1827
function GetNextTrackForCompositing(theMovie: Movie; theTrack: Track): Track; external name '_GetNextTrackForCompositing';
 
1828
{
 
1829
 *  GetPrevTrackForCompositing()
 
1830
 *  
 
1831
 *  Availability:
 
1832
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1833
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1834
 *    Mac OS X:         in version 10.0 and later
 
1835
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1836
 }
 
1837
function GetPrevTrackForCompositing(theMovie: Movie; theTrack: Track): Track; external name '_GetPrevTrackForCompositing';
 
1838
{
 
1839
 *  SetTrackGWorld()
 
1840
 *  
 
1841
 *  Availability:
 
1842
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1843
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1844
 *    Mac OS X:         in version 10.0 and later
 
1845
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1846
 }
 
1847
procedure SetTrackGWorld(theTrack: Track; port: CGrafPtr; gdh: GDHandle; proc: TrackTransferUPP; refCon: SInt32); external name '_SetTrackGWorld';
 
1848
{
 
1849
 *  GetMoviePict()
 
1850
 *  
 
1851
 *  Availability:
 
1852
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1853
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1854
 *    Mac OS X:         in version 10.0 and later
 
1855
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1856
 }
 
1857
function GetMoviePict(theMovie: Movie; time: TimeValue): PicHandle; external name '_GetMoviePict';
 
1858
{
 
1859
 *  GetTrackPict()
 
1860
 *  
 
1861
 *  Availability:
 
1862
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1863
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1864
 *    Mac OS X:         in version 10.0 and later
 
1865
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1866
 }
 
1867
function GetTrackPict(theTrack: Track; time: TimeValue): PicHandle; external name '_GetTrackPict';
 
1868
{
 
1869
 *  GetMoviePosterPict()
 
1870
 *  
 
1871
 *  Availability:
 
1872
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1873
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1874
 *    Mac OS X:         in version 10.0 and later
 
1875
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1876
 }
 
1877
function GetMoviePosterPict(theMovie: Movie): PicHandle; external name '_GetMoviePosterPict';
 
1878
{ called between Begin & EndUpdate }
 
1879
{
 
1880
 *  UpdateMovie()
 
1881
 *  
 
1882
 *  Availability:
 
1883
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1884
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1885
 *    Mac OS X:         in version 10.0 and later
 
1886
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1887
 }
 
1888
function UpdateMovie(theMovie: Movie): OSErr; external name '_UpdateMovie';
 
1889
{
 
1890
 *  InvalidateMovieRegion()
 
1891
 *  
 
1892
 *  Availability:
 
1893
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1894
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1895
 *    Mac OS X:         in version 10.0 and later
 
1896
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1897
 }
 
1898
function InvalidateMovieRegion(theMovie: Movie; invalidRgn: RgnHandle): OSErr; external name '_InvalidateMovieRegion';
 
1899
{*** spatial movie routines ***}
 
1900
{
 
1901
 *  GetMovieBox()
 
1902
 *  
 
1903
 *  Availability:
 
1904
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1905
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1906
 *    Mac OS X:         in version 10.0 and later
 
1907
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1908
 }
 
1909
procedure GetMovieBox(theMovie: Movie; var boxRect: Rect); external name '_GetMovieBox';
 
1910
{
 
1911
 *  SetMovieBox()
 
1912
 *  
 
1913
 *  Availability:
 
1914
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1915
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1916
 *    Mac OS X:         in version 10.0 and later
 
1917
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1918
 }
 
1919
procedure SetMovieBox(theMovie: Movie; const (*var*) boxRect: Rect); external name '_SetMovieBox';
 
1920
{* movie display clip }
 
1921
{
 
1922
 *  GetMovieDisplayClipRgn()
 
1923
 *  
 
1924
 *  Availability:
 
1925
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1926
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1927
 *    Mac OS X:         in version 10.0 and later
 
1928
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1929
 }
 
1930
function GetMovieDisplayClipRgn(theMovie: Movie): RgnHandle; external name '_GetMovieDisplayClipRgn';
 
1931
{
 
1932
 *  SetMovieDisplayClipRgn()
 
1933
 *  
 
1934
 *  Availability:
 
1935
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1936
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1937
 *    Mac OS X:         in version 10.0 and later
 
1938
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1939
 }
 
1940
procedure SetMovieDisplayClipRgn(theMovie: Movie; theClip: RgnHandle); external name '_SetMovieDisplayClipRgn';
 
1941
{* movie src clip }
 
1942
{
 
1943
 *  GetMovieClipRgn()
 
1944
 *  
 
1945
 *  Availability:
 
1946
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1947
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1948
 *    Mac OS X:         in version 10.0 and later
 
1949
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1950
 }
 
1951
function GetMovieClipRgn(theMovie: Movie): RgnHandle; external name '_GetMovieClipRgn';
 
1952
{
 
1953
 *  SetMovieClipRgn()
 
1954
 *  
 
1955
 *  Availability:
 
1956
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1957
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1958
 *    Mac OS X:         in version 10.0 and later
 
1959
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1960
 }
 
1961
procedure SetMovieClipRgn(theMovie: Movie; theClip: RgnHandle); external name '_SetMovieClipRgn';
 
1962
{* track src clip }
 
1963
{
 
1964
 *  GetTrackClipRgn()
 
1965
 *  
 
1966
 *  Availability:
 
1967
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1968
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1969
 *    Mac OS X:         in version 10.0 and later
 
1970
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1971
 }
 
1972
function GetTrackClipRgn(theTrack: Track): RgnHandle; external name '_GetTrackClipRgn';
 
1973
{
 
1974
 *  SetTrackClipRgn()
 
1975
 *  
 
1976
 *  Availability:
 
1977
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1978
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1979
 *    Mac OS X:         in version 10.0 and later
 
1980
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1981
 }
 
1982
procedure SetTrackClipRgn(theTrack: Track; theClip: RgnHandle); external name '_SetTrackClipRgn';
 
1983
{* bounds in display space (not clipped by display clip) }
 
1984
{
 
1985
 *  GetMovieDisplayBoundsRgn()
 
1986
 *  
 
1987
 *  Availability:
 
1988
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1989
 *    CarbonLib:        in CarbonLib 1.0 and later
 
1990
 *    Mac OS X:         in version 10.0 and later
 
1991
 *    Windows:          in qtmlClient.lib 3.0 and later
 
1992
 }
 
1993
function GetMovieDisplayBoundsRgn(theMovie: Movie): RgnHandle; external name '_GetMovieDisplayBoundsRgn';
 
1994
{
 
1995
 *  GetTrackDisplayBoundsRgn()
 
1996
 *  
 
1997
 *  Availability:
 
1998
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
1999
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2000
 *    Mac OS X:         in version 10.0 and later
 
2001
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2002
 }
 
2003
function GetTrackDisplayBoundsRgn(theTrack: Track): RgnHandle; external name '_GetTrackDisplayBoundsRgn';
 
2004
{* bounds in movie space }
 
2005
{
 
2006
 *  GetMovieBoundsRgn()
 
2007
 *  
 
2008
 *  Availability:
 
2009
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2010
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2011
 *    Mac OS X:         in version 10.0 and later
 
2012
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2013
 }
 
2014
function GetMovieBoundsRgn(theMovie: Movie): RgnHandle; external name '_GetMovieBoundsRgn';
 
2015
{
 
2016
 *  GetTrackMovieBoundsRgn()
 
2017
 *  
 
2018
 *  Availability:
 
2019
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2020
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2021
 *    Mac OS X:         in version 10.0 and later
 
2022
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2023
 }
 
2024
function GetTrackMovieBoundsRgn(theTrack: Track): RgnHandle; external name '_GetTrackMovieBoundsRgn';
 
2025
{* bounds in track space }
 
2026
{
 
2027
 *  GetTrackBoundsRgn()
 
2028
 *  
 
2029
 *  Availability:
 
2030
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2031
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2032
 *    Mac OS X:         in version 10.0 and later
 
2033
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2034
 }
 
2035
function GetTrackBoundsRgn(theTrack: Track): RgnHandle; external name '_GetTrackBoundsRgn';
 
2036
{* mattes - always in track space }
 
2037
{
 
2038
 *  GetTrackMatte()
 
2039
 *  
 
2040
 *  Availability:
 
2041
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2042
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2043
 *    Mac OS X:         in version 10.0 and later
 
2044
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2045
 }
 
2046
function GetTrackMatte(theTrack: Track): PixMapHandle; external name '_GetTrackMatte';
 
2047
{
 
2048
 *  SetTrackMatte()
 
2049
 *  
 
2050
 *  Availability:
 
2051
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2052
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2053
 *    Mac OS X:         in version 10.0 and later
 
2054
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2055
 }
 
2056
procedure SetTrackMatte(theTrack: Track; theMatte: PixMapHandle); external name '_SetTrackMatte';
 
2057
{
 
2058
 *  DisposeMatte()
 
2059
 *  
 
2060
 *  Availability:
 
2061
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2062
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2063
 *    Mac OS X:         in version 10.0 and later
 
2064
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2065
 }
 
2066
procedure DisposeMatte(theMatte: PixMapHandle); external name '_DisposeMatte';
 
2067
{* video out }
 
2068
{
 
2069
 *  SetMovieVideoOutput()
 
2070
 *  
 
2071
 *  Availability:
 
2072
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
2073
 *    CarbonLib:        in CarbonLib 1.3 and later
 
2074
 *    Mac OS X:         in version 10.0 and later
 
2075
 *    Windows:          in qtmlClient.lib 5.0 and later
 
2076
 }
 
2077
procedure SetMovieVideoOutput(theMovie: Movie; vout: ComponentInstance); external name '_SetMovieVideoOutput';
 
2078
{************************
 
2079
* calls for getting/saving movies
 
2080
*************************}
 
2081
{
 
2082
 *  NewMovie()
 
2083
 *  
 
2084
 *  Availability:
 
2085
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2086
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2087
 *    Mac OS X:         in version 10.0 and later
 
2088
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2089
 }
 
2090
function NewMovie(flags: SInt32): Movie; external name '_NewMovie';
 
2091
{
 
2092
 *  PutMovieIntoHandle()
 
2093
 *  
 
2094
 *  Availability:
 
2095
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2096
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2097
 *    Mac OS X:         in version 10.0 and later
 
2098
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2099
 }
 
2100
function PutMovieIntoHandle(theMovie: Movie; publicMovie: Handle): OSErr; external name '_PutMovieIntoHandle';
 
2101
{
 
2102
 *  PutMovieIntoDataFork()
 
2103
 *  
 
2104
 *  Availability:
 
2105
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2106
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2107
 *    Mac OS X:         in version 10.0 and later
 
2108
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2109
 }
 
2110
function PutMovieIntoDataFork(theMovie: Movie; fRefNum: SInt16; offset: SInt32; maxSize: SInt32): OSErr; external name '_PutMovieIntoDataFork';
 
2111
{
 
2112
 *  PutMovieIntoDataFork64()
 
2113
 *  
 
2114
 *  Availability:
 
2115
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
2116
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
2117
 *    Mac OS X:         in version 10.0 and later
 
2118
 *    Windows:          in qtmlClient.lib 4.0 and later
 
2119
 }
 
2120
function PutMovieIntoDataFork64(theMovie: Movie; fRefNum: SInt32; const (*var*) offset: wide; maxSize: UInt32): OSErr; external name '_PutMovieIntoDataFork64';
 
2121
{
 
2122
 *  PutMovieIntoStorage()
 
2123
 *  
 
2124
 *  Availability:
 
2125
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
2126
 *    CarbonLib:        in CarbonLib 1.6 and later
 
2127
 *    Mac OS X:         in version 10.2 and later
 
2128
 *    Windows:          in qtmlClient.lib 6.0 and later
 
2129
 }
 
2130
function PutMovieIntoStorage(theMovie: Movie; dh: DataHandler; const (*var*) offset: wide; maxSize: UInt32): OSErr; external name '_PutMovieIntoStorage';
 
2131
{
 
2132
 *  PutMovieForDataRefIntoHandle()
 
2133
 *  
 
2134
 *  Availability:
 
2135
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
2136
 *    CarbonLib:        in CarbonLib 1.6 and later
 
2137
 *    Mac OS X:         in version 10.2 and later
 
2138
 *    Windows:          in qtmlClient.lib 6.0 and later
 
2139
 }
 
2140
function PutMovieForDataRefIntoHandle(theMovie: Movie; dataRef: Handle; dataRefType: OSType; publicMovie: Handle): OSErr; external name '_PutMovieForDataRefIntoHandle';
 
2141
{
 
2142
 *  DisposeMovie()
 
2143
 *  
 
2144
 *  Availability:
 
2145
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2146
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2147
 *    Mac OS X:         in version 10.0 and later
 
2148
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2149
 }
 
2150
procedure DisposeMovie(theMovie: Movie); external name '_DisposeMovie';
 
2151
{************************
 
2152
* Movie State Routines
 
2153
*************************}
 
2154
{
 
2155
 *  GetMovieCreationTime()
 
2156
 *  
 
2157
 *  Availability:
 
2158
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2159
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2160
 *    Mac OS X:         in version 10.0 and later
 
2161
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2162
 }
 
2163
function GetMovieCreationTime(theMovie: Movie): UInt32; external name '_GetMovieCreationTime';
 
2164
{
 
2165
 *  GetMovieModificationTime()
 
2166
 *  
 
2167
 *  Availability:
 
2168
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2169
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2170
 *    Mac OS X:         in version 10.0 and later
 
2171
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2172
 }
 
2173
function GetMovieModificationTime(theMovie: Movie): UInt32; external name '_GetMovieModificationTime';
 
2174
{
 
2175
 *  GetMovieTimeScale()
 
2176
 *  
 
2177
 *  Availability:
 
2178
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2179
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2180
 *    Mac OS X:         in version 10.0 and later
 
2181
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2182
 }
 
2183
function GetMovieTimeScale(theMovie: Movie): TimeScale; external name '_GetMovieTimeScale';
 
2184
{
 
2185
 *  SetMovieTimeScale()
 
2186
 *  
 
2187
 *  Availability:
 
2188
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2189
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2190
 *    Mac OS X:         in version 10.0 and later
 
2191
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2192
 }
 
2193
procedure SetMovieTimeScale(theMovie: Movie; timeScale_: TimeScale); external name '_SetMovieTimeScale';
 
2194
{
 
2195
 *  GetMovieDuration()
 
2196
 *  
 
2197
 *  Availability:
 
2198
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2199
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2200
 *    Mac OS X:         in version 10.0 and later
 
2201
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2202
 }
 
2203
function GetMovieDuration(theMovie: Movie): TimeValue; external name '_GetMovieDuration';
 
2204
{
 
2205
 *  GetMovieRate()
 
2206
 *  
 
2207
 *  Availability:
 
2208
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2209
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2210
 *    Mac OS X:         in version 10.0 and later
 
2211
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2212
 }
 
2213
function GetMovieRate(theMovie: Movie): Fixed; external name '_GetMovieRate';
 
2214
{
 
2215
 *  SetMovieRate()
 
2216
 *  
 
2217
 *  Availability:
 
2218
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2219
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2220
 *    Mac OS X:         in version 10.0 and later
 
2221
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2222
 }
 
2223
procedure SetMovieRate(theMovie: Movie; rate: Fixed); external name '_SetMovieRate';
 
2224
{
 
2225
 *  GetMoviePreferredRate()
 
2226
 *  
 
2227
 *  Availability:
 
2228
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2229
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2230
 *    Mac OS X:         in version 10.0 and later
 
2231
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2232
 }
 
2233
function GetMoviePreferredRate(theMovie: Movie): Fixed; external name '_GetMoviePreferredRate';
 
2234
{
 
2235
 *  SetMoviePreferredRate()
 
2236
 *  
 
2237
 *  Availability:
 
2238
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2239
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2240
 *    Mac OS X:         in version 10.0 and later
 
2241
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2242
 }
 
2243
procedure SetMoviePreferredRate(theMovie: Movie; rate: Fixed); external name '_SetMoviePreferredRate';
 
2244
{
 
2245
 *  GetMoviePreferredVolume()
 
2246
 *  
 
2247
 *  Availability:
 
2248
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2249
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2250
 *    Mac OS X:         in version 10.0 and later
 
2251
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2252
 }
 
2253
function GetMoviePreferredVolume(theMovie: Movie): SInt16; external name '_GetMoviePreferredVolume';
 
2254
{
 
2255
 *  SetMoviePreferredVolume()
 
2256
 *  
 
2257
 *  Availability:
 
2258
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2259
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2260
 *    Mac OS X:         in version 10.0 and later
 
2261
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2262
 }
 
2263
procedure SetMoviePreferredVolume(theMovie: Movie; volume: SInt16); external name '_SetMoviePreferredVolume';
 
2264
{
 
2265
 *  GetMovieVolume()
 
2266
 *  
 
2267
 *  Availability:
 
2268
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2269
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2270
 *    Mac OS X:         in version 10.0 and later
 
2271
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2272
 }
 
2273
function GetMovieVolume(theMovie: Movie): SInt16; external name '_GetMovieVolume';
 
2274
{
 
2275
 *  SetMovieVolume()
 
2276
 *  
 
2277
 *  Availability:
 
2278
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2279
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2280
 *    Mac OS X:         in version 10.0 and later
 
2281
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2282
 }
 
2283
procedure SetMovieVolume(theMovie: Movie; volume: SInt16); external name '_SetMovieVolume';
 
2284
{
 
2285
 *  GetMovieMatrix()
 
2286
 *  
 
2287
 *  Availability:
 
2288
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2289
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2290
 *    Mac OS X:         in version 10.0 and later
 
2291
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2292
 }
 
2293
procedure GetMovieMatrix(theMovie: Movie; var matrix: MatrixRecord); external name '_GetMovieMatrix';
 
2294
{
 
2295
 *  SetMovieMatrix()
 
2296
 *  
 
2297
 *  Availability:
 
2298
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2299
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2300
 *    Mac OS X:         in version 10.0 and later
 
2301
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2302
 }
 
2303
procedure SetMovieMatrix(theMovie: Movie; const (*var*) matrix: MatrixRecord); external name '_SetMovieMatrix';
 
2304
{
 
2305
 *  GetMoviePreviewTime()
 
2306
 *  
 
2307
 *  Availability:
 
2308
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2309
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2310
 *    Mac OS X:         in version 10.0 and later
 
2311
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2312
 }
 
2313
procedure GetMoviePreviewTime(theMovie: Movie; var previewTime: TimeValue; var previewDuration: TimeValue); external name '_GetMoviePreviewTime';
 
2314
{
 
2315
 *  SetMoviePreviewTime()
 
2316
 *  
 
2317
 *  Availability:
 
2318
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2319
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2320
 *    Mac OS X:         in version 10.0 and later
 
2321
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2322
 }
 
2323
procedure SetMoviePreviewTime(theMovie: Movie; previewTime: TimeValue; previewDuration: TimeValue); external name '_SetMoviePreviewTime';
 
2324
{
 
2325
 *  GetMoviePosterTime()
 
2326
 *  
 
2327
 *  Availability:
 
2328
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2329
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2330
 *    Mac OS X:         in version 10.0 and later
 
2331
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2332
 }
 
2333
function GetMoviePosterTime(theMovie: Movie): TimeValue; external name '_GetMoviePosterTime';
 
2334
{
 
2335
 *  SetMoviePosterTime()
 
2336
 *  
 
2337
 *  Availability:
 
2338
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2339
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2340
 *    Mac OS X:         in version 10.0 and later
 
2341
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2342
 }
 
2343
procedure SetMoviePosterTime(theMovie: Movie; posterTime: TimeValue); external name '_SetMoviePosterTime';
 
2344
{
 
2345
 *  GetMovieSelection()
 
2346
 *  
 
2347
 *  Availability:
 
2348
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2349
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2350
 *    Mac OS X:         in version 10.0 and later
 
2351
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2352
 }
 
2353
procedure GetMovieSelection(theMovie: Movie; var selectionTime: TimeValue; var selectionDuration: TimeValue); external name '_GetMovieSelection';
 
2354
{
 
2355
 *  SetMovieSelection()
 
2356
 *  
 
2357
 *  Availability:
 
2358
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2359
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2360
 *    Mac OS X:         in version 10.0 and later
 
2361
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2362
 }
 
2363
procedure SetMovieSelection(theMovie: Movie; selectionTime: TimeValue; selectionDuration: TimeValue); external name '_SetMovieSelection';
 
2364
{
 
2365
 *  SetMovieActiveSegment()
 
2366
 *  
 
2367
 *  Availability:
 
2368
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2369
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2370
 *    Mac OS X:         in version 10.0 and later
 
2371
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2372
 }
 
2373
procedure SetMovieActiveSegment(theMovie: Movie; startTime: TimeValue; duration: TimeValue); external name '_SetMovieActiveSegment';
 
2374
{
 
2375
 *  GetMovieActiveSegment()
 
2376
 *  
 
2377
 *  Availability:
 
2378
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2379
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2380
 *    Mac OS X:         in version 10.0 and later
 
2381
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2382
 }
 
2383
procedure GetMovieActiveSegment(theMovie: Movie; var startTime: TimeValue; var duration: TimeValue); external name '_GetMovieActiveSegment';
 
2384
{
 
2385
 *  GetMovieTime()
 
2386
 *  
 
2387
 *  Availability:
 
2388
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2389
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2390
 *    Mac OS X:         in version 10.0 and later
 
2391
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2392
 }
 
2393
function GetMovieTime(theMovie: Movie; var currentTime: TimeRecord): TimeValue; external name '_GetMovieTime';
 
2394
{
 
2395
 *  SetMovieTime()
 
2396
 *  
 
2397
 *  Availability:
 
2398
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2399
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2400
 *    Mac OS X:         in version 10.0 and later
 
2401
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2402
 }
 
2403
procedure SetMovieTime(theMovie: Movie; const (*var*) newtime: TimeRecord); external name '_SetMovieTime';
 
2404
{
 
2405
 *  SetMovieTimeValue()
 
2406
 *  
 
2407
 *  Availability:
 
2408
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2409
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2410
 *    Mac OS X:         in version 10.0 and later
 
2411
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2412
 }
 
2413
procedure SetMovieTimeValue(theMovie: Movie; newtime: TimeValue); external name '_SetMovieTimeValue';
 
2414
{
 
2415
 *  GetMovieUserData()
 
2416
 *  
 
2417
 *  Availability:
 
2418
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2419
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2420
 *    Mac OS X:         in version 10.0 and later
 
2421
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2422
 }
 
2423
function GetMovieUserData(theMovie: Movie): UserData; external name '_GetMovieUserData';
 
2424
{
 
2425
 *  QTGetTimeUntilNextTask()
 
2426
 *  
 
2427
 *  Availability:
 
2428
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
2429
 *    CarbonLib:        in CarbonLib 1.6 and later
 
2430
 *    Mac OS X:         in version 10.2 and later
 
2431
 *    Windows:          in qtmlClient.lib 6.0 and later
 
2432
 }
 
2433
function QTGetTimeUntilNextTask(var duration: SInt32; scale: SInt32): OSErr; external name '_QTGetTimeUntilNextTask';
 
2434
{
 
2435
 *  QTInstallNextTaskNeededSoonerCallback()
 
2436
 *  
 
2437
 *  Availability:
 
2438
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
2439
 *    CarbonLib:        in CarbonLib 1.6 and later
 
2440
 *    Mac OS X:         in version 10.2 and later
 
2441
 *    Windows:          in qtmlClient.lib 6.0 and later
 
2442
 }
 
2443
function QTInstallNextTaskNeededSoonerCallback(callbackProc: QTNextTaskNeededSoonerCallbackUPP; scale: TimeScale; flags: UInt32; refcon: UnivPtr): OSErr; external name '_QTInstallNextTaskNeededSoonerCallback';
 
2444
{
 
2445
 *  QTUninstallNextTaskNeededSoonerCallback()
 
2446
 *  
 
2447
 *  Availability:
 
2448
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
2449
 *    CarbonLib:        in CarbonLib 1.6 and later
 
2450
 *    Mac OS X:         in version 10.2 and later
 
2451
 *    Windows:          in qtmlClient.lib 6.0 and later
 
2452
 }
 
2453
function QTUninstallNextTaskNeededSoonerCallback(callbackProc: QTNextTaskNeededSoonerCallbackUPP; refcon: UnivPtr): OSErr; external name '_QTUninstallNextTaskNeededSoonerCallback';
 
2454
{************************
 
2455
* Track/Media finding routines
 
2456
*************************}
 
2457
{
 
2458
 *  GetMovieTrackCount()
 
2459
 *  
 
2460
 *  Availability:
 
2461
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2462
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2463
 *    Mac OS X:         in version 10.0 and later
 
2464
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2465
 }
 
2466
function GetMovieTrackCount(theMovie: Movie): SInt32; external name '_GetMovieTrackCount';
 
2467
{
 
2468
 *  GetMovieTrack()
 
2469
 *  
 
2470
 *  Availability:
 
2471
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2472
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2473
 *    Mac OS X:         in version 10.0 and later
 
2474
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2475
 }
 
2476
function GetMovieTrack(theMovie: Movie; trackID: SInt32): Track; external name '_GetMovieTrack';
 
2477
{
 
2478
 *  GetMovieIndTrack()
 
2479
 *  
 
2480
 *  Availability:
 
2481
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2482
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2483
 *    Mac OS X:         in version 10.0 and later
 
2484
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2485
 }
 
2486
function GetMovieIndTrack(theMovie: Movie; index: SInt32): Track; external name '_GetMovieIndTrack';
 
2487
{
 
2488
 *  GetMovieIndTrackType()
 
2489
 *  
 
2490
 *  Availability:
 
2491
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2492
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2493
 *    Mac OS X:         in version 10.0 and later
 
2494
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2495
 }
 
2496
function GetMovieIndTrackType(theMovie: Movie; index: SInt32; trackType: OSType; flags: SInt32): Track; external name '_GetMovieIndTrackType';
 
2497
{
 
2498
 *  GetTrackID()
 
2499
 *  
 
2500
 *  Availability:
 
2501
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2502
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2503
 *    Mac OS X:         in version 10.0 and later
 
2504
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2505
 }
 
2506
function GetTrackID(theTrack: Track): SInt32; external name '_GetTrackID';
 
2507
{
 
2508
 *  GetTrackMovie()
 
2509
 *  
 
2510
 *  Availability:
 
2511
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2512
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2513
 *    Mac OS X:         in version 10.0 and later
 
2514
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2515
 }
 
2516
function GetTrackMovie(theTrack: Track): Movie; external name '_GetTrackMovie';
 
2517
{************************
 
2518
* Track creation routines
 
2519
*************************}
 
2520
{
 
2521
 *  NewMovieTrack()
 
2522
 *  
 
2523
 *  Availability:
 
2524
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2525
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2526
 *    Mac OS X:         in version 10.0 and later
 
2527
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2528
 }
 
2529
function NewMovieTrack(theMovie: Movie; width: Fixed; height: Fixed; trackVolume: SInt16): Track; external name '_NewMovieTrack';
 
2530
{
 
2531
 *  DisposeMovieTrack()
 
2532
 *  
 
2533
 *  Availability:
 
2534
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2535
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2536
 *    Mac OS X:         in version 10.0 and later
 
2537
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2538
 }
 
2539
procedure DisposeMovieTrack(theTrack: Track); external name '_DisposeMovieTrack';
 
2540
{************************
 
2541
* Track State routines
 
2542
*************************}
 
2543
{
 
2544
 *  GetTrackCreationTime()
 
2545
 *  
 
2546
 *  Availability:
 
2547
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2548
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2549
 *    Mac OS X:         in version 10.0 and later
 
2550
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2551
 }
 
2552
function GetTrackCreationTime(theTrack: Track): UInt32; external name '_GetTrackCreationTime';
 
2553
{
 
2554
 *  GetTrackModificationTime()
 
2555
 *  
 
2556
 *  Availability:
 
2557
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2558
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2559
 *    Mac OS X:         in version 10.0 and later
 
2560
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2561
 }
 
2562
function GetTrackModificationTime(theTrack: Track): UInt32; external name '_GetTrackModificationTime';
 
2563
{
 
2564
 *  GetTrackEnabled()
 
2565
 *  
 
2566
 *  Availability:
 
2567
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2568
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2569
 *    Mac OS X:         in version 10.0 and later
 
2570
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2571
 }
 
2572
function GetTrackEnabled(theTrack: Track): boolean; external name '_GetTrackEnabled';
 
2573
{
 
2574
 *  SetTrackEnabled()
 
2575
 *  
 
2576
 *  Availability:
 
2577
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2578
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2579
 *    Mac OS X:         in version 10.0 and later
 
2580
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2581
 }
 
2582
procedure SetTrackEnabled(theTrack: Track; isEnabled: boolean); external name '_SetTrackEnabled';
 
2583
{
 
2584
 *  GetTrackUsage()
 
2585
 *  
 
2586
 *  Availability:
 
2587
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2588
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2589
 *    Mac OS X:         in version 10.0 and later
 
2590
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2591
 }
 
2592
function GetTrackUsage(theTrack: Track): SInt32; external name '_GetTrackUsage';
 
2593
{
 
2594
 *  SetTrackUsage()
 
2595
 *  
 
2596
 *  Availability:
 
2597
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2598
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2599
 *    Mac OS X:         in version 10.0 and later
 
2600
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2601
 }
 
2602
procedure SetTrackUsage(theTrack: Track; usage: SInt32); external name '_SetTrackUsage';
 
2603
{
 
2604
 *  GetTrackDuration()
 
2605
 *  
 
2606
 *  Availability:
 
2607
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2608
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2609
 *    Mac OS X:         in version 10.0 and later
 
2610
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2611
 }
 
2612
function GetTrackDuration(theTrack: Track): TimeValue; external name '_GetTrackDuration';
 
2613
{
 
2614
 *  GetTrackOffset()
 
2615
 *  
 
2616
 *  Availability:
 
2617
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2618
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2619
 *    Mac OS X:         in version 10.0 and later
 
2620
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2621
 }
 
2622
function GetTrackOffset(theTrack: Track): TimeValue; external name '_GetTrackOffset';
 
2623
{
 
2624
 *  SetTrackOffset()
 
2625
 *  
 
2626
 *  Availability:
 
2627
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2628
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2629
 *    Mac OS X:         in version 10.0 and later
 
2630
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2631
 }
 
2632
procedure SetTrackOffset(theTrack: Track; movieOffsetTime: TimeValue); external name '_SetTrackOffset';
 
2633
{
 
2634
 *  GetTrackLayer()
 
2635
 *  
 
2636
 *  Availability:
 
2637
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2638
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2639
 *    Mac OS X:         in version 10.0 and later
 
2640
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2641
 }
 
2642
function GetTrackLayer(theTrack: Track): SInt16; external name '_GetTrackLayer';
 
2643
{
 
2644
 *  SetTrackLayer()
 
2645
 *  
 
2646
 *  Availability:
 
2647
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2648
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2649
 *    Mac OS X:         in version 10.0 and later
 
2650
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2651
 }
 
2652
procedure SetTrackLayer(theTrack: Track; layer: SInt16); external name '_SetTrackLayer';
 
2653
{
 
2654
 *  GetTrackAlternate()
 
2655
 *  
 
2656
 *  Availability:
 
2657
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2658
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2659
 *    Mac OS X:         in version 10.0 and later
 
2660
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2661
 }
 
2662
function GetTrackAlternate(theTrack: Track): Track; external name '_GetTrackAlternate';
 
2663
{
 
2664
 *  SetTrackAlternate()
 
2665
 *  
 
2666
 *  Availability:
 
2667
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2668
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2669
 *    Mac OS X:         in version 10.0 and later
 
2670
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2671
 }
 
2672
procedure SetTrackAlternate(theTrack: Track; alternateT: Track); external name '_SetTrackAlternate';
 
2673
{
 
2674
 *  SetAutoTrackAlternatesEnabled()
 
2675
 *  
 
2676
 *  Availability:
 
2677
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2678
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2679
 *    Mac OS X:         in version 10.0 and later
 
2680
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2681
 }
 
2682
procedure SetAutoTrackAlternatesEnabled(theMovie: Movie; enable: boolean); external name '_SetAutoTrackAlternatesEnabled';
 
2683
{
 
2684
 *  SelectMovieAlternates()
 
2685
 *  
 
2686
 *  Availability:
 
2687
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2688
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2689
 *    Mac OS X:         in version 10.0 and later
 
2690
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2691
 }
 
2692
procedure SelectMovieAlternates(theMovie: Movie); external name '_SelectMovieAlternates';
 
2693
{
 
2694
 *  GetTrackVolume()
 
2695
 *  
 
2696
 *  Availability:
 
2697
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2698
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2699
 *    Mac OS X:         in version 10.0 and later
 
2700
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2701
 }
 
2702
function GetTrackVolume(theTrack: Track): SInt16; external name '_GetTrackVolume';
 
2703
{
 
2704
 *  SetTrackVolume()
 
2705
 *  
 
2706
 *  Availability:
 
2707
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2708
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2709
 *    Mac OS X:         in version 10.0 and later
 
2710
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2711
 }
 
2712
procedure SetTrackVolume(theTrack: Track; volume: SInt16); external name '_SetTrackVolume';
 
2713
{
 
2714
 *  GetTrackMatrix()
 
2715
 *  
 
2716
 *  Availability:
 
2717
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2718
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2719
 *    Mac OS X:         in version 10.0 and later
 
2720
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2721
 }
 
2722
procedure GetTrackMatrix(theTrack: Track; var matrix: MatrixRecord); external name '_GetTrackMatrix';
 
2723
{
 
2724
 *  SetTrackMatrix()
 
2725
 *  
 
2726
 *  Availability:
 
2727
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2728
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2729
 *    Mac OS X:         in version 10.0 and later
 
2730
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2731
 }
 
2732
procedure SetTrackMatrix(theTrack: Track; const (*var*) matrix: MatrixRecord); external name '_SetTrackMatrix';
 
2733
{
 
2734
 *  GetTrackDimensions()
 
2735
 *  
 
2736
 *  Availability:
 
2737
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2738
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2739
 *    Mac OS X:         in version 10.0 and later
 
2740
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2741
 }
 
2742
procedure GetTrackDimensions(theTrack: Track; var width: Fixed; var height: Fixed); external name '_GetTrackDimensions';
 
2743
{
 
2744
 *  SetTrackDimensions()
 
2745
 *  
 
2746
 *  Availability:
 
2747
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2748
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2749
 *    Mac OS X:         in version 10.0 and later
 
2750
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2751
 }
 
2752
procedure SetTrackDimensions(theTrack: Track; width: Fixed; height: Fixed); external name '_SetTrackDimensions';
 
2753
{
 
2754
 *  GetTrackUserData()
 
2755
 *  
 
2756
 *  Availability:
 
2757
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2758
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2759
 *    Mac OS X:         in version 10.0 and later
 
2760
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2761
 }
 
2762
function GetTrackUserData(theTrack: Track): UserData; external name '_GetTrackUserData';
 
2763
{
 
2764
 *  GetTrackDisplayMatrix()
 
2765
 *  
 
2766
 *  Availability:
 
2767
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2768
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2769
 *    Mac OS X:         in version 10.0 and later
 
2770
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2771
 }
 
2772
function GetTrackDisplayMatrix(theTrack: Track; var matrix: MatrixRecord): OSErr; external name '_GetTrackDisplayMatrix';
 
2773
{
 
2774
 *  GetTrackSoundLocalizationSettings()
 
2775
 *  
 
2776
 *  Availability:
 
2777
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2778
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2779
 *    Mac OS X:         in version 10.0 and later
 
2780
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2781
 }
 
2782
function GetTrackSoundLocalizationSettings(theTrack: Track; var settings: Handle): OSErr; external name '_GetTrackSoundLocalizationSettings';
 
2783
{
 
2784
 *  SetTrackSoundLocalizationSettings()
 
2785
 *  
 
2786
 *  Availability:
 
2787
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2788
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2789
 *    Mac OS X:         in version 10.0 and later
 
2790
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2791
 }
 
2792
function SetTrackSoundLocalizationSettings(theTrack: Track; settings: Handle): OSErr; external name '_SetTrackSoundLocalizationSettings';
 
2793
{************************
 
2794
* get Media routines
 
2795
*************************}
 
2796
{
 
2797
 *  NewTrackMedia()
 
2798
 *  
 
2799
 *  Availability:
 
2800
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2801
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2802
 *    Mac OS X:         in version 10.0 and later
 
2803
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2804
 }
 
2805
function NewTrackMedia(theTrack: Track; mediaType: OSType; timeScale_: TimeScale; dataRef: Handle; dataRefType: OSType): Media; external name '_NewTrackMedia';
 
2806
{
 
2807
 *  DisposeTrackMedia()
 
2808
 *  
 
2809
 *  Availability:
 
2810
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2811
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2812
 *    Mac OS X:         in version 10.0 and later
 
2813
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2814
 }
 
2815
procedure DisposeTrackMedia(theMedia: Media); external name '_DisposeTrackMedia';
 
2816
{
 
2817
 *  GetTrackMedia()
 
2818
 *  
 
2819
 *  Availability:
 
2820
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2821
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2822
 *    Mac OS X:         in version 10.0 and later
 
2823
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2824
 }
 
2825
function GetTrackMedia(theTrack: Track): Media; external name '_GetTrackMedia';
 
2826
{
 
2827
 *  GetMediaTrack()
 
2828
 *  
 
2829
 *  Availability:
 
2830
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2831
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2832
 *    Mac OS X:         in version 10.0 and later
 
2833
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2834
 }
 
2835
function GetMediaTrack(theMedia: Media): Track; external name '_GetMediaTrack';
 
2836
{************************
 
2837
* Media State routines
 
2838
*************************}
 
2839
{
 
2840
 *  GetMediaCreationTime()
 
2841
 *  
 
2842
 *  Availability:
 
2843
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2844
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2845
 *    Mac OS X:         in version 10.0 and later
 
2846
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2847
 }
 
2848
function GetMediaCreationTime(theMedia: Media): UInt32; external name '_GetMediaCreationTime';
 
2849
{
 
2850
 *  GetMediaModificationTime()
 
2851
 *  
 
2852
 *  Availability:
 
2853
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2854
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2855
 *    Mac OS X:         in version 10.0 and later
 
2856
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2857
 }
 
2858
function GetMediaModificationTime(theMedia: Media): UInt32; external name '_GetMediaModificationTime';
 
2859
{
 
2860
 *  GetMediaTimeScale()
 
2861
 *  
 
2862
 *  Availability:
 
2863
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2864
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2865
 *    Mac OS X:         in version 10.0 and later
 
2866
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2867
 }
 
2868
function GetMediaTimeScale(theMedia: Media): TimeScale; external name '_GetMediaTimeScale';
 
2869
{
 
2870
 *  SetMediaTimeScale()
 
2871
 *  
 
2872
 *  Availability:
 
2873
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2874
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2875
 *    Mac OS X:         in version 10.0 and later
 
2876
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2877
 }
 
2878
procedure SetMediaTimeScale(theMedia: Media; timeScale_: TimeScale); external name '_SetMediaTimeScale';
 
2879
{
 
2880
 *  GetMediaDuration()
 
2881
 *  
 
2882
 *  Availability:
 
2883
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2884
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2885
 *    Mac OS X:         in version 10.0 and later
 
2886
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2887
 }
 
2888
function GetMediaDuration(theMedia: Media): TimeValue; external name '_GetMediaDuration';
 
2889
{
 
2890
 *  GetMediaLanguage()
 
2891
 *  
 
2892
 *  Availability:
 
2893
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2894
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2895
 *    Mac OS X:         in version 10.0 and later
 
2896
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2897
 }
 
2898
function GetMediaLanguage(theMedia: Media): SInt16; external name '_GetMediaLanguage';
 
2899
{
 
2900
 *  SetMediaLanguage()
 
2901
 *  
 
2902
 *  Availability:
 
2903
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2904
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2905
 *    Mac OS X:         in version 10.0 and later
 
2906
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2907
 }
 
2908
procedure SetMediaLanguage(theMedia: Media; language: SInt16); external name '_SetMediaLanguage';
 
2909
{
 
2910
 *  GetMediaQuality()
 
2911
 *  
 
2912
 *  Availability:
 
2913
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2914
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2915
 *    Mac OS X:         in version 10.0 and later
 
2916
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2917
 }
 
2918
function GetMediaQuality(theMedia: Media): SInt16; external name '_GetMediaQuality';
 
2919
{
 
2920
 *  SetMediaQuality()
 
2921
 *  
 
2922
 *  Availability:
 
2923
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2924
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2925
 *    Mac OS X:         in version 10.0 and later
 
2926
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2927
 }
 
2928
procedure SetMediaQuality(theMedia: Media; quality: SInt16); external name '_SetMediaQuality';
 
2929
{
 
2930
 *  GetMediaHandlerDescription()
 
2931
 *  
 
2932
 *  Availability:
 
2933
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2934
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2935
 *    Mac OS X:         in version 10.0 and later
 
2936
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2937
 }
 
2938
procedure GetMediaHandlerDescription(theMedia: Media; var mediaType: OSType; var creatorName: Str255; var creatorManufacturer: OSType); external name '_GetMediaHandlerDescription';
 
2939
{
 
2940
 *  GetMediaUserData()
 
2941
 *  
 
2942
 *  Availability:
 
2943
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2944
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2945
 *    Mac OS X:         in version 10.0 and later
 
2946
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2947
 }
 
2948
function GetMediaUserData(theMedia: Media): UserData; external name '_GetMediaUserData';
 
2949
{
 
2950
 *  GetMediaInputMap()
 
2951
 *  
 
2952
 *  Availability:
 
2953
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2954
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2955
 *    Mac OS X:         in version 10.0 and later
 
2956
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2957
 }
 
2958
function GetMediaInputMap(theMedia: Media; var inputMap: QTAtomContainer): OSErr; external name '_GetMediaInputMap';
 
2959
{
 
2960
 *  SetMediaInputMap()
 
2961
 *  
 
2962
 *  Availability:
 
2963
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2964
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2965
 *    Mac OS X:         in version 10.0 and later
 
2966
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2967
 }
 
2968
function SetMediaInputMap(theMedia: Media; inputMap: QTAtomContainer): OSErr; external name '_SetMediaInputMap';
 
2969
{************************
 
2970
* Media Handler routines
 
2971
*************************}
 
2972
{
 
2973
 *  GetMediaHandler()
 
2974
 *  
 
2975
 *  Availability:
 
2976
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2977
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2978
 *    Mac OS X:         in version 10.0 and later
 
2979
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2980
 }
 
2981
function GetMediaHandler(theMedia: Media): MediaHandler; external name '_GetMediaHandler';
 
2982
{
 
2983
 *  SetMediaHandler()
 
2984
 *  
 
2985
 *  Availability:
 
2986
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
2987
 *    CarbonLib:        in CarbonLib 1.0 and later
 
2988
 *    Mac OS X:         in version 10.0 and later
 
2989
 *    Windows:          in qtmlClient.lib 3.0 and later
 
2990
 }
 
2991
function SetMediaHandler(theMedia: Media; mH: MediaHandlerComponent): OSErr; external name '_SetMediaHandler';
 
2992
{************************
 
2993
* Media's Data routines
 
2994
*************************}
 
2995
{
 
2996
 *  BeginMediaEdits()
 
2997
 *  
 
2998
 *  Availability:
 
2999
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3000
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3001
 *    Mac OS X:         in version 10.0 and later
 
3002
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3003
 }
 
3004
function BeginMediaEdits(theMedia: Media): OSErr; external name '_BeginMediaEdits';
 
3005
{
 
3006
 *  EndMediaEdits()
 
3007
 *  
 
3008
 *  Availability:
 
3009
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3010
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3011
 *    Mac OS X:         in version 10.0 and later
 
3012
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3013
 }
 
3014
function EndMediaEdits(theMedia: Media): OSErr; external name '_EndMediaEdits';
 
3015
{
 
3016
 *  SetMediaDefaultDataRefIndex()
 
3017
 *  
 
3018
 *  Availability:
 
3019
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3020
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3021
 *    Mac OS X:         in version 10.0 and later
 
3022
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3023
 }
 
3024
function SetMediaDefaultDataRefIndex(theMedia: Media; index: SInt16): OSErr; external name '_SetMediaDefaultDataRefIndex';
 
3025
{
 
3026
 *  GetMediaDataHandlerDescription()
 
3027
 *  
 
3028
 *  Availability:
 
3029
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3030
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3031
 *    Mac OS X:         in version 10.0 and later
 
3032
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3033
 }
 
3034
procedure GetMediaDataHandlerDescription(theMedia: Media; index: SInt16; var dhType: OSType; var creatorName: Str255; var creatorManufacturer: OSType); external name '_GetMediaDataHandlerDescription';
 
3035
{
 
3036
 *  GetMediaDataHandler()
 
3037
 *  
 
3038
 *  Availability:
 
3039
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3040
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3041
 *    Mac OS X:         in version 10.0 and later
 
3042
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3043
 }
 
3044
function GetMediaDataHandler(theMedia: Media; index: SInt16): DataHandler; external name '_GetMediaDataHandler';
 
3045
{
 
3046
 *  SetMediaDataHandler()
 
3047
 *  
 
3048
 *  Availability:
 
3049
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3050
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3051
 *    Mac OS X:         in version 10.0 and later
 
3052
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3053
 }
 
3054
function SetMediaDataHandler(theMedia: Media; index: SInt16; dataHandler: DataHandlerComponent): OSErr; external name '_SetMediaDataHandler';
 
3055
{
 
3056
 *  GetDataHandler()
 
3057
 *  
 
3058
 *  Availability:
 
3059
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3060
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3061
 *    Mac OS X:         in version 10.0 and later
 
3062
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3063
 }
 
3064
function GetDataHandler(dataRef: Handle; dataHandlerSubType: OSType; flags: SInt32): Component; external name '_GetDataHandler';
 
3065
{
 
3066
 *  OpenADataHandler()
 
3067
 *  
 
3068
 *  Availability:
 
3069
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
3070
 *    CarbonLib:        in CarbonLib 1.1 and later
 
3071
 *    Mac OS X:         in version 10.0 and later
 
3072
 *    Windows:          in qtmlClient.lib 4.1 and later
 
3073
 }
 
3074
function OpenADataHandler(dataRef: Handle; dataHandlerSubType: OSType; anchorDataRef: Handle; anchorDataRefType: OSType; tb: TimeBase; flags: SInt32; var dh: ComponentInstance): OSErr; external name '_OpenADataHandler';
 
3075
{************************
 
3076
* Media Sample Table Routines
 
3077
*************************}
 
3078
{
 
3079
 *  GetMediaSampleDescriptionCount()
 
3080
 *  
 
3081
 *  Availability:
 
3082
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3083
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3084
 *    Mac OS X:         in version 10.0 and later
 
3085
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3086
 }
 
3087
function GetMediaSampleDescriptionCount(theMedia: Media): SInt32; external name '_GetMediaSampleDescriptionCount';
 
3088
{
 
3089
 *  GetMediaSampleDescription()
 
3090
 *  
 
3091
 *  Availability:
 
3092
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3093
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3094
 *    Mac OS X:         in version 10.0 and later
 
3095
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3096
 }
 
3097
procedure GetMediaSampleDescription(theMedia: Media; index: SInt32; descH: SampleDescriptionHandle); external name '_GetMediaSampleDescription';
 
3098
{
 
3099
 *  SetMediaSampleDescription()
 
3100
 *  
 
3101
 *  Availability:
 
3102
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3103
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3104
 *    Mac OS X:         in version 10.0 and later
 
3105
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3106
 }
 
3107
function SetMediaSampleDescription(theMedia: Media; index: SInt32; descH: SampleDescriptionHandle): OSErr; external name '_SetMediaSampleDescription';
 
3108
{
 
3109
 *  GetMediaSampleCount()
 
3110
 *  
 
3111
 *  Availability:
 
3112
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3113
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3114
 *    Mac OS X:         in version 10.0 and later
 
3115
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3116
 }
 
3117
function GetMediaSampleCount(theMedia: Media): SInt32; external name '_GetMediaSampleCount';
 
3118
{
 
3119
 *  GetMediaSyncSampleCount()
 
3120
 *  
 
3121
 *  Availability:
 
3122
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
3123
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3124
 *    Mac OS X:         in version 10.0 and later
 
3125
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3126
 }
 
3127
function GetMediaSyncSampleCount(theMedia: Media): SInt32; external name '_GetMediaSyncSampleCount';
 
3128
{
 
3129
 *  SampleNumToMediaTime()
 
3130
 *  
 
3131
 *  Availability:
 
3132
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3133
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3134
 *    Mac OS X:         in version 10.0 and later
 
3135
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3136
 }
 
3137
procedure SampleNumToMediaTime(theMedia: Media; logicalSampleNum: SInt32; var sampleTime: TimeValue; var sampleDuration: TimeValue); external name '_SampleNumToMediaTime';
 
3138
{
 
3139
 *  MediaTimeToSampleNum()
 
3140
 *  
 
3141
 *  Availability:
 
3142
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3143
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3144
 *    Mac OS X:         in version 10.0 and later
 
3145
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3146
 }
 
3147
procedure MediaTimeToSampleNum(theMedia: Media; time: TimeValue; var sampleNum: SInt32; var sampleTime: TimeValue; var sampleDuration: TimeValue); external name '_MediaTimeToSampleNum';
 
3148
{
 
3149
 *  AddMediaSample()
 
3150
 *  
 
3151
 *  Availability:
 
3152
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3153
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3154
 *    Mac OS X:         in version 10.0 and later
 
3155
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3156
 }
 
3157
function AddMediaSample(theMedia: Media; dataIn: Handle; inOffset: SInt32; size: UInt32; durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SInt32; sampleFlags: SInt16; var sampleTime: TimeValue): OSErr; external name '_AddMediaSample';
 
3158
{
 
3159
 *  AddMediaSampleReference()
 
3160
 *  
 
3161
 *  Availability:
 
3162
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3163
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3164
 *    Mac OS X:         in version 10.0 and later
 
3165
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3166
 }
 
3167
function AddMediaSampleReference(theMedia: Media; dataOffset: SInt32; size: UInt32; durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SInt32; sampleFlags: SInt16; var sampleTime: TimeValue): OSErr; external name '_AddMediaSampleReference';
 
3168
{
 
3169
 *  AddMediaSampleReferences()
 
3170
 *  
 
3171
 *  Availability:
 
3172
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3173
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3174
 *    Mac OS X:         in version 10.0 and later
 
3175
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3176
 }
 
3177
function AddMediaSampleReferences(theMedia: Media; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SInt32; sampleRefs: SampleReferencePtr; var sampleTime: TimeValue): OSErr; external name '_AddMediaSampleReferences';
 
3178
{
 
3179
 *  AddMediaSampleReferences64()
 
3180
 *  
 
3181
 *  Availability:
 
3182
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
3183
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
3184
 *    Mac OS X:         in version 10.0 and later
 
3185
 *    Windows:          in qtmlClient.lib 4.0 and later
 
3186
 }
 
3187
function AddMediaSampleReferences64(theMedia: Media; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: SInt32; sampleRefs: SampleReference64Ptr; var sampleTime: TimeValue): OSErr; external name '_AddMediaSampleReferences64';
 
3188
{
 
3189
 *  GetMediaSample()
 
3190
 *  
 
3191
 *  Availability:
 
3192
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3193
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3194
 *    Mac OS X:         in version 10.0 and later
 
3195
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3196
 }
 
3197
function GetMediaSample(theMedia: Media; dataOut: Handle; maxSizeToGrow: SInt32; var size: SInt32; time: TimeValue; var sampleTime: TimeValue; var durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SInt32; maxNumberOfSamples: SInt32; var numberOfSamples: SInt32; var sampleFlags: SInt16): OSErr; external name '_GetMediaSample';
 
3198
{
 
3199
 *  GetMediaSampleReference()
 
3200
 *  
 
3201
 *  Availability:
 
3202
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3203
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3204
 *    Mac OS X:         in version 10.0 and later
 
3205
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3206
 }
 
3207
function GetMediaSampleReference(theMedia: Media; var dataOffset: SInt32; var size: SInt32; time: TimeValue; var sampleTime: TimeValue; var durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SInt32; maxNumberOfSamples: SInt32; var numberOfSamples: SInt32; var sampleFlags: SInt16): OSErr; external name '_GetMediaSampleReference';
 
3208
{
 
3209
 *  GetMediaSampleReferences()
 
3210
 *  
 
3211
 *  Availability:
 
3212
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3213
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3214
 *    Mac OS X:         in version 10.0 and later
 
3215
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3216
 }
 
3217
function GetMediaSampleReferences(theMedia: Media; time: TimeValue; var sampleTime: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SInt32; maxNumberOfEntries: SInt32; var actualNumberofEntries: SInt32; sampleRefs: SampleReferencePtr): OSErr; external name '_GetMediaSampleReferences';
 
3218
{
 
3219
 *  GetMediaSampleReferences64()
 
3220
 *  
 
3221
 *  Availability:
 
3222
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
3223
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
3224
 *    Mac OS X:         in version 10.0 and later
 
3225
 *    Windows:          in qtmlClient.lib 4.0 and later
 
3226
 }
 
3227
function GetMediaSampleReferences64(theMedia: Media; time: TimeValue; var sampleTime: TimeValue; sampleDescriptionH: SampleDescriptionHandle; var sampleDescriptionIndex: SInt32; maxNumberOfEntries: SInt32; var actualNumberofEntries: SInt32; sampleRefs: SampleReference64Ptr): OSErr; external name '_GetMediaSampleReferences64';
 
3228
{
 
3229
 *  SetMediaPreferredChunkSize()
 
3230
 *  
 
3231
 *  Availability:
 
3232
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3233
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3234
 *    Mac OS X:         in version 10.0 and later
 
3235
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3236
 }
 
3237
function SetMediaPreferredChunkSize(theMedia: Media; maxChunkSize: SInt32): OSErr; external name '_SetMediaPreferredChunkSize';
 
3238
{
 
3239
 *  GetMediaPreferredChunkSize()
 
3240
 *  
 
3241
 *  Availability:
 
3242
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3243
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3244
 *    Mac OS X:         in version 10.0 and later
 
3245
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3246
 }
 
3247
function GetMediaPreferredChunkSize(theMedia: Media; var maxChunkSize: SInt32): OSErr; external name '_GetMediaPreferredChunkSize';
 
3248
{
 
3249
 *  SetMediaShadowSync()
 
3250
 *  
 
3251
 *  Availability:
 
3252
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3253
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3254
 *    Mac OS X:         in version 10.0 and later
 
3255
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3256
 }
 
3257
function SetMediaShadowSync(theMedia: Media; frameDiffSampleNum: SInt32; syncSampleNum: SInt32): OSErr; external name '_SetMediaShadowSync';
 
3258
{
 
3259
 *  GetMediaShadowSync()
 
3260
 *  
 
3261
 *  Availability:
 
3262
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3263
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3264
 *    Mac OS X:         in version 10.0 and later
 
3265
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3266
 }
 
3267
function GetMediaShadowSync(theMedia: Media; frameDiffSampleNum: SInt32; var syncSampleNum: SInt32): OSErr; external name '_GetMediaShadowSync';
 
3268
{************************
 
3269
* Editing Routines
 
3270
*************************}
 
3271
{
 
3272
 *  InsertMediaIntoTrack()
 
3273
 *  
 
3274
 *  Availability:
 
3275
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3276
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3277
 *    Mac OS X:         in version 10.0 and later
 
3278
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3279
 }
 
3280
function InsertMediaIntoTrack(theTrack: Track; trackStart: TimeValue; mediaTime: TimeValue; mediaDuration: TimeValue; mediaRate: Fixed): OSErr; external name '_InsertMediaIntoTrack';
 
3281
{
 
3282
 *  InsertTrackSegment()
 
3283
 *  
 
3284
 *  Availability:
 
3285
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3286
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3287
 *    Mac OS X:         in version 10.0 and later
 
3288
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3289
 }
 
3290
function InsertTrackSegment(srcTrack: Track; dstTrack: Track; srcIn: TimeValue; srcDuration: TimeValue; dstIn: TimeValue): OSErr; external name '_InsertTrackSegment';
 
3291
{
 
3292
 *  InsertMovieSegment()
 
3293
 *  
 
3294
 *  Availability:
 
3295
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3296
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3297
 *    Mac OS X:         in version 10.0 and later
 
3298
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3299
 }
 
3300
function InsertMovieSegment(srcMovie: Movie; dstMovie: Movie; srcIn: TimeValue; srcDuration: TimeValue; dstIn: TimeValue): OSErr; external name '_InsertMovieSegment';
 
3301
{
 
3302
 *  InsertEmptyTrackSegment()
 
3303
 *  
 
3304
 *  Availability:
 
3305
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3306
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3307
 *    Mac OS X:         in version 10.0 and later
 
3308
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3309
 }
 
3310
function InsertEmptyTrackSegment(dstTrack: Track; dstIn: TimeValue; dstDuration: TimeValue): OSErr; external name '_InsertEmptyTrackSegment';
 
3311
{
 
3312
 *  InsertEmptyMovieSegment()
 
3313
 *  
 
3314
 *  Availability:
 
3315
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3316
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3317
 *    Mac OS X:         in version 10.0 and later
 
3318
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3319
 }
 
3320
function InsertEmptyMovieSegment(dstMovie: Movie; dstIn: TimeValue; dstDuration: TimeValue): OSErr; external name '_InsertEmptyMovieSegment';
 
3321
{
 
3322
 *  DeleteTrackSegment()
 
3323
 *  
 
3324
 *  Availability:
 
3325
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3326
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3327
 *    Mac OS X:         in version 10.0 and later
 
3328
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3329
 }
 
3330
function DeleteTrackSegment(theTrack: Track; startTime: TimeValue; duration: TimeValue): OSErr; external name '_DeleteTrackSegment';
 
3331
{
 
3332
 *  DeleteMovieSegment()
 
3333
 *  
 
3334
 *  Availability:
 
3335
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3336
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3337
 *    Mac OS X:         in version 10.0 and later
 
3338
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3339
 }
 
3340
function DeleteMovieSegment(theMovie: Movie; startTime: TimeValue; duration: TimeValue): OSErr; external name '_DeleteMovieSegment';
 
3341
{
 
3342
 *  ScaleTrackSegment()
 
3343
 *  
 
3344
 *  Availability:
 
3345
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3346
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3347
 *    Mac OS X:         in version 10.0 and later
 
3348
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3349
 }
 
3350
function ScaleTrackSegment(theTrack: Track; startTime: TimeValue; oldDuration: TimeValue; newDuration: TimeValue): OSErr; external name '_ScaleTrackSegment';
 
3351
{
 
3352
 *  ScaleMovieSegment()
 
3353
 *  
 
3354
 *  Availability:
 
3355
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3356
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3357
 *    Mac OS X:         in version 10.0 and later
 
3358
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3359
 }
 
3360
function ScaleMovieSegment(theMovie: Movie; startTime: TimeValue; oldDuration: TimeValue; newDuration: TimeValue): OSErr; external name '_ScaleMovieSegment';
 
3361
{************************
 
3362
* Hi-level Editing Routines
 
3363
*************************}
 
3364
{
 
3365
 *  CutMovieSelection()
 
3366
 *  
 
3367
 *  Availability:
 
3368
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3369
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3370
 *    Mac OS X:         in version 10.0 and later
 
3371
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3372
 }
 
3373
function CutMovieSelection(theMovie: Movie): Movie; external name '_CutMovieSelection';
 
3374
{
 
3375
 *  CopyMovieSelection()
 
3376
 *  
 
3377
 *  Availability:
 
3378
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3379
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3380
 *    Mac OS X:         in version 10.0 and later
 
3381
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3382
 }
 
3383
function CopyMovieSelection(theMovie: Movie): Movie; external name '_CopyMovieSelection';
 
3384
{
 
3385
 *  PasteMovieSelection()
 
3386
 *  
 
3387
 *  Availability:
 
3388
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3389
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3390
 *    Mac OS X:         in version 10.0 and later
 
3391
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3392
 }
 
3393
procedure PasteMovieSelection(theMovie: Movie; src: Movie); external name '_PasteMovieSelection';
 
3394
{
 
3395
 *  AddMovieSelection()
 
3396
 *  
 
3397
 *  Availability:
 
3398
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3399
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3400
 *    Mac OS X:         in version 10.0 and later
 
3401
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3402
 }
 
3403
procedure AddMovieSelection(theMovie: Movie; src: Movie); external name '_AddMovieSelection';
 
3404
{
 
3405
 *  ClearMovieSelection()
 
3406
 *  
 
3407
 *  Availability:
 
3408
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3409
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3410
 *    Mac OS X:         in version 10.0 and later
 
3411
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3412
 }
 
3413
procedure ClearMovieSelection(theMovie: Movie); external name '_ClearMovieSelection';
 
3414
{
 
3415
 *  PasteHandleIntoMovie()
 
3416
 *  
 
3417
 *  Availability:
 
3418
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3419
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3420
 *    Mac OS X:         in version 10.0 and later
 
3421
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3422
 }
 
3423
function PasteHandleIntoMovie(h: Handle; handleType: OSType; theMovie: Movie; flags: SInt32; userComp: ComponentInstance): OSErr; external name '_PasteHandleIntoMovie';
 
3424
{
 
3425
 *  PutMovieIntoTypedHandle()
 
3426
 *  
 
3427
 *  Availability:
 
3428
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3429
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3430
 *    Mac OS X:         in version 10.0 and later
 
3431
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3432
 }
 
3433
function PutMovieIntoTypedHandle(theMovie: Movie; targetTrack: Track; handleType: OSType; publicMovie: Handle; start: TimeValue; dur: TimeValue; flags: SInt32; userComp: ComponentInstance): OSErr; external name '_PutMovieIntoTypedHandle';
 
3434
{
 
3435
 *  IsScrapMovie()
 
3436
 *  
 
3437
 *  Availability:
 
3438
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3439
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3440
 *    Mac OS X:         in version 10.0 and later
 
3441
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3442
 }
 
3443
function IsScrapMovie(targetTrack: Track): Component; external name '_IsScrapMovie';
 
3444
{************************
 
3445
* Middle-level Editing Routines
 
3446
*************************}
 
3447
{
 
3448
 *  CopyTrackSettings()
 
3449
 *  
 
3450
 *  Availability:
 
3451
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3452
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3453
 *    Mac OS X:         in version 10.0 and later
 
3454
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3455
 }
 
3456
function CopyTrackSettings(srcTrack: Track; dstTrack: Track): OSErr; external name '_CopyTrackSettings';
 
3457
{
 
3458
 *  CopyMovieSettings()
 
3459
 *  
 
3460
 *  Availability:
 
3461
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3462
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3463
 *    Mac OS X:         in version 10.0 and later
 
3464
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3465
 }
 
3466
function CopyMovieSettings(srcMovie: Movie; dstMovie: Movie): OSErr; external name '_CopyMovieSettings';
 
3467
{
 
3468
 *  AddEmptyTrackToMovie()
 
3469
 *  
 
3470
 *  Availability:
 
3471
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3472
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3473
 *    Mac OS X:         in version 10.0 and later
 
3474
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3475
 }
 
3476
function AddEmptyTrackToMovie(srcTrack: Track; dstMovie: Movie; dataRef: Handle; dataRefType: OSType; var dstTrack: Track): OSErr; external name '_AddEmptyTrackToMovie';
 
3477
const
 
3478
        kQTCloneShareSamples            = $01;
 
3479
        kQTCloneDontCopyEdits           = $02;
 
3480
 
 
3481
        {
 
3482
         *  AddClonedTrackToMovie()
 
3483
         *  
 
3484
         *  Availability:
 
3485
         *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
3486
         *    CarbonLib:        in CarbonLib 1.3 and later
 
3487
         *    Mac OS X:         in version 10.0 and later
 
3488
         *    Windows:          in qtmlClient.lib 5.0 and later
 
3489
                }
 
3490
function AddClonedTrackToMovie(srcTrack: Track; dstMovie: Movie; flags: SInt32; var dstTrack: Track): OSErr; external name '_AddClonedTrackToMovie';
 
3491
{************************
 
3492
* movie & track edit state routines
 
3493
*************************}
 
3494
{
 
3495
 *  NewMovieEditState()
 
3496
 *  
 
3497
 *  Availability:
 
3498
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3499
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3500
 *    Mac OS X:         in version 10.0 and later
 
3501
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3502
 }
 
3503
function NewMovieEditState(theMovie: Movie): MovieEditState; external name '_NewMovieEditState';
 
3504
{
 
3505
 *  UseMovieEditState()
 
3506
 *  
 
3507
 *  Availability:
 
3508
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3509
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3510
 *    Mac OS X:         in version 10.0 and later
 
3511
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3512
 }
 
3513
function UseMovieEditState(theMovie: Movie; toState: MovieEditState): OSErr; external name '_UseMovieEditState';
 
3514
{
 
3515
 *  DisposeMovieEditState()
 
3516
 *  
 
3517
 *  Availability:
 
3518
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3519
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3520
 *    Mac OS X:         in version 10.0 and later
 
3521
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3522
 }
 
3523
function DisposeMovieEditState(state: MovieEditState): OSErr; external name '_DisposeMovieEditState';
 
3524
{
 
3525
 *  NewTrackEditState()
 
3526
 *  
 
3527
 *  Availability:
 
3528
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3529
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3530
 *    Mac OS X:         in version 10.0 and later
 
3531
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3532
 }
 
3533
function NewTrackEditState(theTrack: Track): TrackEditState; external name '_NewTrackEditState';
 
3534
{
 
3535
 *  UseTrackEditState()
 
3536
 *  
 
3537
 *  Availability:
 
3538
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3539
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3540
 *    Mac OS X:         in version 10.0 and later
 
3541
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3542
 }
 
3543
function UseTrackEditState(theTrack: Track; state: TrackEditState): OSErr; external name '_UseTrackEditState';
 
3544
{
 
3545
 *  DisposeTrackEditState()
 
3546
 *  
 
3547
 *  Availability:
 
3548
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3549
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3550
 *    Mac OS X:         in version 10.0 and later
 
3551
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3552
 }
 
3553
function DisposeTrackEditState(state: TrackEditState): OSErr; external name '_DisposeTrackEditState';
 
3554
{************************
 
3555
* track reference routines
 
3556
*************************}
 
3557
{
 
3558
 *  AddTrackReference()
 
3559
 *  
 
3560
 *  Availability:
 
3561
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3562
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3563
 *    Mac OS X:         in version 10.0 and later
 
3564
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3565
 }
 
3566
function AddTrackReference(theTrack: Track; refTrack: Track; refType: OSType; var addedIndex: SInt32): OSErr; external name '_AddTrackReference';
 
3567
{
 
3568
 *  DeleteTrackReference()
 
3569
 *  
 
3570
 *  Availability:
 
3571
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3572
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3573
 *    Mac OS X:         in version 10.0 and later
 
3574
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3575
 }
 
3576
function DeleteTrackReference(theTrack: Track; refType: OSType; index: SInt32): OSErr; external name '_DeleteTrackReference';
 
3577
{
 
3578
 *  SetTrackReference()
 
3579
 *  
 
3580
 *  Availability:
 
3581
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3582
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3583
 *    Mac OS X:         in version 10.0 and later
 
3584
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3585
 }
 
3586
function SetTrackReference(theTrack: Track; refTrack: Track; refType: OSType; index: SInt32): OSErr; external name '_SetTrackReference';
 
3587
{
 
3588
 *  GetTrackReference()
 
3589
 *  
 
3590
 *  Availability:
 
3591
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3592
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3593
 *    Mac OS X:         in version 10.0 and later
 
3594
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3595
 }
 
3596
function GetTrackReference(theTrack: Track; refType: OSType; index: SInt32): Track; external name '_GetTrackReference';
 
3597
{
 
3598
 *  GetNextTrackReferenceType()
 
3599
 *  
 
3600
 *  Availability:
 
3601
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3602
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3603
 *    Mac OS X:         in version 10.0 and later
 
3604
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3605
 }
 
3606
function GetNextTrackReferenceType(theTrack: Track; refType: OSType): SInt32; external name '_GetNextTrackReferenceType';
 
3607
{
 
3608
 *  GetTrackReferenceCount()
 
3609
 *  
 
3610
 *  Availability:
 
3611
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3612
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3613
 *    Mac OS X:         in version 10.0 and later
 
3614
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3615
 }
 
3616
function GetTrackReferenceCount(theTrack: Track; refType: OSType): SInt32; external name '_GetTrackReferenceCount';
 
3617
{************************
 
3618
* high level file conversion routines
 
3619
*************************}
 
3620
{
 
3621
 *  ConvertFileToMovieFile()
 
3622
 *  
 
3623
 *  Availability:
 
3624
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3625
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3626
 *    Mac OS X:         in version 10.0 and later
 
3627
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3628
 }
 
3629
function ConvertFileToMovieFile(const (*var*) inputFile: FSSpec; const (*var*) outputFile: FSSpec; creator: OSType; scriptTag: ScriptCode; var resID: SInt16; flags: SInt32; userComp: ComponentInstance; proc: MovieProgressUPP; refCon: SInt32): OSErr; external name '_ConvertFileToMovieFile';
 
3630
{
 
3631
 *  ConvertMovieToFile()
 
3632
 *  
 
3633
 *  Availability:
 
3634
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3635
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3636
 *    Mac OS X:         in version 10.0 and later
 
3637
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3638
 }
 
3639
function ConvertMovieToFile(theMovie: Movie; onlyTrack: Track; var outputFile: FSSpec; fileType: OSType; creator: OSType; scriptTag: ScriptCode; var resID: SInt16; flags: SInt32; userComp: ComponentInstance): OSErr; external name '_ConvertMovieToFile';
 
3640
const
 
3641
        kGetMovieImporterValidateToFind = $00000001;
 
3642
        kGetMovieImporterAllowNewFile = $00000002;
 
3643
        kGetMovieImporterDontConsiderGraphicsImporters = $00000004;
 
3644
        kGetMovieImporterDontConsiderFileOnlyImporters = $00000040;
 
3645
        kGetMovieImporterAutoImportOnly = $00000400;                            {  reject aggressive movie importers which have dontAutoFileMovieImport set }
 
3646
 
 
3647
        {
 
3648
         *  GetMovieImporterForDataRef()
 
3649
         *  
 
3650
         *  Availability:
 
3651
         *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
3652
         *    CarbonLib:        in CarbonLib 1.0 and later
 
3653
         *    Mac OS X:         in version 10.0 and later
 
3654
         *    Windows:          in qtmlClient.lib 3.0 and later
 
3655
                }
 
3656
function GetMovieImporterForDataRef(dataRefType: OSType; dataRef: Handle; flags: SInt32; var importer: Component): OSErr; external name '_GetMovieImporterForDataRef';
 
3657
const
 
3658
        kQTGetMIMETypeInfoIsQuickTimeMovieType = $6D6F6F76 (* 'moov' *);                        {  info is a pointer to a Boolean }
 
3659
        kQTGetMIMETypeInfoIsUnhelpfulType = $64756D62 (* 'dumb' *);                                     {  info is a pointer to a Boolean }
 
3660
 
 
3661
        {
 
3662
         *  QTGetMIMETypeInfo()
 
3663
         *  
 
3664
         *  Availability:
 
3665
         *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
3666
         *    CarbonLib:        in CarbonLib 1.3 and later
 
3667
         *    Mac OS X:         in version 10.0 and later
 
3668
         *    Windows:          in qtmlClient.lib 5.0 and later
 
3669
                }
 
3670
function QTGetMIMETypeInfo(mimeStringStart: ConstCStringPtr; mimeStringLength: SInt16; infoSelector: OSType; infoDataPtr: UnivPtr; var infoDataSize: SInt32): OSErr; external name '_QTGetMIMETypeInfo';
 
3671
{************************
 
3672
* Movie Timebase Conversion Routines
 
3673
*************************}
 
3674
{
 
3675
 *  TrackTimeToMediaTime()
 
3676
 *  
 
3677
 *  Availability:
 
3678
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3679
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3680
 *    Mac OS X:         in version 10.0 and later
 
3681
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3682
 }
 
3683
function TrackTimeToMediaTime(value: TimeValue; theTrack: Track): TimeValue; external name '_TrackTimeToMediaTime';
 
3684
{
 
3685
 *  GetTrackEditRate()
 
3686
 *  
 
3687
 *  Availability:
 
3688
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3689
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3690
 *    Mac OS X:         in version 10.0 and later
 
3691
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3692
 }
 
3693
function GetTrackEditRate(theTrack: Track; atTime: TimeValue): Fixed; external name '_GetTrackEditRate';
 
3694
{************************
 
3695
* Miscellaneous Routines
 
3696
*************************}
 
3697
 
 
3698
{
 
3699
 *  GetMovieDataSize()
 
3700
 *  
 
3701
 *  Availability:
 
3702
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3703
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3704
 *    Mac OS X:         in version 10.0 and later
 
3705
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3706
 }
 
3707
function GetMovieDataSize(theMovie: Movie; startTime: TimeValue; duration: TimeValue): SInt32; external name '_GetMovieDataSize';
 
3708
{
 
3709
 *  GetMovieDataSize64()
 
3710
 *  
 
3711
 *  Availability:
 
3712
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
3713
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
3714
 *    Mac OS X:         in version 10.0 and later
 
3715
 *    Windows:          in qtmlClient.lib 4.0 and later
 
3716
 }
 
3717
function GetMovieDataSize64(theMovie: Movie; startTime: TimeValue; duration: TimeValue; var dataSize: wide): OSErr; external name '_GetMovieDataSize64';
 
3718
{
 
3719
 *  GetTrackDataSize()
 
3720
 *  
 
3721
 *  Availability:
 
3722
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3723
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3724
 *    Mac OS X:         in version 10.0 and later
 
3725
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3726
 }
 
3727
function GetTrackDataSize(theTrack: Track; startTime: TimeValue; duration: TimeValue): SInt32; external name '_GetTrackDataSize';
 
3728
{
 
3729
 *  GetTrackDataSize64()
 
3730
 *  
 
3731
 *  Availability:
 
3732
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
3733
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
3734
 *    Mac OS X:         in version 10.0 and later
 
3735
 *    Windows:          in qtmlClient.lib 4.0 and later
 
3736
 }
 
3737
function GetTrackDataSize64(theTrack: Track; startTime: TimeValue; duration: TimeValue; var dataSize: wide): OSErr; external name '_GetTrackDataSize64';
 
3738
{
 
3739
 *  GetMediaDataSize()
 
3740
 *  
 
3741
 *  Availability:
 
3742
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3743
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3744
 *    Mac OS X:         in version 10.0 and later
 
3745
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3746
 }
 
3747
function GetMediaDataSize(theMedia: Media; startTime: TimeValue; duration: TimeValue): SInt32; external name '_GetMediaDataSize';
 
3748
{
 
3749
 *  GetMediaDataSize64()
 
3750
 *  
 
3751
 *  Availability:
 
3752
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
3753
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
3754
 *    Mac OS X:         in version 10.0 and later
 
3755
 *    Windows:          in qtmlClient.lib 4.0 and later
 
3756
 }
 
3757
function GetMediaDataSize64(theMedia: Media; startTime: TimeValue; duration: TimeValue; var dataSize: wide): OSErr; external name '_GetMediaDataSize64';
 
3758
{
 
3759
 *  PtInMovie()
 
3760
 *  
 
3761
 *  Availability:
 
3762
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3763
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3764
 *    Mac OS X:         in version 10.0 and later
 
3765
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3766
 }
 
3767
function PtInMovie(theMovie: Movie; pt: Point): boolean; external name '_PtInMovie';
 
3768
{
 
3769
 *  PtInTrack()
 
3770
 *  
 
3771
 *  Availability:
 
3772
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3773
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3774
 *    Mac OS X:         in version 10.0 and later
 
3775
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3776
 }
 
3777
function PtInTrack(theTrack: Track; pt: Point): boolean; external name '_PtInTrack';
 
3778
{************************
 
3779
* Group Selection Routines
 
3780
*************************}
 
3781
 
 
3782
{
 
3783
 *  SetMovieLanguage()
 
3784
 *  
 
3785
 *  Availability:
 
3786
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3787
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3788
 *    Mac OS X:         in version 10.0 and later
 
3789
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3790
 }
 
3791
procedure SetMovieLanguage(theMovie: Movie; language: SInt32); external name '_SetMovieLanguage';
 
3792
{************************
 
3793
* User Data
 
3794
*************************}
 
3795
 
 
3796
{
 
3797
 *  GetUserData()
 
3798
 *  
 
3799
 *  Availability:
 
3800
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3801
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3802
 *    Mac OS X:         in version 10.0 and later
 
3803
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3804
 }
 
3805
function GetUserData(theUserData: UserData; data: Handle; udType: OSType; index: SInt32): OSErr; external name '_GetUserData';
 
3806
{
 
3807
 *  AddUserData()
 
3808
 *  
 
3809
 *  Availability:
 
3810
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3811
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3812
 *    Mac OS X:         in version 10.0 and later
 
3813
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3814
 }
 
3815
function AddUserData(theUserData: UserData; data: Handle; udType: OSType): OSErr; external name '_AddUserData';
 
3816
{
 
3817
 *  RemoveUserData()
 
3818
 *  
 
3819
 *  Availability:
 
3820
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3821
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3822
 *    Mac OS X:         in version 10.0 and later
 
3823
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3824
 }
 
3825
function RemoveUserData(theUserData: UserData; udType: OSType; index: SInt32): OSErr; external name '_RemoveUserData';
 
3826
{
 
3827
 *  CountUserDataType()
 
3828
 *  
 
3829
 *  Availability:
 
3830
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3831
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3832
 *    Mac OS X:         in version 10.0 and later
 
3833
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3834
 }
 
3835
function CountUserDataType(theUserData: UserData; udType: OSType): SInt16; external name '_CountUserDataType';
 
3836
{
 
3837
 *  GetNextUserDataType()
 
3838
 *  
 
3839
 *  Availability:
 
3840
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3841
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3842
 *    Mac OS X:         in version 10.0 and later
 
3843
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3844
 }
 
3845
function GetNextUserDataType(theUserData: UserData; udType: OSType): SInt32; external name '_GetNextUserDataType';
 
3846
{
 
3847
 *  GetUserDataItem()
 
3848
 *  
 
3849
 *  Availability:
 
3850
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3851
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3852
 *    Mac OS X:         in version 10.0 and later
 
3853
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3854
 }
 
3855
function GetUserDataItem(theUserData: UserData; data: UnivPtr; size: SInt32; udType: OSType; index: SInt32): OSErr; external name '_GetUserDataItem';
 
3856
{
 
3857
 *  SetUserDataItem()
 
3858
 *  
 
3859
 *  Availability:
 
3860
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3861
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3862
 *    Mac OS X:         in version 10.0 and later
 
3863
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3864
 }
 
3865
function SetUserDataItem(theUserData: UserData; data: UnivPtr; size: SInt32; udType: OSType; index: SInt32): OSErr; external name '_SetUserDataItem';
 
3866
{
 
3867
 *  AddUserDataText()
 
3868
 *  
 
3869
 *  Availability:
 
3870
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3871
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3872
 *    Mac OS X:         in version 10.0 and later
 
3873
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3874
 }
 
3875
function AddUserDataText(theUserData: UserData; data: Handle; udType: OSType; index: SInt32; itlRegionTag: SInt16): OSErr; external name '_AddUserDataText';
 
3876
{
 
3877
 *  GetUserDataText()
 
3878
 *  
 
3879
 *  Availability:
 
3880
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3881
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3882
 *    Mac OS X:         in version 10.0 and later
 
3883
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3884
 }
 
3885
function GetUserDataText(theUserData: UserData; data: Handle; udType: OSType; index: SInt32; itlRegionTag: SInt16): OSErr; external name '_GetUserDataText';
 
3886
{
 
3887
 *  RemoveUserDataText()
 
3888
 *  
 
3889
 *  Availability:
 
3890
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3891
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3892
 *    Mac OS X:         in version 10.0 and later
 
3893
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3894
 }
 
3895
function RemoveUserDataText(theUserData: UserData; udType: OSType; index: SInt32; itlRegionTag: SInt16): OSErr; external name '_RemoveUserDataText';
 
3896
{
 
3897
 *  NewUserData()
 
3898
 *  
 
3899
 *  Availability:
 
3900
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3901
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3902
 *    Mac OS X:         in version 10.0 and later
 
3903
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3904
 }
 
3905
function NewUserData(var theUserData: UserData): OSErr; external name '_NewUserData';
 
3906
{
 
3907
 *  DisposeUserData()
 
3908
 *  
 
3909
 *  Availability:
 
3910
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3911
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3912
 *    Mac OS X:         in version 10.0 and later
 
3913
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3914
 }
 
3915
function DisposeUserData(theUserData: UserData): OSErr; external name '_DisposeUserData';
 
3916
{
 
3917
 *  NewUserDataFromHandle()
 
3918
 *  
 
3919
 *  Availability:
 
3920
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3921
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3922
 *    Mac OS X:         in version 10.0 and later
 
3923
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3924
 }
 
3925
function NewUserDataFromHandle(h: Handle; var theUserData: UserData): OSErr; external name '_NewUserDataFromHandle';
 
3926
{
 
3927
 *  PutUserDataIntoHandle()
 
3928
 *  
 
3929
 *  Availability:
 
3930
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
3931
 *    CarbonLib:        in CarbonLib 1.0 and later
 
3932
 *    Mac OS X:         in version 10.0 and later
 
3933
 *    Windows:          in qtmlClient.lib 3.0 and later
 
3934
 }
 
3935
function PutUserDataIntoHandle(theUserData: UserData; h: Handle): OSErr; external name '_PutUserDataIntoHandle';
 
3936
const
 
3937
        kQTCopyUserDataReplace          = $72706C63 (* 'rplc' *);                                               {  Delete all destination user data items and then add source user data items  }
 
3938
        kQTCopyUserDataMerge            = $6D657267 (* 'merg' *);                                               {  Add source user data items to destination user data  }
 
3939
 
 
3940
        {
 
3941
         *  CopyMovieUserData()
 
3942
         *  
 
3943
         *  Availability:
 
3944
         *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
3945
         *    CarbonLib:        in CarbonLib 1.6 and later
 
3946
         *    Mac OS X:         in version 10.2 and later
 
3947
         *    Windows:          in qtmlClient.lib 6.0 and later
 
3948
                }
 
3949
function CopyMovieUserData(srcMovie: Movie; dstMovie: Movie; copyRule: OSType): OSErr; external name '_CopyMovieUserData';
 
3950
{
 
3951
 *  CopyTrackUserData()
 
3952
 *  
 
3953
 *  Availability:
 
3954
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
3955
 *    CarbonLib:        in CarbonLib 1.6 and later
 
3956
 *    Mac OS X:         in version 10.2 and later
 
3957
 *    Windows:          in qtmlClient.lib 6.0 and later
 
3958
 }
 
3959
function CopyTrackUserData(srcTrack: Track; dstTrack: Track; copyRule: OSType): OSErr; external name '_CopyTrackUserData';
 
3960
{
 
3961
 *  CopyMediaUserData()
 
3962
 *  
 
3963
 *  Availability:
 
3964
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
3965
 *    CarbonLib:        in CarbonLib 1.6 and later
 
3966
 *    Mac OS X:         in version 10.2 and later
 
3967
 *    Windows:          in qtmlClient.lib 6.0 and later
 
3968
 }
 
3969
function CopyMediaUserData(srcMedia: Media; dstMedia: Media; copyRule: OSType): OSErr; external name '_CopyMediaUserData';
 
3970
{
 
3971
 *  CopyUserData()
 
3972
 *  
 
3973
 *  Availability:
 
3974
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
3975
 *    CarbonLib:        in CarbonLib 1.6 and later
 
3976
 *    Mac OS X:         in version 10.2 and later
 
3977
 *    Windows:          in qtmlClient.lib 6.0 and later
 
3978
 }
 
3979
function CopyUserData(srcUserData: UserData; dstUserData: UserData; copyRule: OSType): OSErr; external name '_CopyUserData';
 
3980
{
 
3981
 *  SetMoviePropertyAtom()
 
3982
 *  
 
3983
 *  Availability:
 
3984
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
3985
 *    CarbonLib:        in CarbonLib 1.1 and later
 
3986
 *    Mac OS X:         in version 10.0 and later
 
3987
 *    Windows:          in qtmlClient.lib 4.1 and later
 
3988
 }
 
3989
function SetMoviePropertyAtom(theMovie: Movie; propertyAtom: QTAtomContainer): OSErr; external name '_SetMoviePropertyAtom';
 
3990
{
 
3991
 *  GetMoviePropertyAtom()
 
3992
 *  
 
3993
 *  Availability:
 
3994
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
3995
 *    CarbonLib:        in CarbonLib 1.1 and later
 
3996
 *    Mac OS X:         in version 10.0 and later
 
3997
 *    Windows:          in qtmlClient.lib 4.1 and later
 
3998
 }
 
3999
function GetMoviePropertyAtom(theMovie: Movie; var propertyAtom: QTAtomContainer): OSErr; external name '_GetMoviePropertyAtom';
 
4000
{
 
4001
 *  GetMediaNextInterestingTime()
 
4002
 *  
 
4003
 *  Availability:
 
4004
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4005
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4006
 *    Mac OS X:         in version 10.0 and later
 
4007
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4008
 }
 
4009
procedure GetMediaNextInterestingTime(theMedia: Media; interestingTimeFlags: SInt16; time: TimeValue; rate: Fixed; var interestingTime: TimeValue; var interestingDuration: TimeValue); external name '_GetMediaNextInterestingTime';
 
4010
{
 
4011
 *  GetTrackNextInterestingTime()
 
4012
 *  
 
4013
 *  Availability:
 
4014
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4015
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4016
 *    Mac OS X:         in version 10.0 and later
 
4017
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4018
 }
 
4019
procedure GetTrackNextInterestingTime(theTrack: Track; interestingTimeFlags: SInt16; time: TimeValue; rate: Fixed; var interestingTime: TimeValue; var interestingDuration: TimeValue); external name '_GetTrackNextInterestingTime';
 
4020
{
 
4021
 *  GetMovieNextInterestingTime()
 
4022
 *  
 
4023
 *  Availability:
 
4024
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4025
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4026
 *    Mac OS X:         in version 10.0 and later
 
4027
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4028
 }
 
4029
procedure GetMovieNextInterestingTime(theMovie: Movie; interestingTimeFlags: SInt16; numMediaTypes: SInt16; whichMediaTypes: OSTypePtr; time: TimeValue; rate: Fixed; var interestingTime: TimeValue; var interestingDuration: TimeValue); external name '_GetMovieNextInterestingTime';
 
4030
{
 
4031
 *  CreateMovieFile()
 
4032
 *  
 
4033
 *  Availability:
 
4034
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4035
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4036
 *    Mac OS X:         in version 10.0 and later
 
4037
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4038
 }
 
4039
function CreateMovieFile(const (*var*) fileSpec: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: UInt32; var resRefNum: SInt16; var newmovie: Movie): OSErr; external name '_CreateMovieFile';
 
4040
{
 
4041
 *  OpenMovieFile()
 
4042
 *  
 
4043
 *  Availability:
 
4044
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4045
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4046
 *    Mac OS X:         in version 10.0 and later
 
4047
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4048
 }
 
4049
function OpenMovieFile(const (*var*) fileSpec: FSSpec; var resRefNum: SInt16; permission: SInt8): OSErr; external name '_OpenMovieFile';
 
4050
{
 
4051
 *  CloseMovieFile()
 
4052
 *  
 
4053
 *  Availability:
 
4054
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4055
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4056
 *    Mac OS X:         in version 10.0 and later
 
4057
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4058
 }
 
4059
function CloseMovieFile(resRefNum: SInt16): OSErr; external name '_CloseMovieFile';
 
4060
{
 
4061
 *  DeleteMovieFile()
 
4062
 *  
 
4063
 *  Availability:
 
4064
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4065
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4066
 *    Mac OS X:         in version 10.0 and later
 
4067
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4068
 }
 
4069
function DeleteMovieFile(const (*var*) fileSpec: FSSpec): OSErr; external name '_DeleteMovieFile';
 
4070
{
 
4071
 *  NewMovieFromFile()
 
4072
 *  
 
4073
 *  Availability:
 
4074
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4075
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4076
 *    Mac OS X:         in version 10.0 and later
 
4077
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4078
 }
 
4079
function NewMovieFromFile(var theMovie: Movie; resRefNum: SInt16; resId: SInt16Ptr; resName: StringPtr; newMovieFlags: SInt16; dataRefWasChanged: BooleanPtr): OSErr; external name '_NewMovieFromFile';
 
4080
{
 
4081
 *  NewMovieFromHandle()
 
4082
 *  
 
4083
 *  Availability:
 
4084
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4085
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4086
 *    Mac OS X:         in version 10.0 and later
 
4087
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4088
 }
 
4089
function NewMovieFromHandle(var theMovie: Movie; h: Handle; newMovieFlags: SInt16; var dataRefWasChanged: boolean): OSErr; external name '_NewMovieFromHandle';
 
4090
{
 
4091
 *  NewMovieFromDataFork()
 
4092
 *  
 
4093
 *  Availability:
 
4094
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4095
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4096
 *    Mac OS X:         in version 10.0 and later
 
4097
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4098
 }
 
4099
function NewMovieFromDataFork(var theMovie: Movie; fRefNum: SInt16; fileOffset: SInt32; newMovieFlags: SInt16; var dataRefWasChanged: boolean): OSErr; external name '_NewMovieFromDataFork';
 
4100
{
 
4101
 *  NewMovieFromDataFork64()
 
4102
 *  
 
4103
 *  Availability:
 
4104
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
4105
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
4106
 *    Mac OS X:         in version 10.0 and later
 
4107
 *    Windows:          in qtmlClient.lib 4.0 and later
 
4108
 }
 
4109
function NewMovieFromDataFork64(var theMovie: Movie; fRefNum: SInt32; const (*var*) fileOffset: wide; newMovieFlags: SInt16; var dataRefWasChanged: boolean): OSErr; external name '_NewMovieFromDataFork64';
 
4110
{
 
4111
 *  NewMovieFromUserProc()
 
4112
 *  
 
4113
 *  Availability:
 
4114
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4115
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4116
 *    Mac OS X:         in version 10.0 and later
 
4117
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4118
 }
 
4119
function NewMovieFromUserProc(var m: Movie; flags: SInt16; var dataRefWasChanged: boolean; getProc: GetMovieUPP; refCon: UnivPtr; defaultDataRef: Handle; dataRefType: OSType): OSErr; external name '_NewMovieFromUserProc';
 
4120
{
 
4121
 *  NewMovieFromDataRef()
 
4122
 *  
 
4123
 *  Availability:
 
4124
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4125
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4126
 *    Mac OS X:         in version 10.0 and later
 
4127
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4128
 }
 
4129
function NewMovieFromDataRef(var m: Movie; flags: SInt16; var id: SInt16; dataRef: Handle; dtaRefType: OSType): OSErr; external name '_NewMovieFromDataRef';
 
4130
{
 
4131
 *  NewMovieFromStorageOffset()
 
4132
 *  
 
4133
 *  Availability:
 
4134
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4135
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4136
 *    Mac OS X:         in version 10.2 and later
 
4137
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4138
 }
 
4139
function NewMovieFromStorageOffset(var theMovie: Movie; dh: DataHandler; const (*var*) fileOffset: wide; newMovieFlags: SInt16; var dataRefWasCataRefType: boolean): OSErr; external name '_NewMovieFromStorageOffset';
 
4140
{
 
4141
 *  NewMovieForDataRefFromHandle()
 
4142
 *  
 
4143
 *  Availability:
 
4144
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4145
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4146
 *    Mac OS X:         in version 10.2 and later
 
4147
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4148
 }
 
4149
function NewMovieForDataRefFromHandle(var theMovie: Movie; h: Handle; newMovieFlags: SInt16; var dataRefWasChanged: boolean; dataRef: Handle; dataRefType: OSType): OSErr; external name '_NewMovieForDataRefFromHandle';
 
4150
{
 
4151
 *  AddMovieResource()
 
4152
 *  
 
4153
 *  Availability:
 
4154
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4155
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4156
 *    Mac OS X:         in version 10.0 and later
 
4157
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4158
 }
 
4159
function AddMovieResource(theMovie: Movie; resRefNum: SInt16; var resId: SInt16; const (*var*) resName: Str255): OSErr; external name '_AddMovieResource';
 
4160
{
 
4161
 *  UpdateMovieResource()
 
4162
 *  
 
4163
 *  Availability:
 
4164
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4165
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4166
 *    Mac OS X:         in version 10.0 and later
 
4167
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4168
 }
 
4169
function UpdateMovieResource(theMovie: Movie; resRefNum: SInt16; resId: SInt16; const (*var*) resName: Str255): OSErr; external name '_UpdateMovieResource';
 
4170
{
 
4171
 *  RemoveMovieResource()
 
4172
 *  
 
4173
 *  Availability:
 
4174
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4175
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4176
 *    Mac OS X:         in version 10.0 and later
 
4177
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4178
 }
 
4179
function RemoveMovieResource(resRefNum: SInt16; resId: SInt16): OSErr; external name '_RemoveMovieResource';
 
4180
{
 
4181
 *  CreateMovieStorage()
 
4182
 *  
 
4183
 *  Availability:
 
4184
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4185
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4186
 *    Mac OS X:         in version 10.2 and later
 
4187
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4188
 }
 
4189
function CreateMovieStorage(dataRef: Handle; dataRefType: OSType; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SInt32; var outDataHandler: DataHandler; var newmovie: Movie): OSErr; external name '_CreateMovieStorage';
 
4190
{
 
4191
 *  OpenMovieStorage()
 
4192
 *  
 
4193
 *  Availability:
 
4194
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4195
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4196
 *    Mac OS X:         in version 10.2 and later
 
4197
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4198
 }
 
4199
function OpenMovieStorage(dataRef: Handle; dataRefType: OSType; flags: SInt32; var outDataHandler: DataHandler): OSErr; external name '_OpenMovieStorage';
 
4200
{
 
4201
 *  CloseMovieStorage()
 
4202
 *  
 
4203
 *  Availability:
 
4204
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4205
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4206
 *    Mac OS X:         in version 10.2 and later
 
4207
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4208
 }
 
4209
function CloseMovieStorage(dh: DataHandler): OSErr; external name '_CloseMovieStorage';
 
4210
{
 
4211
 *  DeleteMovieStorage()
 
4212
 *  
 
4213
 *  Availability:
 
4214
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4215
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4216
 *    Mac OS X:         in version 10.2 and later
 
4217
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4218
 }
 
4219
function DeleteMovieStorage(dataRef: Handle; dataRefType: OSType): OSErr; external name '_DeleteMovieStorage';
 
4220
{
 
4221
 *  AddMovieToStorage()
 
4222
 *  
 
4223
 *  Availability:
 
4224
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4225
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4226
 *    Mac OS X:         in version 10.2 and later
 
4227
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4228
 }
 
4229
function AddMovieToStorage(theMovie: Movie; dh: DataHandler): OSErr; external name '_AddMovieToStorage';
 
4230
{
 
4231
 *  UpdateMovieInStorage()
 
4232
 *  
 
4233
 *  Availability:
 
4234
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4235
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4236
 *    Mac OS X:         in version 10.2 and later
 
4237
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4238
 }
 
4239
function UpdateMovieInStorage(theMovie: Movie; dh: DataHandler): OSErr; external name '_UpdateMovieInStorage';
 
4240
{
 
4241
 *  HasMovieChanged()
 
4242
 *  
 
4243
 *  Availability:
 
4244
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4245
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4246
 *    Mac OS X:         in version 10.0 and later
 
4247
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4248
 }
 
4249
function HasMovieChanged(theMovie: Movie): boolean; external name '_HasMovieChanged';
 
4250
{
 
4251
 *  ClearMovieChanged()
 
4252
 *  
 
4253
 *  Availability:
 
4254
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4255
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4256
 *    Mac OS X:         in version 10.0 and later
 
4257
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4258
 }
 
4259
procedure ClearMovieChanged(theMovie: Movie); external name '_ClearMovieChanged';
 
4260
{
 
4261
 *  SetMovieDefaultDataRef()
 
4262
 *  
 
4263
 *  Availability:
 
4264
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4265
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4266
 *    Mac OS X:         in version 10.0 and later
 
4267
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4268
 }
 
4269
function SetMovieDefaultDataRef(theMovie: Movie; dataRef: Handle; dataRefType: OSType): OSErr; external name '_SetMovieDefaultDataRef';
 
4270
{
 
4271
 *  GetMovieDefaultDataRef()
 
4272
 *  
 
4273
 *  Availability:
 
4274
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4275
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4276
 *    Mac OS X:         in version 10.0 and later
 
4277
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4278
 }
 
4279
function GetMovieDefaultDataRef(theMovie: Movie; var dataRef: Handle; var dataRefType: OSType): OSErr; external name '_GetMovieDefaultDataRef';
 
4280
{
 
4281
 *  SetMovieAnchorDataRef()
 
4282
 *  
 
4283
 *  Availability:
 
4284
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
4285
 *    CarbonLib:        in CarbonLib 1.1 and later
 
4286
 *    Mac OS X:         in version 10.0 and later
 
4287
 *    Windows:          in qtmlClient.lib 4.1 and later
 
4288
 }
 
4289
function SetMovieAnchorDataRef(theMovie: Movie; dataRef: Handle; dataRefType: OSType): OSErr; external name '_SetMovieAnchorDataRef';
 
4290
{
 
4291
 *  GetMovieAnchorDataRef()
 
4292
 *  
 
4293
 *  Availability:
 
4294
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
4295
 *    CarbonLib:        in CarbonLib 1.1 and later
 
4296
 *    Mac OS X:         in version 10.0 and later
 
4297
 *    Windows:          in qtmlClient.lib 4.1 and later
 
4298
 }
 
4299
function GetMovieAnchorDataRef(theMovie: Movie; var dataRef: Handle; var dataRefType: OSType; var outFlags: SInt32): OSErr; external name '_GetMovieAnchorDataRef';
 
4300
{
 
4301
 *  SetMovieColorTable()
 
4302
 *  
 
4303
 *  Availability:
 
4304
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4305
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4306
 *    Mac OS X:         in version 10.0 and later
 
4307
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4308
 }
 
4309
function SetMovieColorTable(theMovie: Movie; ctab: CTabHandle): OSErr; external name '_SetMovieColorTable';
 
4310
{
 
4311
 *  GetMovieColorTable()
 
4312
 *  
 
4313
 *  Availability:
 
4314
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4315
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4316
 *    Mac OS X:         in version 10.0 and later
 
4317
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4318
 }
 
4319
function GetMovieColorTable(theMovie: Movie; var ctab: CTabHandle): OSErr; external name '_GetMovieColorTable';
 
4320
{
 
4321
 *  FlattenMovie()
 
4322
 *  
 
4323
 *  Availability:
 
4324
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4325
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4326
 *    Mac OS X:         in version 10.0 and later
 
4327
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4328
 }
 
4329
procedure FlattenMovie(theMovie: Movie; movieFlattenFlags: SInt32; const (*var*) theFile: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SInt32; var resId: SInt16; const (*var*) resName: Str255); external name '_FlattenMovie';
 
4330
{
 
4331
 *  FlattenMovieData()
 
4332
 *  
 
4333
 *  Availability:
 
4334
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4335
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4336
 *    Mac OS X:         in version 10.0 and later
 
4337
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4338
 }
 
4339
function FlattenMovieData(theMovie: Movie; movieFlattenFlags: SInt32; const (*var*) theFile: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SInt32): Movie; external name '_FlattenMovieData';
 
4340
{
 
4341
 *  FlattenMovieDataToDataRef()
 
4342
 *  
 
4343
 *  Availability:
 
4344
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
4345
 *    CarbonLib:        in CarbonLib 1.6 and later
 
4346
 *    Mac OS X:         in version 10.2 and later
 
4347
 *    Windows:          in qtmlClient.lib 6.0 and later
 
4348
 }
 
4349
function FlattenMovieDataToDataRef(theMovie: Movie; movieFlattenFlags: SInt32; dataRef: Handle; dataRefType: OSType; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SInt32): Movie; external name '_FlattenMovieDataToDataRef';
 
4350
{
 
4351
 *  SetMovieProgressProc()
 
4352
 *  
 
4353
 *  Availability:
 
4354
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4355
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4356
 *    Mac OS X:         in version 10.0 and later
 
4357
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4358
 }
 
4359
procedure SetMovieProgressProc(theMovie: Movie; p: MovieProgressUPP; refcon: SInt32); external name '_SetMovieProgressProc';
 
4360
{
 
4361
 *  GetMovieProgressProc()
 
4362
 *  
 
4363
 *  Availability:
 
4364
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
4365
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
4366
 *    Mac OS X:         in version 10.0 and later
 
4367
 *    Windows:          in qtmlClient.lib 4.0 and later
 
4368
 }
 
4369
procedure GetMovieProgressProc(theMovie: Movie; var p: MovieProgressUPP; var refcon: SInt32); external name '_GetMovieProgressProc';
 
4370
{
 
4371
 *  CreateShortcutMovieFile()
 
4372
 *  
 
4373
 *  Availability:
 
4374
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
4375
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
4376
 *    Mac OS X:         in version 10.0 and later
 
4377
 *    Windows:          in qtmlClient.lib 4.0 and later
 
4378
 }
 
4379
function CreateShortcutMovieFile(const (*var*) fileSpec: FSSpec; creator: OSType; scriptTag: ScriptCode; createMovieFileFlags: SInt32; targetDataRef: Handle; targetDataRefType: OSType): OSErr; external name '_CreateShortcutMovieFile';
 
4380
{
 
4381
 *  MovieSearchText()
 
4382
 *  
 
4383
 *  Availability:
 
4384
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4385
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4386
 *    Mac OS X:         in version 10.0 and later
 
4387
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4388
 }
 
4389
function MovieSearchText(theMovie: Movie; text: Ptr; size: SInt32; searchFlags: SInt32; var searchTrack: Track; var searchTime: TimeValue; var searchOffset: SInt32): OSErr; external name '_MovieSearchText';
 
4390
{
 
4391
 *  GetPosterBox()
 
4392
 *  
 
4393
 *  Availability:
 
4394
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4395
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4396
 *    Mac OS X:         in version 10.0 and later
 
4397
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4398
 }
 
4399
procedure GetPosterBox(theMovie: Movie; var boxRect: Rect); external name '_GetPosterBox';
 
4400
{
 
4401
 *  SetPosterBox()
 
4402
 *  
 
4403
 *  Availability:
 
4404
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4405
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4406
 *    Mac OS X:         in version 10.0 and later
 
4407
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4408
 }
 
4409
procedure SetPosterBox(theMovie: Movie; const (*var*) boxRect: Rect); external name '_SetPosterBox';
 
4410
{
 
4411
 *  GetMovieSegmentDisplayBoundsRgn()
 
4412
 *  
 
4413
 *  Availability:
 
4414
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4415
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4416
 *    Mac OS X:         in version 10.0 and later
 
4417
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4418
 }
 
4419
function GetMovieSegmentDisplayBoundsRgn(theMovie: Movie; time: TimeValue; duration: TimeValue): RgnHandle; external name '_GetMovieSegmentDisplayBoundsRgn';
 
4420
{
 
4421
 *  GetTrackSegmentDisplayBoundsRgn()
 
4422
 *  
 
4423
 *  Availability:
 
4424
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4425
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4426
 *    Mac OS X:         in version 10.0 and later
 
4427
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4428
 }
 
4429
function GetTrackSegmentDisplayBoundsRgn(theTrack: Track; time: TimeValue; duration: TimeValue): RgnHandle; external name '_GetTrackSegmentDisplayBoundsRgn';
 
4430
{
 
4431
 *  SetMovieCoverProcs()
 
4432
 *  
 
4433
 *  Availability:
 
4434
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4435
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4436
 *    Mac OS X:         in version 10.0 and later
 
4437
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4438
 }
 
4439
procedure SetMovieCoverProcs(theMovie: Movie; uncoverProc: MovieRgnCoverUPP; coverProc: MovieRgnCoverUPP; refcon: SInt32); external name '_SetMovieCoverProcs';
 
4440
{
 
4441
 *  GetMovieCoverProcs()
 
4442
 *  
 
4443
 *  Availability:
 
4444
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4445
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4446
 *    Mac OS X:         in version 10.0 and later
 
4447
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4448
 }
 
4449
function GetMovieCoverProcs(theMovie: Movie; var uncoverProc: MovieRgnCoverUPP; var coverProc: MovieRgnCoverUPP; var refcon: SInt32): OSErr; external name '_GetMovieCoverProcs';
 
4450
{
 
4451
 *  GetTrackStatus()
 
4452
 *  
 
4453
 *  Availability:
 
4454
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4455
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4456
 *    Mac OS X:         in version 10.0 and later
 
4457
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4458
 }
 
4459
function GetTrackStatus(theTrack: Track): ComponentResult; external name '_GetTrackStatus';
 
4460
{
 
4461
 *  GetMovieStatus()
 
4462
 *  
 
4463
 *  Availability:
 
4464
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4465
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4466
 *    Mac OS X:         in version 10.0 and later
 
4467
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4468
 }
 
4469
function GetMovieStatus(theMovie: Movie; var firstProblemTrack: Track): ComponentResult; external name '_GetMovieStatus';
 
4470
const
 
4471
        kMovieLoadStateError            = -1;
 
4472
        kMovieLoadStateLoading          = 1000;
 
4473
        kMovieLoadStateLoaded           = 2000;
 
4474
        kMovieLoadStatePlayable         = 10000;
 
4475
        kMovieLoadStatePlaythroughOK = 20000;
 
4476
        kMovieLoadStateComplete         = 100000;
 
4477
 
 
4478
        {
 
4479
         *  GetMovieLoadState()
 
4480
         *  
 
4481
         *  Availability:
 
4482
         *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
4483
         *    CarbonLib:        in CarbonLib 1.1 and later
 
4484
         *    Mac OS X:         in version 10.0 and later
 
4485
         *    Windows:          in qtmlClient.lib 4.1 and later
 
4486
                }
 
4487
function GetMovieLoadState(theMovie: Movie): SInt32; external name '_GetMovieLoadState';
 
4488
{ Input flags for CanQuickTimeOpenFile/DataRef }
 
4489
 
 
4490
const
 
4491
        kQTDontUseDataToFindImporter = $00000001;
 
4492
        kQTDontLookForMovieImporterIfGraphicsImporterFound = $00000002;
 
4493
        kQTAllowOpeningStillImagesAsMovies = $00000004;
 
4494
        kQTAllowImportersThatWouldCreateNewFile = $00000008;
 
4495
        kQTAllowAggressiveImporters     = $00000010;                                    {  eg, TEXT and PICT movie importers }
 
4496
 
 
4497
        {        Determines whether the file could be opened using a graphics importer or opened in place as a movie.   }
 
4498
        {
 
4499
         *  CanQuickTimeOpenFile()
 
4500
         *  
 
4501
         *  Availability:
 
4502
         *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
4503
         *    CarbonLib:        in CarbonLib 1.3 and later
 
4504
         *    Mac OS X:         in version 10.0 and later
 
4505
         *    Windows:          in qtmlClient.lib 5.0 and later
 
4506
                }
 
4507
function CanQuickTimeOpenFile(fileSpec: FSSpecPtr; fileType: OSType; fileNameExtension: OSType; var outCanOpenWithGraphicsImporter: boolean; var outCanOpenAsMovie: boolean; var outPreferGraphicsImporter: boolean; inFlags: UInt32): OSErr; external name '_CanQuickTimeOpenFile';
 
4508
{ Determines whether the file could be opened using a graphics importer or opened in place as a movie. }
 
4509
{
 
4510
 *  CanQuickTimeOpenDataRef()
 
4511
 *  
 
4512
 *  Availability:
 
4513
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
4514
 *    CarbonLib:        in CarbonLib 1.3 and later
 
4515
 *    Mac OS X:         in version 10.0 and later
 
4516
 *    Windows:          in qtmlClient.lib 5.0 and later
 
4517
 }
 
4518
function CanQuickTimeOpenDataRef(dataRef: Handle; dataRefType: OSType; var outCanOpenWithGraphicsImporter: boolean; var outCanOpenAsMovie: boolean; var outPreferGraphicsImporter: boolean; inFlags: UInt32): OSErr; external name '_CanQuickTimeOpenDataRef';
 
4519
{***
 
4520
    Movie Controller support routines
 
4521
***}
 
4522
{
 
4523
 *  NewMovieController()
 
4524
 *  
 
4525
 *  Availability:
 
4526
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4527
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4528
 *    Mac OS X:         in version 10.0 and later
 
4529
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4530
 }
 
4531
function NewMovieController(theMovie: Movie; const (*var*) movieRect: Rect; someFlags: SInt32): ComponentInstance; external name '_NewMovieController';
 
4532
{
 
4533
 *  DisposeMovieController()
 
4534
 *  
 
4535
 *  Availability:
 
4536
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4537
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4538
 *    Mac OS X:         in version 10.0 and later
 
4539
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4540
 }
 
4541
procedure DisposeMovieController(mc: ComponentInstance); external name '_DisposeMovieController';
 
4542
{
 
4543
 *  ShowMovieInformation()
 
4544
 *  
 
4545
 *  Availability:
 
4546
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4547
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4548
 *    Mac OS X:         in version 10.0 and later
 
4549
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4550
 }
 
4551
procedure ShowMovieInformation(theMovie: Movie; filterProc: ModalFilterUPP; refCon: SInt32); external name '_ShowMovieInformation';
 
4552
{****
 
4553
    Scrap routines
 
4554
****}
 
4555
{
 
4556
 *  PutMovieOnScrap()
 
4557
 *  
 
4558
 *  Availability:
 
4559
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4560
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4561
 *    Mac OS X:         in version 10.0 and later
 
4562
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4563
 }
 
4564
function PutMovieOnScrap(theMovie: Movie; movieScrapFlags: SInt32): OSErr; external name '_PutMovieOnScrap';
 
4565
{
 
4566
 *  NewMovieFromScrap()
 
4567
 *  
 
4568
 *  Availability:
 
4569
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4570
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4571
 *    Mac OS X:         in version 10.0 and later
 
4572
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4573
 }
 
4574
function NewMovieFromScrap(newMovieFlags: SInt32): Movie; external name '_NewMovieFromScrap';
 
4575
{****
 
4576
    DataRef routines
 
4577
****}
 
4578
 
 
4579
{
 
4580
 *  GetMediaDataRef()
 
4581
 *  
 
4582
 *  Availability:
 
4583
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4584
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4585
 *    Mac OS X:         in version 10.0 and later
 
4586
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4587
 }
 
4588
function GetMediaDataRef(theMedia: Media; index: SInt16; var dataRef: Handle; var dataRefType: OSType; var dataRefAttributes: SInt32): OSErr; external name '_GetMediaDataRef';
 
4589
{
 
4590
 *  SetMediaDataRef()
 
4591
 *  
 
4592
 *  Availability:
 
4593
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4594
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4595
 *    Mac OS X:         in version 10.0 and later
 
4596
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4597
 }
 
4598
function SetMediaDataRef(theMedia: Media; index: SInt16; dataRef: Handle; dataRefType: OSType): OSErr; external name '_SetMediaDataRef';
 
4599
{
 
4600
 *  SetMediaDataRefAttributes()
 
4601
 *  
 
4602
 *  Availability:
 
4603
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4604
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4605
 *    Mac OS X:         in version 10.0 and later
 
4606
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4607
 }
 
4608
function SetMediaDataRefAttributes(theMedia: Media; index: SInt16; dataRefAttributes: SInt32): OSErr; external name '_SetMediaDataRefAttributes';
 
4609
{
 
4610
 *  AddMediaDataRef()
 
4611
 *  
 
4612
 *  Availability:
 
4613
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4614
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4615
 *    Mac OS X:         in version 10.0 and later
 
4616
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4617
 }
 
4618
function AddMediaDataRef(theMedia: Media; var index: SInt16; dataRef: Handle; dataRefType: OSType): OSErr; external name '_AddMediaDataRef';
 
4619
{
 
4620
 *  GetMediaDataRefCount()
 
4621
 *  
 
4622
 *  Availability:
 
4623
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4624
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4625
 *    Mac OS X:         in version 10.0 and later
 
4626
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4627
 }
 
4628
function GetMediaDataRefCount(theMedia: Media; var count: SInt16): OSErr; external name '_GetMediaDataRefCount';
 
4629
{
 
4630
 *  QTNewAlias()
 
4631
 *  
 
4632
 *  Availability:
 
4633
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
4634
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4635
 *    Mac OS X:         in version 10.0 and later
 
4636
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4637
 }
 
4638
function QTNewAlias(const (*var*) fss: FSSpec; var alias: AliasHandle; minimal: boolean): OSErr; external name '_QTNewAlias';
 
4639
{****
 
4640
    Playback hint routines
 
4641
****}
 
4642
{
 
4643
 *  SetMoviePlayHints()
 
4644
 *  
 
4645
 *  Availability:
 
4646
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4647
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4648
 *    Mac OS X:         in version 10.0 and later
 
4649
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4650
 }
 
4651
procedure SetMoviePlayHints(theMovie: Movie; flags: SInt32; flagsMask: SInt32); external name '_SetMoviePlayHints';
 
4652
{
 
4653
 *  SetMediaPlayHints()
 
4654
 *  
 
4655
 *  Availability:
 
4656
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4657
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4658
 *    Mac OS X:         in version 10.0 and later
 
4659
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4660
 }
 
4661
procedure SetMediaPlayHints(theMedia: Media; flags: SInt32; flagsMask: SInt32); external name '_SetMediaPlayHints';
 
4662
{
 
4663
 *  GetMediaPlayHints()
 
4664
 *  
 
4665
 *  Availability:
 
4666
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
4667
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4668
 *    Mac OS X:         in version 10.0 and later
 
4669
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4670
 }
 
4671
procedure GetMediaPlayHints(theMedia: Media; var flags: SInt32); external name '_GetMediaPlayHints';
 
4672
{****
 
4673
    Load time track hints
 
4674
****}
 
4675
 
 
4676
const
 
4677
        preloadAlways                           = $00000001;
 
4678
        preloadOnlyIfEnabled            = $00000002;
 
4679
 
 
4680
        {
 
4681
         *  SetTrackLoadSettings()
 
4682
         *  
 
4683
         *  Availability:
 
4684
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4685
         *    CarbonLib:        in CarbonLib 1.0 and later
 
4686
         *    Mac OS X:         in version 10.0 and later
 
4687
         *    Windows:          in qtmlClient.lib 3.0 and later
 
4688
                }
 
4689
procedure SetTrackLoadSettings(theTrack: Track; preloadTime: TimeValue; preloadDuration: TimeValue; preloadFlags: SInt32; defaultHints: SInt32); external name '_SetTrackLoadSettings';
 
4690
{
 
4691
 *  GetTrackLoadSettings()
 
4692
 *  
 
4693
 *  Availability:
 
4694
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4695
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4696
 *    Mac OS X:         in version 10.0 and later
 
4697
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4698
 }
 
4699
procedure GetTrackLoadSettings(theTrack: Track; var preloadTime: TimeValue; var preloadDuration: TimeValue; var preloadFlags: SInt32; var defaultHints: SInt32); external name '_GetTrackLoadSettings';
 
4700
{****
 
4701
    Big screen TV
 
4702
****}
 
4703
 
 
4704
const
 
4705
        fullScreenHideCursor            = $00000001;
 
4706
        fullScreenAllowEvents           = $00000002;
 
4707
        fullScreenDontChangeMenuBar     = $00000004;
 
4708
        fullScreenPreflightSize         = $00000008;
 
4709
 
 
4710
        {
 
4711
         *  BeginFullScreen()
 
4712
         *  
 
4713
         *  Availability:
 
4714
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4715
         *    CarbonLib:        in CarbonLib 1.0 and later
 
4716
         *    Mac OS X:         in version 10.0 and later
 
4717
         *    Windows:          in qtmlClient.lib 3.0 and later
 
4718
                }
 
4719
function BeginFullScreen(var restoreState: Ptr; whichGD: GDHandle; var desiredWidth: SInt16; var desiredHeight: SInt16; var newWindow: WindowRef; var eraseColor: RGBColor; flags: SInt32): OSErr; external name '_BeginFullScreen';
 
4720
{
 
4721
 *  EndFullScreen()
 
4722
 *  
 
4723
 *  Availability:
 
4724
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4725
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4726
 *    Mac OS X:         in version 10.0 and later
 
4727
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4728
 }
 
4729
function EndFullScreen(fullState: Ptr; flags: SInt32): OSErr; external name '_EndFullScreen';
 
4730
{****
 
4731
    Wired Actions
 
4732
****}
 
4733
{  flags for MovieExecuteWiredActions }
 
4734
 
 
4735
const
 
4736
        movieExecuteWiredActionDontExecute = $00000001;
 
4737
 
 
4738
        {
 
4739
         *  AddMovieExecuteWiredActionsProc()
 
4740
         *  
 
4741
         *  Availability:
 
4742
         *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
4743
         *    CarbonLib:        in CarbonLib 1.0.2 and later
 
4744
         *    Mac OS X:         in version 10.0 and later
 
4745
         *    Windows:          in qtmlClient.lib 4.0 and later
 
4746
                }
 
4747
function AddMovieExecuteWiredActionsProc(theMovie: Movie; proc: MovieExecuteWiredActionsUPP; refCon: UnivPtr): OSErr; external name '_AddMovieExecuteWiredActionsProc';
 
4748
{
 
4749
 *  RemoveMovieExecuteWiredActionsProc()
 
4750
 *  
 
4751
 *  Availability:
 
4752
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
4753
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
4754
 *    Mac OS X:         in version 10.0 and later
 
4755
 *    Windows:          in qtmlClient.lib 4.0 and later
 
4756
 }
 
4757
function RemoveMovieExecuteWiredActionsProc(theMovie: Movie; proc: MovieExecuteWiredActionsUPP; refCon: UnivPtr): OSErr; external name '_RemoveMovieExecuteWiredActionsProc';
 
4758
{
 
4759
 *  MovieExecuteWiredActions()
 
4760
 *  
 
4761
 *  Availability:
 
4762
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
4763
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
4764
 *    Mac OS X:         in version 10.0 and later
 
4765
 *    Windows:          in qtmlClient.lib 4.0 and later
 
4766
 }
 
4767
function MovieExecuteWiredActions(theMovie: Movie; flags: SInt32; actions: QTAtomContainer): OSErr; external name '_MovieExecuteWiredActions';
 
4768
{****
 
4769
    Keyboard Navigation/Editable Text Field Support
 
4770
****}
 
4771
{
 
4772
   Navigation Direction Constants
 
4773
        for MediaNavigateTargetRefCon
 
4774
}
 
4775
 
 
4776
const
 
4777
        kRefConNavigationNext           = 0;
 
4778
        kRefConNavigationPrevious       = 1;
 
4779
 
 
4780
        {
 
4781
           Refcon Properties 
 
4782
                for MediaRefConGetProerty/MediaRefConSetProperty
 
4783
        }
 
4784
        kRefConPropertyCanHaveFocus     = 1;                                                    {  Boolean  }
 
4785
        kRefConPropertyHasFocus         = 2;                                                    {  Boolean  }
 
4786
 
 
4787
        {  media properties }
 
4788
        kTrackFocusCanEditFlag          = $6B656474 (* 'kedt' *);
 
4789
        kTrackDefaultFocusFlags         = $6B666F63 (* 'kfoc' *);
 
4790
        kTrackFocusDefaultRefcon        = $6B726566 (* 'kref' *);
 
4791
 
 
4792
        {  focus flags }
 
4793
        kTrackFocusOn                           = 1;
 
4794
        kTrackHandlesTabs                       = 2;                                                    {  this is reserved for a future release }
 
4795
 
 
4796
        {       ****
 
4797
            Flash track properties
 
4798
        ****    }
 
4799
        kFlashTrackPropertyAcceptAllClicks = $636C696B (* 'clik' *);                            {  type of media property atom; data is a Boolean  }
 
4800
 
 
4801
        {       ****
 
4802
            Sprite Toolbox
 
4803
        ****    }
 
4804
        kBackgroundSpriteLayerNum       = 32767;
 
4805
 
 
4806
 
 
4807
        {   Sprite Properties }
 
4808
        kSpritePropertyMatrix           = 1;
 
4809
        kSpritePropertyImageDescription = 2;
 
4810
        kSpritePropertyImageDataPtr     = 3;
 
4811
        kSpritePropertyVisible          = 4;
 
4812
        kSpritePropertyLayer            = 5;
 
4813
        kSpritePropertyGraphicsMode     = 6;
 
4814
        kSpritePropertyImageDataSize = 7;
 
4815
        kSpritePropertyActionHandlingSpriteID = 8;
 
4816
        kSpritePropertyCanBeHitTested = 9;
 
4817
        kSpritePropertyImageIndex       = 100;
 
4818
        kSpriteTrackPropertyBackgroundColor = 101;
 
4819
        kSpriteTrackPropertyOffscreenBitDepth = 102;
 
4820
        kSpriteTrackPropertySampleFormat = 103;
 
4821
        kSpriteTrackPropertyScaleSpritesToScaleWorld = 104;
 
4822
        kSpriteTrackPropertyHasActions = 105;
 
4823
        kSpriteTrackPropertyVisible     = 106;
 
4824
        kSpriteTrackPropertyQTIdleEventsFrequency = 107;
 
4825
        kSpriteTrackPropertyAllSpritesHitTestingMode = 108;
 
4826
        kSpriteTrackPropertyPreferredDepthInterpretationMode = 109;
 
4827
        kSpriteImagePropertyRegistrationPoint = 1000;
 
4828
        kSpriteImagePropertyGroupID     = 1001;
 
4829
 
 
4830
        {  values for kSpriteTrackPropertyPreferredDepthInterpretationMode }
 
4831
        kSpriteTrackPreferredDepthCompatibilityMode = 0;
 
4832
        kSpriteTrackPreferredDepthModernMode = 1;
 
4833
 
 
4834
        {  values for kSpriteTrackPropertyAllSpritesHitTestingMode }
 
4835
        kSpriteHitTestUseSpritesOwnPropertiesMode = 0;
 
4836
        kSpriteHitTestTreatAllSpritesAsHitTestableMode = 1;
 
4837
        kSpriteHitTestTreatAllSpritesAsNotHitTestableMode = 2;
 
4838
 
 
4839
        {  special value for kSpriteTrackPropertyQTIdleEventsFrequency (the default) }
 
4840
        kNoQTIdleEvents                         = -1;
 
4841
 
 
4842
        {  GetSpriteProperties for accessing invalid SpriteWorldRegion }
 
4843
        kGetSpriteWorldInvalidRegionAndLeaveIntact = -1;
 
4844
        kGetSpriteWorldInvalidRegionAndThenSetEmpty = -2;
 
4845
 
 
4846
        {  flagsIn for SpriteWorldIdle }
 
4847
        kOnlyDrawToSpriteWorld          = $00000001;
 
4848
        kSpriteWorldPreflight           = $00000002;
 
4849
 
 
4850
        {  flagsOut for SpriteWorldIdle }
 
4851
        kSpriteWorldDidDraw                     = $00000001;
 
4852
        kSpriteWorldNeedsToDraw         = $00000002;
 
4853
 
 
4854
        {  flags for sprite track sample format }
 
4855
        kKeyFrameAndSingleOverride      = $00000002;
 
4856
        kKeyFrameAndAllOverrides        = $00000004;
 
4857
 
 
4858
        {  sprite world flags }
 
4859
        kScaleSpritesToScaleWorld       = $00000002;
 
4860
        kSpriteWorldHighQuality         = $00000004;
 
4861
        kSpriteWorldDontAutoInvalidate = $00000008;
 
4862
        kSpriteWorldInvisible           = $00000010;
 
4863
        kSpriteWorldDirtyInsteadOfFlush = $00000020;
 
4864
 
 
4865
        {
 
4866
         *  NewSpriteWorld()
 
4867
         *  
 
4868
         *  Availability:
 
4869
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4870
         *    CarbonLib:        in CarbonLib 1.0 and later
 
4871
         *    Mac OS X:         in version 10.0 and later
 
4872
         *    Windows:          in qtmlClient.lib 3.0 and later
 
4873
                }
 
4874
function NewSpriteWorld(var newSpriteWorld: SpriteWorld; destination: GWorldPtr; spriteLayer: GWorldPtr; var backgroundColor: RGBColor; background: GWorldPtr): OSErr; external name '_NewSpriteWorld';
 
4875
{
 
4876
 *  DisposeSpriteWorld()
 
4877
 *  
 
4878
 *  Availability:
 
4879
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4880
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4881
 *    Mac OS X:         in version 10.0 and later
 
4882
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4883
 }
 
4884
procedure DisposeSpriteWorld(theSpriteWorld: SpriteWorld); external name '_DisposeSpriteWorld';
 
4885
{
 
4886
 *  SetSpriteWorldClip()
 
4887
 *  
 
4888
 *  Availability:
 
4889
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4890
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4891
 *    Mac OS X:         in version 10.0 and later
 
4892
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4893
 }
 
4894
function SetSpriteWorldClip(theSpriteWorld: SpriteWorld; clipRgn: RgnHandle): OSErr; external name '_SetSpriteWorldClip';
 
4895
{
 
4896
 *  SetSpriteWorldMatrix()
 
4897
 *  
 
4898
 *  Availability:
 
4899
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4900
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4901
 *    Mac OS X:         in version 10.0 and later
 
4902
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4903
 }
 
4904
function SetSpriteWorldMatrix(theSpriteWorld: SpriteWorld; const (*var*) matrix: MatrixRecord): OSErr; external name '_SetSpriteWorldMatrix';
 
4905
{
 
4906
 *  SetSpriteWorldGraphicsMode()
 
4907
 *  
 
4908
 *  Availability:
 
4909
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
4910
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4911
 *    Mac OS X:         in version 10.0 and later
 
4912
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4913
 }
 
4914
function SetSpriteWorldGraphicsMode(theSpriteWorld: SpriteWorld; mode: SInt32; const (*var*) opColor: RGBColor): OSErr; external name '_SetSpriteWorldGraphicsMode';
 
4915
{
 
4916
 *  SpriteWorldIdle()
 
4917
 *  
 
4918
 *  Availability:
 
4919
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4920
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4921
 *    Mac OS X:         in version 10.0 and later
 
4922
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4923
 }
 
4924
function SpriteWorldIdle(theSpriteWorld: SpriteWorld; flagsIn: SInt32; var flagsOut: SInt32): OSErr; external name '_SpriteWorldIdle';
 
4925
{
 
4926
 *  InvalidateSpriteWorld()
 
4927
 *  
 
4928
 *  Availability:
 
4929
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4930
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4931
 *    Mac OS X:         in version 10.0 and later
 
4932
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4933
 }
 
4934
function InvalidateSpriteWorld(theSpriteWorld: SpriteWorld; var invalidArea: Rect): OSErr; external name '_InvalidateSpriteWorld';
 
4935
{
 
4936
 *  SpriteWorldHitTest()
 
4937
 *  
 
4938
 *  Availability:
 
4939
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4940
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4941
 *    Mac OS X:         in version 10.0 and later
 
4942
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4943
 }
 
4944
function SpriteWorldHitTest(theSpriteWorld: SpriteWorld; flags: SInt32; loc: Point; var spriteHit: Sprite): OSErr; external name '_SpriteWorldHitTest';
 
4945
{
 
4946
 *  SpriteHitTest()
 
4947
 *  
 
4948
 *  Availability:
 
4949
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4950
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4951
 *    Mac OS X:         in version 10.0 and later
 
4952
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4953
 }
 
4954
function SpriteHitTest(theSprite: Sprite; flags: SInt32; loc: Point; var wasHit: boolean): OSErr; external name '_SpriteHitTest';
 
4955
{
 
4956
 *  DisposeAllSprites()
 
4957
 *  
 
4958
 *  Availability:
 
4959
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4960
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4961
 *    Mac OS X:         in version 10.0 and later
 
4962
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4963
 }
 
4964
procedure DisposeAllSprites(theSpriteWorld: SpriteWorld); external name '_DisposeAllSprites';
 
4965
{
 
4966
 *  SetSpriteWorldFlags()
 
4967
 *  
 
4968
 *  Availability:
 
4969
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
4970
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4971
 *    Mac OS X:         in version 10.0 and later
 
4972
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4973
 }
 
4974
function SetSpriteWorldFlags(spriteWorld_: SpriteWorld; flags: SInt32; flagsMask: SInt32): OSErr; external name '_SetSpriteWorldFlags';
 
4975
{
 
4976
 *  NewSprite()
 
4977
 *  
 
4978
 *  Availability:
 
4979
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4980
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4981
 *    Mac OS X:         in version 10.0 and later
 
4982
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4983
 }
 
4984
function NewSprite(var newSprite: Sprite; itsSpriteWorld: SpriteWorld; idh: ImageDescriptionHandle; imageDataPtr: Ptr; var matrix: MatrixRecord; visible: boolean; layer: SInt16): OSErr; external name '_NewSprite';
 
4985
{
 
4986
 *  DisposeSprite()
 
4987
 *  
 
4988
 *  Availability:
 
4989
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
4990
 *    CarbonLib:        in CarbonLib 1.0 and later
 
4991
 *    Mac OS X:         in version 10.0 and later
 
4992
 *    Windows:          in qtmlClient.lib 3.0 and later
 
4993
 }
 
4994
procedure DisposeSprite(theSprite: Sprite); external name '_DisposeSprite';
 
4995
{
 
4996
 *  InvalidateSprite()
 
4997
 *  
 
4998
 *  Availability:
 
4999
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5000
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5001
 *    Mac OS X:         in version 10.0 and later
 
5002
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5003
 }
 
5004
procedure InvalidateSprite(theSprite: Sprite); external name '_InvalidateSprite';
 
5005
{
 
5006
 *  SetSpriteProperty()
 
5007
 *  
 
5008
 *  Availability:
 
5009
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5010
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5011
 *    Mac OS X:         in version 10.0 and later
 
5012
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5013
 }
 
5014
function SetSpriteProperty(theSprite: Sprite; propertyType: SInt32; propertyValue: UnivPtr): OSErr; external name '_SetSpriteProperty';
 
5015
{
 
5016
 *  GetSpriteProperty()
 
5017
 *  
 
5018
 *  Availability:
 
5019
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5020
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5021
 *    Mac OS X:         in version 10.0 and later
 
5022
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5023
 }
 
5024
function GetSpriteProperty(theSprite: Sprite; propertyType: SInt32; propertyValue: UnivPtr): OSErr; external name '_GetSpriteProperty';
 
5025
{****
 
5026
    QT Atom Data Support
 
5027
****}
 
5028
 
 
5029
const
 
5030
        kParentAtomIsContainer          = 0;
 
5031
 
 
5032
        {  create and dispose QTAtomContainer objects }
 
5033
 
 
5034
        {
 
5035
         *  QTNewAtomContainer()
 
5036
         *  
 
5037
         *  Availability:
 
5038
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5039
         *    CarbonLib:        in CarbonLib 1.0 and later
 
5040
         *    Mac OS X:         in version 10.0 and later
 
5041
         *    Windows:          in qtmlClient.lib 3.0 and later
 
5042
                }
 
5043
function QTNewAtomContainer(var atomData: QTAtomContainer): OSErr; external name '_QTNewAtomContainer';
 
5044
{
 
5045
 *  QTDisposeAtomContainer()
 
5046
 *  
 
5047
 *  Availability:
 
5048
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5049
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5050
 *    Mac OS X:         in version 10.0 and later
 
5051
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5052
 }
 
5053
function QTDisposeAtomContainer(atomData: QTAtomContainer): OSErr; external name '_QTDisposeAtomContainer';
 
5054
{  locating nested atoms within QTAtomContainer container }
 
5055
 
 
5056
{
 
5057
 *  QTGetNextChildType()
 
5058
 *  
 
5059
 *  Availability:
 
5060
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5061
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5062
 *    Mac OS X:         in version 10.0 and later
 
5063
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5064
 }
 
5065
function QTGetNextChildType(container: QTAtomContainer; parentAtom: QTAtom; currentChildType: QTAtomType): QTAtomType; external name '_QTGetNextChildType';
 
5066
{
 
5067
 *  QTCountChildrenOfType()
 
5068
 *  
 
5069
 *  Availability:
 
5070
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5071
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5072
 *    Mac OS X:         in version 10.0 and later
 
5073
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5074
 }
 
5075
function QTCountChildrenOfType(container: QTAtomContainer; parentAtom: QTAtom; childType: QTAtomType): SInt16; external name '_QTCountChildrenOfType';
 
5076
{
 
5077
 *  QTFindChildByIndex()
 
5078
 *  
 
5079
 *  Availability:
 
5080
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5081
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5082
 *    Mac OS X:         in version 10.0 and later
 
5083
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5084
 }
 
5085
function QTFindChildByIndex(container: QTAtomContainer; parentAtom: QTAtom; atomType: QTAtomType; index: SInt16; var id: QTAtomID): QTAtom; external name '_QTFindChildByIndex';
 
5086
{
 
5087
 *  QTFindChildByID()
 
5088
 *  
 
5089
 *  Availability:
 
5090
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5091
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5092
 *    Mac OS X:         in version 10.0 and later
 
5093
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5094
 }
 
5095
function QTFindChildByID(container: QTAtomContainer; parentAtom: QTAtom; atomType: QTAtomType; id: QTAtomID; var index: SInt16): QTAtom; external name '_QTFindChildByID';
 
5096
{
 
5097
 *  QTNextChildAnyType()
 
5098
 *  
 
5099
 *  Availability:
 
5100
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5101
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5102
 *    Mac OS X:         in version 10.0 and later
 
5103
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5104
 }
 
5105
function QTNextChildAnyType(container: QTAtomContainer; parentAtom: QTAtom; currentChild: QTAtom; var nextChild: QTAtom): OSErr; external name '_QTNextChildAnyType';
 
5106
{  set a leaf atom's data }
 
5107
{
 
5108
 *  QTSetAtomData()
 
5109
 *  
 
5110
 *  Availability:
 
5111
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5112
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5113
 *    Mac OS X:         in version 10.0 and later
 
5114
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5115
 }
 
5116
function QTSetAtomData(container: QTAtomContainer; atom: QTAtom; dataSize: SInt32; atomData: UnivPtr): OSErr; external name '_QTSetAtomData';
 
5117
{  extracting data }
 
5118
{
 
5119
 *  QTCopyAtomDataToHandle()
 
5120
 *  
 
5121
 *  Availability:
 
5122
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5123
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5124
 *    Mac OS X:         in version 10.0 and later
 
5125
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5126
 }
 
5127
function QTCopyAtomDataToHandle(container: QTAtomContainer; atom: QTAtom; targetHandle: Handle): OSErr; external name '_QTCopyAtomDataToHandle';
 
5128
{
 
5129
 *  QTCopyAtomDataToPtr()
 
5130
 *  
 
5131
 *  Availability:
 
5132
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5133
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5134
 *    Mac OS X:         in version 10.0 and later
 
5135
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5136
 }
 
5137
function QTCopyAtomDataToPtr(container: QTAtomContainer; atom: QTAtom; sizeOrLessOK: boolean; size: SInt32; targetPtr: UnivPtr; var actualSize: SInt32): OSErr; external name '_QTCopyAtomDataToPtr';
 
5138
{
 
5139
 *  QTGetAtomTypeAndID()
 
5140
 *  
 
5141
 *  Availability:
 
5142
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5143
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5144
 *    Mac OS X:         in version 10.0 and later
 
5145
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5146
 }
 
5147
function QTGetAtomTypeAndID(container: QTAtomContainer; atom: QTAtom; var atomType: QTAtomType; var id: QTAtomID): OSErr; external name '_QTGetAtomTypeAndID';
 
5148
{  extract a copy of an atom and all of it's children, caller disposes }
 
5149
{
 
5150
 *  QTCopyAtom()
 
5151
 *  
 
5152
 *  Availability:
 
5153
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5154
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5155
 *    Mac OS X:         in version 10.0 and later
 
5156
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5157
 }
 
5158
function QTCopyAtom(container: QTAtomContainer; atom: QTAtom; var targetContainer: QTAtomContainer): OSErr; external name '_QTCopyAtom';
 
5159
{  obtaining direct reference to atom data }
 
5160
{
 
5161
 *  QTLockContainer()
 
5162
 *  
 
5163
 *  Availability:
 
5164
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5165
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5166
 *    Mac OS X:         in version 10.0 and later
 
5167
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5168
 }
 
5169
function QTLockContainer(container: QTAtomContainer): OSErr; external name '_QTLockContainer';
 
5170
{
 
5171
 *  QTGetAtomDataPtr()
 
5172
 *  
 
5173
 *  Availability:
 
5174
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5175
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5176
 *    Mac OS X:         in version 10.0 and later
 
5177
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5178
 }
 
5179
function QTGetAtomDataPtr(container: QTAtomContainer; atom: QTAtom; var dataSize: SInt32; var atomData: Ptr): OSErr; external name '_QTGetAtomDataPtr';
 
5180
{
 
5181
 *  QTUnlockContainer()
 
5182
 *  
 
5183
 *  Availability:
 
5184
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5185
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5186
 *    Mac OS X:         in version 10.0 and later
 
5187
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5188
 }
 
5189
function QTUnlockContainer(container: QTAtomContainer): OSErr; external name '_QTUnlockContainer';
 
5190
{
 
5191
   building QTAtomContainer trees
 
5192
   creates and inserts new atom at specified index, existing atoms at or after index are moved toward end of list
 
5193
   used for Top-Down tree creation
 
5194
}
 
5195
{
 
5196
 *  QTInsertChild()
 
5197
 *  
 
5198
 *  Availability:
 
5199
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5200
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5201
 *    Mac OS X:         in version 10.0 and later
 
5202
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5203
 }
 
5204
function QTInsertChild(container: QTAtomContainer; parentAtom: QTAtom; atomType: QTAtomType; id: QTAtomID; index: SInt16; dataSize: SInt32; data: UnivPtr; var newAtom: QTAtom): OSErr; external name '_QTInsertChild';
 
5205
{  inserts children from childrenContainer as children of parentAtom }
 
5206
{
 
5207
 *  QTInsertChildren()
 
5208
 *  
 
5209
 *  Availability:
 
5210
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5211
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5212
 *    Mac OS X:         in version 10.0 and later
 
5213
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5214
 }
 
5215
function QTInsertChildren(container: QTAtomContainer; parentAtom: QTAtom; childrenContainer: QTAtomContainer): OSErr; external name '_QTInsertChildren';
 
5216
{  destruction }
 
5217
{
 
5218
 *  QTRemoveAtom()
 
5219
 *  
 
5220
 *  Availability:
 
5221
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5222
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5223
 *    Mac OS X:         in version 10.0 and later
 
5224
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5225
 }
 
5226
function QTRemoveAtom(container: QTAtomContainer; atom: QTAtom): OSErr; external name '_QTRemoveAtom';
 
5227
{
 
5228
 *  QTRemoveChildren()
 
5229
 *  
 
5230
 *  Availability:
 
5231
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5232
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5233
 *    Mac OS X:         in version 10.0 and later
 
5234
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5235
 }
 
5236
function QTRemoveChildren(container: QTAtomContainer; atom: QTAtom): OSErr; external name '_QTRemoveChildren';
 
5237
{  replacement must be same type as target }
 
5238
{
 
5239
 *  QTReplaceAtom()
 
5240
 *  
 
5241
 *  Availability:
 
5242
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5243
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5244
 *    Mac OS X:         in version 10.0 and later
 
5245
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5246
 }
 
5247
function QTReplaceAtom(targetContainer: QTAtomContainer; targetAtom: QTAtom; replacementContainer: QTAtomContainer; replacementAtom: QTAtom): OSErr; external name '_QTReplaceAtom';
 
5248
{
 
5249
 *  QTSwapAtoms()
 
5250
 *  
 
5251
 *  Availability:
 
5252
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5253
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5254
 *    Mac OS X:         in version 10.0 and later
 
5255
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5256
 }
 
5257
function QTSwapAtoms(container: QTAtomContainer; atom1: QTAtom; atom2: QTAtom): OSErr; external name '_QTSwapAtoms';
 
5258
{
 
5259
 *  QTSetAtomID()
 
5260
 *  
 
5261
 *  Availability:
 
5262
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5263
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5264
 *    Mac OS X:         in version 10.0 and later
 
5265
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5266
 }
 
5267
function QTSetAtomID(container: QTAtomContainer; atom: QTAtom; newID: QTAtomID): OSErr; external name '_QTSetAtomID';
 
5268
{
 
5269
 *  QTGetAtomParent()
 
5270
 *  
 
5271
 *  Availability:
 
5272
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
5273
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
5274
 *    Mac OS X:         in version 10.0 and later
 
5275
 *    Windows:          in qtmlClient.lib 4.0 and later
 
5276
 }
 
5277
function QTGetAtomParent(container: QTAtomContainer; childAtom: QTAtom): QTAtom; external name '_QTGetAtomParent';
 
5278
{
 
5279
 *  SetMediaPropertyAtom()
 
5280
 *  
 
5281
 *  Availability:
 
5282
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5283
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5284
 *    Mac OS X:         in version 10.0 and later
 
5285
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5286
 }
 
5287
function SetMediaPropertyAtom(theMedia: Media; propertyAtom: QTAtomContainer): OSErr; external name '_SetMediaPropertyAtom';
 
5288
{
 
5289
 *  GetMediaPropertyAtom()
 
5290
 *  
 
5291
 *  Availability:
 
5292
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
5293
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5294
 *    Mac OS X:         in version 10.0 and later
 
5295
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5296
 }
 
5297
function GetMediaPropertyAtom(theMedia: Media; var propertyAtom: QTAtomContainer): OSErr; external name '_GetMediaPropertyAtom';
 
5298
{****
 
5299
    Tween Support
 
5300
****}
 
5301
 
 
5302
type
 
5303
        TweenRecordPtr = ^TweenRecord;
 
5304
{$ifc TYPED_FUNCTION_POINTERS}
 
5305
        TweenerDataProcPtr = function(tr: TweenRecordPtr; tweenData: UnivPtr; tweenDataSize: SInt32; dataDescriptionSeed: SInt32; dataDescription: Handle; asyncCompletionProc: ICMCompletionProcRecordPtr; transferProc: UniversalProcPtr; refCon: UnivPtr): ComponentResult;
 
5306
{$elsec}
 
5307
        TweenerDataProcPtr = ProcPtr;
 
5308
{$endc}
 
5309
 
 
5310
{$ifc OPAQUE_UPP_TYPES}
 
5311
        TweenerDataUPP = ^SInt32; { an opaque UPP }
 
5312
{$elsec}
 
5313
        TweenerDataUPP = UniversalProcPtr;
 
5314
{$endc} 
 
5315
        TweenRecord = record
 
5316
                version:                                SInt32;
 
5317
                container:                              QTAtomContainer;
 
5318
                tweenAtom:                              QTAtom;
 
5319
                dataAtom:                               QTAtom;
 
5320
                percent:                                Fixed;
 
5321
                dataProc:                               TweenerDataUPP;
 
5322
                private1:                               Ptr;
 
5323
                private2:                               Ptr;
 
5324
        end;
 
5325
 
 
5326
        TweenV1RecordPtr = ^TweenV1Record;
 
5327
        TweenV1Record = record
 
5328
                version:                                SInt32;
 
5329
                container:                              QTAtomContainer;
 
5330
                tweenAtom:                              QTAtom;
 
5331
                dataAtom:                               QTAtom;
 
5332
                percent:                                Fixed;
 
5333
                dataProc:                               TweenerDataUPP;
 
5334
                private1:                               Ptr;
 
5335
                private2:                               Ptr;
 
5336
                fractPercent:                   Fract;
 
5337
        end;
 
5338
 
 
5339
 
 
5340
const
 
5341
        kTweenRecordNoFlags                     = 0;
 
5342
        kTweenRecordIsAtInterruptTime = $00000001;
 
5343
 
 
5344
 
 
5345
type
 
5346
        TweenV2RecordPtr = ^TweenV2Record;
 
5347
        TweenV2Record = record
 
5348
                version:                                SInt32;
 
5349
                container:                              QTAtomContainer;
 
5350
                tweenAtom:                              QTAtom;
 
5351
                dataAtom:                               QTAtom;
 
5352
                percent:                                Fixed;
 
5353
                dataProc:                               TweenerDataUPP;
 
5354
                private1:                               Ptr;
 
5355
                private2:                               Ptr;
 
5356
                fractPercent:                   Fract;
 
5357
                flags:                                  SInt32;
 
5358
        end;
 
5359
 
 
5360
        {
 
5361
         *  QTNewTween()
 
5362
         *  
 
5363
         *  Availability:
 
5364
         *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5365
         *    CarbonLib:        in CarbonLib 1.0 and later
 
5366
         *    Mac OS X:         in version 10.0 and later
 
5367
         *    Windows:          in qtmlClient.lib 3.0 and later
 
5368
                }
 
5369
function QTNewTween(var tween: QTTweener; container: QTAtomContainer; tweenAtom: QTAtom; maxTime: TimeValue): OSErr; external name '_QTNewTween';
 
5370
{
 
5371
 *  QTDisposeTween()
 
5372
 *  
 
5373
 *  Availability:
 
5374
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5375
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5376
 *    Mac OS X:         in version 10.0 and later
 
5377
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5378
 }
 
5379
function QTDisposeTween(tween: QTTweener): OSErr; external name '_QTDisposeTween';
 
5380
{
 
5381
 *  QTDoTween()
 
5382
 *  
 
5383
 *  Availability:
 
5384
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5385
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5386
 *    Mac OS X:         in version 10.0 and later
 
5387
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5388
 }
 
5389
function QTDoTween(tween: QTTweener; atTime: TimeValue; result: Handle; var resultSize: SInt32; tweenDataProc: TweenerDataUPP; tweenDataRefCon: UnivPtr): OSErr; external name '_QTDoTween';
 
5390
{
 
5391
    QTDoTweenPtr is an interrupt-safe version of QTDoTween.  It has the following limitations:
 
5392
     - not all tween types support this call (those which must allocated memory), in which case they return codecUnimpErr.
 
5393
     - the QTAtomContainer used for the tween must be locked
 
5394
     - the dataSize must be large enough to contain the result
 
5395
     - this call is not supported for sequence tweens, use interpolation tweens instead
 
5396
}
 
5397
{
 
5398
 *  QTDoTweenPtr()
 
5399
 *  
 
5400
 *  Availability:
 
5401
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
5402
 *    CarbonLib:        in CarbonLib 1.6 and later
 
5403
 *    Mac OS X:         in version 10.2 and later
 
5404
 *    Windows:          in qtmlClient.lib 6.0 and later
 
5405
 }
 
5406
function QTDoTweenPtr(tween: QTTweener; atTime: TimeValue; result: Ptr; resultSize: SInt32): OSErr; external name '_QTDoTweenPtr';
 
5407
{****
 
5408
    Sound Description Manipulations
 
5409
****}
 
5410
{
 
5411
 *  AddSoundDescriptionExtension()
 
5412
 *  
 
5413
 *  Availability:
 
5414
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5415
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5416
 *    Mac OS X:         in version 10.0 and later
 
5417
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5418
 }
 
5419
function AddSoundDescriptionExtension(desc: SoundDescriptionHandle; extension: Handle; idType: OSType): OSErr; external name '_AddSoundDescriptionExtension';
 
5420
{
 
5421
 *  GetSoundDescriptionExtension()
 
5422
 *  
 
5423
 *  Availability:
 
5424
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5425
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5426
 *    Mac OS X:         in version 10.0 and later
 
5427
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5428
 }
 
5429
function GetSoundDescriptionExtension(desc: SoundDescriptionHandle; var extension: Handle; idType: OSType): OSErr; external name '_GetSoundDescriptionExtension';
 
5430
{
 
5431
 *  RemoveSoundDescriptionExtension()
 
5432
 *  
 
5433
 *  Availability:
 
5434
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5435
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5436
 *    Mac OS X:         in version 10.0 and later
 
5437
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5438
 }
 
5439
function RemoveSoundDescriptionExtension(desc: SoundDescriptionHandle; idType: OSType): OSErr; external name '_RemoveSoundDescriptionExtension';
 
5440
{****
 
5441
    Preferences
 
5442
****}
 
5443
{
 
5444
 *  GetQuickTimePreference()
 
5445
 *  
 
5446
 *  Availability:
 
5447
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5448
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5449
 *    Mac OS X:         in version 10.0 and later
 
5450
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5451
 }
 
5452
function GetQuickTimePreference(preferenceType: OSType; var preferenceAtom: QTAtomContainer): OSErr; external name '_GetQuickTimePreference';
 
5453
{
 
5454
 *  SetQuickTimePreference()
 
5455
 *  
 
5456
 *  Availability:
 
5457
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5458
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5459
 *    Mac OS X:         in version 10.0 and later
 
5460
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5461
 }
 
5462
function SetQuickTimePreference(preferenceType: OSType; preferenceAtom: QTAtomContainer): OSErr; external name '_SetQuickTimePreference';
 
5463
{****
 
5464
    Effects and dialog Support
 
5465
****}
 
5466
{  atom types for entries in the effects list }
 
5467
 
 
5468
const
 
5469
        kEffectNameAtom                         = $6E616D65 (* 'name' *);                                               {  name of effect  }
 
5470
        kEffectTypeAtom                         = $74797065 (* 'type' *);                                               {  codec sub-type for effect  }
 
5471
        kEffectManufacturerAtom         = $6D616E75 (* 'manu' *);                                               {  codec manufacturer for effect  }
 
5472
 
 
5473
 
 
5474
type
 
5475
        QTParamPreviewRecordPtr = ^QTParamPreviewRecord;
 
5476
        QTParamPreviewRecord = record
 
5477
                sourceID:                               SInt32;                                                         {  1 based source identifier }
 
5478
                sourcePicture:                  PicHandle;                                                              {  picture for preview, must not dispose until dialog is disposed }
 
5479
        end;
 
5480
 
 
5481
        QTParamPreviewPtr                                       = ^QTParamPreviewRecord;
 
5482
        QTParamDialogEventRecordPtr = ^QTParamDialogEventRecord;
 
5483
        QTParamDialogEventRecord = record
 
5484
                theEvent:                               EventRecordPtr;                                                 {  Event received by the dialog  }
 
5485
                whichDialog:                    DialogRef;                                                              {  dialog that event was directed towards  }
 
5486
                itemHit:                                SInt16;                                                         {  dialog item which was hit  }
 
5487
        end;
 
5488
 
 
5489
        QTParamDialogEventPtr                           = ^QTParamDialogEventRecord;
 
5490
        QTParamFetchPreviewRecordPtr = ^QTParamFetchPreviewRecord;
 
5491
        QTParamFetchPreviewRecord = record
 
5492
                theWorld:                               GWorldPtr;                                                              {  the world into which to draw the preview  }
 
5493
                percentage:                             Fixed;                                                                  {  frame percentage (from 0.0 - 1.0) to be drawn  }
 
5494
        end;
 
5495
 
 
5496
        QTParamFetchPreviewPtr                          = ^QTParamFetchPreviewRecord;
 
5497
 
 
5498
const
 
5499
        pdActionConfirmDialog           = 1;                                                    {  no param }
 
5500
        pdActionSetAppleMenu            = 2;                                                    {  param is MenuRef }
 
5501
        pdActionSetEditMenu                     = 3;                                                    {  param is MenuRef }
 
5502
        pdActionGetDialogValues         = 4;                                                    {  param is QTAtomContainer }
 
5503
        pdActionSetPreviewUserItem      = 5;                                                    {  param is long }
 
5504
        pdActionSetPreviewPicture       = 6;                                                    {  param is QTParamPreviewPtr; }
 
5505
        pdActionSetColorPickerEventProc = 7;                                            {  param is UserEventUPP }
 
5506
        pdActionSetDialogTitle          = 8;                                                    {  param is StringPtr  }
 
5507
        pdActionGetSubPanelMenu         = 9;                                                    {  param is MenuRef*  }
 
5508
        pdActionActivateSubPanel        = 10;                                                   {  param is long  }
 
5509
        pdActionConductStopAlert        = 11;                                                   {  param is StringPtr  }
 
5510
        pdActionModelessCallback        = 12;                                                   {  param is QTParamDialogEventPtr  }
 
5511
        pdActionFetchPreview            = 13;                                                   {  param is QTParamFetchPreviewPtr  }
 
5512
        pdActionSetDialogSettings       = 14;                                                   {  param is QTAtomContainer  }
 
5513
        pdActionGetDialogSettings       = 15;                                                   {  param is QTAtomContainer  }
 
5514
        pdActionGetNextSample           = 16;                                                   {  param is QTAtomContainer with effect sample to change - createdDialog may be NIL  }
 
5515
        pdActionGetPreviousSample       = 17;                                                   {  param is QTAtomContainer with effect sample to change - createdDialog may be NIL  }
 
5516
        pdActionCompactSample           = 18;                                                   {  param is QTAtomContainer with effect sample to compact, - createdDialog may be NIL  }
 
5517
        pdActionSetEditCallout          = 19;                                                   {  param is QTParamPreviewCalloutPtr, can be NIL  }
 
5518
        pdActionSetSampleTime           = 20;                                                   {  param is QTParamSampleTimePtr, can be NIL  }
 
5519
        pdActionDoEditCommand           = 21;                                                   {  param is long with menu command (ie, mcMenuCut etc)  }
 
5520
        pdActionGetSubPanelMenuValue = 22;                                                      {  param is long and returns current sub-panel value selected by the effect  }
 
5521
                                                                                                                                {  Action codes and typedefs used for custom controls within effects  }
 
5522
        pdActionCustomNewControl        = 23;                                                   {  param is QTCustomControlNewPtr  }
 
5523
        pdActionCustomDisposeControl = 24;                                                      {  param is QTCustomControlNewPtr  }
 
5524
        pdActionCustomPositionControl = 25;                                                     {  param is QTCustomControlPositionControlPtr  }
 
5525
        pdActionCustomShowHideControl = 26;                                                     {  param is QTCustomControlShowHideControlPtr  }
 
5526
        pdActionCustomHandleEvent       = 27;                                                   {  param is QTCustomControlHandleEventPtr  }
 
5527
        pdActionCustomSetFocus          = 28;                                                   {  param is QTCustomControlSetFocusPtr  }
 
5528
        pdActionCustomSetEditMenu       = 29;                                                   {  param is QTCustomControlSetEditMenuPtr  }
 
5529
        pdActionCustomSetPreviewPicture = 30;                                           {  param is QTCustomControlSetPreviewPicturePtr  }
 
5530
        pdActionCustomSetEditCallout = 31;                                                      {  param is QTCustomControlSetEditCalloutPtr  }
 
5531
        pdActionCustomGetEnableValue = 32;                                                      {  param is QTCustomControlGetEnableValuePtr  }
 
5532
        pdActionCustomSetSampleTime     = 33;                                                   {  param is QTCustomControlSetSampleTimePtr  }
 
5533
        pdActionCustomGetValue          = 34;                                                   {  param is QTCustomControlGetValue  }
 
5534
        pdActionCustomDoEditCommand     = 35;                                                   {  param is QTCustomControlDoEditCommand  }
 
5535
 
 
5536
        {        Sample Time information        }
 
5537
        pdSampleTimeDisplayOptionsNone = $00000000;
 
5538
 
 
5539
 
 
5540
type
 
5541
        QTParamSampleTimeRecordPtr = ^QTParamSampleTimeRecord;
 
5542
        QTParamSampleTimeRecord = record
 
5543
                displayOptions:                 SInt32;
 
5544
                sampleStartTime:                TimeRecord;
 
5545
                sampleDuration:                 TimeValue;
 
5546
                framesPerSecond:                SInt32;                                                         {  if 0, will cause revert to seconds display }
 
5547
        end;
 
5548
 
 
5549
        QTParamSampleTimePtr                            = ^QTParamSampleTimeRecord;
 
5550
        {        Preview change callout information     }
 
5551
        QTParamPreviewCalloutRecordPtr = ^QTParamPreviewCalloutRecord;
 
5552
        QTParamPreviewCalloutRecord = record
 
5553
                calloutProc:                    MoviePreviewCallOutUPP;                                 {  called when user makes editing changes to dialog.  May be NIL.  You should return true from your function.  }
 
5554
                refCon:                                 SInt32;                                                         {  passed to the callout procedure  }
 
5555
        end;
 
5556
 
 
5557
        QTParamPreviewCalloutPtr                        = ^QTParamPreviewCalloutRecord;
 
5558
        QTParameterDialogOptions                        = SInt32;
 
5559
        {  ------- CUSTOM EFFECT CONTROLS }
 
5560
        {       
 
5561
            Effects may choose to implement custom controls to allow the user to more easily edit complex parameters
 
5562
            that are ill-served by simple sliders or type in boxes.   Effects may allow a custom control for either
 
5563
            a single parameter, or for a group of parameters.
 
5564
            
 
5565
            Parameter(s) for a custom control must still be data types defined by the standard set, or for
 
5566
            complex records of data, must be defined within a group as individual parameters made up from base
 
5567
            data types (for example, a point is a group containing two Fixed point numbers).  
 
5568
            This is to allow applications that do not wish to use the custom control for the effect to set values themselves.
 
5569
            
 
5570
            Effects should be aware that these custom controls may be deployed by the application in either a dialog or
 
5571
            a window, with application defined background colors or patterns, along with application defined font
 
5572
            characteristics for the window.
 
5573
            
 
5574
            It is recommended that effects implement custom controls only when needed, and that custom controls be used
 
5575
            for specific types of parameters (ie, point, rectangle, polygon, path) rather than the entire user interface
 
5576
            for the effect.  Effects may choose to implement multiple custom controls which combine with standard controls
 
5577
            to present the total user interface.  For effects which have very complex user interfaces not well suited for 
 
5578
            inclusion within a single window, it is recommended to use kParameterImageIsPreset -- which allows the effect to
 
5579
            have an external editing application for parameters which may then be set within the standard UI via the open file 
 
5580
            dialog or drag and drop.  The Lens Flare effect's "Flare Type" is an example of such a preset.
 
5581
        
 
5582
            For parameters that use a custom control to control a single parameter value, a new behavior
 
5583
            flag has been added (kCustomControl), and the behavior for the parameter should be kParameterItemControl.
 
5584
            
 
5585
            For parameters that are groups, the same flag (kCustomControl) should be used, and the behavior
 
5586
            should be kParameterItemGroupDivider.  Groups with the kCustomControl bit set will be implemented
 
5587
            by calling the custom control for that group -- the parameters within that group will not be processed
 
5588
            in the normal manner.
 
5589
            
 
5590
            In both cases, the new customType and customID fields of the behavior must be filled in.  These are 
 
5591
            used in order to allow your custom control to determine which parameter is being edited in the case
 
5592
            where the custom control is used for the editing of multiple parameters.  These values are passed into
 
5593
            the pdActionCustomNewControl call.  Since the custom control mechanism is also used by QuickTime's
 
5594
            default effect dialogs, you should be prepared to pass onto the base effect any pdActionCustomNewControl
 
5595
            calls for type/id pairs that you do not handle yourself.  When  pdActionCustomNewControl is called
 
5596
            for controls of types handled by QuickTime, customType is kParameterAtomTypeAndID and customID is
 
5597
            the ID of the parameter atom. 
 
5598
                }
 
5599
 
 
5600
 
 
5601
        {       
 
5602
            pdActionCustomNewControlControl is called by application to create a new custom control or set of controls
 
5603
            for an effect parameter.  When pdActionCustomNewControl is called, the effect should perform any
 
5604
            basic allocation it needs for storage and return the result in storage. The options parameter tells
 
5605
            the control if the application wishes to support interpolated, optionally interpolated, or a single
 
5606
            value parameter.
 
5607
            
 
5608
            Since pdActionCustomNewControlControl may be called upon your effect for other items within the
 
5609
            dialog, it is recommended that your effect have an easy way to determine which controls it implements:
 
5610
             a) by having storage be a pointer with an OSType at the begining to mark controls
 
5611
                implemented by your code.
 
5612
             - or -
 
5613
             b) keeping track in your component globals those custom controls which you have created.
 
5614
            
 
5615
            When pdActionCustomDisposeControl is called any allocation done by the control should be disposed. In addition, 
 
5616
            pdActionCustomDisposeControl is the last chance the control has to commit any user changes into the sample.
 
5617
            Controls which implement type in fields typically need to commit any final user edits at this time.
 
5618
                }
 
5619
        QTCustomControlNewRecordPtr = ^QTCustomControlNewRecord;
 
5620
        QTCustomControlNewRecord = record
 
5621
                storage:                                Ptr;                                                                    {  storage allocated/disposed by the control }
 
5622
                options:                                QTParameterDialogOptions;                               {  options used to control interpolation/not }
 
5623
                sample:                                 QTAtomContainer;                                                {  sample that holds the data to be edited }
 
5624
                customType:                             SInt32;                                                         {  custom type and ID specified by effect for creation of this control }
 
5625
                customID:                               SInt32;
 
5626
        end;
 
5627
 
 
5628
        QTCustomControlNewPtr                           = ^QTCustomControlNewRecord;
 
5629
        {       
 
5630
            pdActionCustomPositionControl is called by the application to position the control within a window or dialog.
 
5631
        
 
5632
            The control should determine if it will fit in the alloted area and position itself there.  It should also
 
5633
            return the space taken up by the control.   Note you are free to implement controls which are variable in size depending upon
 
5634
            which parameter you are editing.  You need not scale your control to the requested size.  If the area presented to your
 
5635
            control is too small, set didFit to false.  You should still return in used the size you would have liked to use for
 
5636
            the control.   The application will then try again with a new size.  Note that all
 
5637
            controls must be able to fit within a minimum of 300 by 250 pixels.
 
5638
            
 
5639
            Custom controls that draw text should make note of the text font, size, and style at this time in order
 
5640
            to properly display within application windows.
 
5641
            
 
5642
            Note that the default state for the control is hidden.  You will receive a pdActionCustomShowHideControl
 
5643
            in order to enable your control.  You should not draw your control in response to pdActionCustomPositionControl.
 
5644
                }
 
5645
        QTCustomControlPositionControlRecordPtr = ^QTCustomControlPositionControlRecord;
 
5646
        QTCustomControlPositionControlRecord = record
 
5647
                storage:                                Ptr;                                                                    {  storage for the control }
 
5648
                window:                                 WindowPtr;                                                              {  window to be used by the control }
 
5649
                location:                               Rect;                                                                   {  location within the window the control may use }
 
5650
                used:                                   Rect;                                                                   {  returned by the control to indicate size it actually used }
 
5651
                didFit:                                 boolean;                                                                {  did the control fit in the specified area? }
 
5652
                pad1,pad2,pad3:                 SInt8;
 
5653
        end;
 
5654
 
 
5655
        QTCustomControlPositionControlPtr       = ^QTCustomControlPositionControlRecord;
 
5656
        {       
 
5657
            pdActionCustomShowHideControl is called when the application wishes to enable/disable your control, or 
 
5658
            completely disable drawing of the control
 
5659
            
 
5660
            Your control should make note of the new state (if different from the last) and perform an InvalRect()
 
5661
            on your drawing area, or you may draw your control's initial state in the case of show.  You should not
 
5662
            attempt to erase your control as the result of a hide -- instead call InvalRect() and allow the application
 
5663
            to process the resulting event as appropriate.
 
5664
                }
 
5665
        QTCustomControlShowHideControlRecordPtr = ^QTCustomControlShowHideControlRecord;
 
5666
        QTCustomControlShowHideControlRecord = record
 
5667
                storage:                                Ptr;                                                                    {  storage for the control }
 
5668
                show:                                   boolean;                                                                {  display the control? }
 
5669
                enable:                                 boolean;                                                                {  enable the control (ie, black vs gray display) }
 
5670
                pad:                                    array [0..1] of boolean;
 
5671
        end;
 
5672
 
 
5673
        QTCustomControlShowHideControlPtr       = ^QTCustomControlShowHideControlRecord;
 
5674
        {       
 
5675
            pdActionCustomHandleEvent is called to allow your custom control to process events.
 
5676
            
 
5677
            Typical controls handle the following events:
 
5678
                - activate - to draw your control in normal/gray mode
 
5679
                - update - to draw your control
 
5680
                - mouseDown - to handle clicks
 
5681
                - keyDown - to handle typing when you have focus
 
5682
                - idle - to perform idle drawing (if applicable)
 
5683
            If your control handles the entire event, set didProcess to true.  If
 
5684
            you handled the event, but other controls still need the event, set didProcess to false.
 
5685
            
 
5686
            If your control supports the concept of focus for the purposes of typing (such as by having
 
5687
            a type-in box for the parameter) then you set the tookFocus Boolean as part of your processing
 
5688
            of the event.  It is assumed that your control will draw the appropriate focus UI as a result, and
 
5689
            the calling application will disable any focus drawing within the remainder of the UI.
 
5690
        
 
5691
            By default, custom controls are not given idle time.  If you need idle time, set needIdle to true
 
5692
            in response to the even that causes you to need idle (typically the taking of focus, or the first draw).
 
5693
            Your control will continue to be given idle events until you set needIdle to false in response to
 
5694
            a nullEvent.
 
5695
                }
 
5696
        QTCustomControlHandleEventRecordPtr = ^QTCustomControlHandleEventRecord;
 
5697
        QTCustomControlHandleEventRecord = record
 
5698
                storage:                                Ptr;                                                                    {  storage for the control }
 
5699
                pEvent:                                 EventRecordPtr;                                                 {  event to process }
 
5700
                didProcess:                             boolean;                                                                {  did we process entire event? }
 
5701
                tookFocus:                              boolean;                                                                {  did we take focus as a result of this event (typically mouseDowns) }
 
5702
                needIdle:                               boolean;                                                                {  does this control need idle events? }
 
5703
                didEdit:                                boolean;                                                                {  did we edit the samples? }
 
5704
        end;
 
5705
 
 
5706
        QTCustomControlHandleEventPtr           = ^QTCustomControlHandleEventRecord;
 
5707
        {       
 
5708
            pdActionCustomSetFocus is called in order to set or advance the current focus of the user interface, typically
 
5709
            because the user has pressed the tab or shift-tab keys, or because the user clicked within the area defined by
 
5710
            your control.
 
5711
            
 
5712
            Your control will be called with pdActionFocusFirst,  pdActionFocusLast, or pdActionFocusOff to set or clear focus on your
 
5713
            control.  Your control will be called with pdActionFocusForward or pdActionFocusBackward to cycle
 
5714
            focus within your control (if your control has multiple focus).  If your control does not support focus,
 
5715
            or the focus request results in focus moving beyond your supported range, return pdActionFocusOff in
 
5716
            the focus parameter.  Otherwise, return the focus that you set.
 
5717
            
 
5718
            Controls which have no focus would always set focus to be pdActionFocusOff.
 
5719
            
 
5720
            Controls with a single focus would set pdActionFocusFirst when requsted to set either
 
5721
            pdActionFocusFirst or pdActionFocusLast, and would set pdActionFocusOff for either
 
5722
            pdActionFocusForward or pdActionFocusBackward.
 
5723
                }
 
5724
 
 
5725
const
 
5726
        pdActionFocusOff                        = 0;                                                    {  no focus  }
 
5727
        pdActionFocusFirst                      = 1;                                                    {  focus on first element  }
 
5728
        pdActionFocusLast                       = 2;                                                    {  focus on last element  }
 
5729
        pdActionFocusForward            = 3;                                                    {  focus on next element  }
 
5730
        pdActionFocusBackward           = 4;                                                    {  focus on previous element  }
 
5731
 
 
5732
 
 
5733
type
 
5734
        QTCustomControlSetFocusRecordPtr = ^QTCustomControlSetFocusRecord;
 
5735
        QTCustomControlSetFocusRecord = record
 
5736
                storage:                                Ptr;                                                                    {  storage for the control }
 
5737
                focus:                                  SInt32;                                                         {  focus to set, return resulting focus }
 
5738
        end;
 
5739
 
 
5740
        QTCustomControlSetFocusPtr                      = ^QTCustomControlSetFocusRecord;
 
5741
        {        
 
5742
            pdActionCustomSetEditMenu will be called to inform your custom control of the location of the edit menu.
 
5743
            
 
5744
            If your control has editing boxes, this is useful in order to allow the user to perform cut/copy/paste operations
 
5745
            when focus is on one of these boxes.
 
5746
                }
 
5747
        QTCustomControlSetEditMenuRecordPtr = ^QTCustomControlSetEditMenuRecord;
 
5748
        QTCustomControlSetEditMenuRecord = record
 
5749
                storage:                                Ptr;                                                                    {  storage for the control }
 
5750
                editMenu:                               MenuHandle;                                                             {  edit menu, or NIL }
 
5751
        end;
 
5752
 
 
5753
        QTCustomControlSetEditMenuPtr           = ^QTCustomControlSetEditMenuRecord;
 
5754
        {       
 
5755
            pdActionCustomSetPreviewPicture will be called to inform your custom control of preview information that you
 
5756
            may wish to use in the drawing of your user interface.  
 
5757
                }
 
5758
        QTCustomControlSetPreviewPictureRecordPtr = ^QTCustomControlSetPreviewPictureRecord;
 
5759
        QTCustomControlSetPreviewPictureRecord = record
 
5760
                storage:                                Ptr;                                                                    {  storage for the control }
 
5761
                preview:                                QTParamPreviewPtr;                                              {  preview to set }
 
5762
        end;
 
5763
 
 
5764
        QTCustomControlSetPreviewPicturePtr     = ^QTCustomControlSetPreviewPictureRecord;
 
5765
        {       
 
5766
            pdActionCustomSetEditCallout tells your control of the need by the application to be informed of
 
5767
            changes to the parameter values (typically for the purposes of updating previews).
 
5768
            
 
5769
            If a callout is available, your custom control should call it whenever a change has been
 
5770
            made to the parameter(s) that your control is editing (as a result of user actions, most typically).
 
5771
            If you choose not to implement this, live dragging or updating of values will not work.
 
5772
                }
 
5773
        QTCustomControlSetEditCalloutRecordPtr = ^QTCustomControlSetEditCalloutRecord;
 
5774
        QTCustomControlSetEditCalloutRecord = record
 
5775
                storage:                                Ptr;                                                                    {  storage for the control }
 
5776
                callout:                                QTParamPreviewCalloutPtr;                               {  requested callout, or NIL to disable }
 
5777
        end;
 
5778
 
 
5779
        QTCustomControlSetEditCalloutPtr        = ^QTCustomControlSetEditCalloutRecord;
 
5780
        {       
 
5781
            pdActionCustomGetEnableValue allows you to return a value for the purposes of enabling/disabling
 
5782
            other controls.
 
5783
            Most custom controls do not need to implement this call.
 
5784
            
 
5785
            If your control is able to control the enabling and disabling of other parameter controls (such as is done
 
5786
            by standard pop up or enumerated type controls), you need to supply a value that can be use for greater than/less than
 
5787
            types of comparisons.
 
5788
                }
 
5789
        QTCustomControlGetEnableValueRecordPtr = ^QTCustomControlGetEnableValueRecord;
 
5790
        QTCustomControlGetEnableValueRecord = record
 
5791
                storage:                                Ptr;                                                                    {  storage for the control }
 
5792
                currentValue:                   SInt32;                                                         {  value to compare against for enable/disable purposes }
 
5793
        end;
 
5794
 
 
5795
        QTCustomControlGetEnableValuePtr        = ^QTCustomControlGetEnableValueRecord;
 
5796
        {       
 
5797
            pdActionCustomSetSampleTime tells your control information from the application about the duration
 
5798
            and start time for the sample being edited.
 
5799
            
 
5800
            Most controls do not need this information, but some may choose to use it in the interface
 
5801
            they present the user.  However, this call need not be made by applications, so the custom
 
5802
            control should be prepared to run when the sample time information is not available.
 
5803
                }
 
5804
        QTCustomControlSetSampleTimeRecordPtr = ^QTCustomControlSetSampleTimeRecord;
 
5805
        QTCustomControlSetSampleTimeRecord = record
 
5806
                storage:                                Ptr;                                                                    {  storage for the control }
 
5807
                sampleTime:                             QTParamSampleTimePtr;                                   {  sample time information or NIL }
 
5808
        end;
 
5809
 
 
5810
        QTCustomControlSetSampleTimePtr         = ^QTCustomControlSetSampleTimeRecord;
 
5811
        {       
 
5812
            pdActionCustomGetValue tells your control to store any value(s) into the specified atom container.
 
5813
            
 
5814
            All custom controls must implement this call
 
5815
                }
 
5816
        QTCustomControlGetValueRecordPtr = ^QTCustomControlGetValueRecord;
 
5817
        QTCustomControlGetValueRecord = record
 
5818
                storage:                                Ptr;                                                                    {  storage for the control }
 
5819
                sample:                                 QTAtomContainer;                                                {  sample to store into }
 
5820
        end;
 
5821
 
 
5822
        QTCustomControlGetValuePtr                      = ^QTCustomControlGetValueRecord;
 
5823
        {       
 
5824
            pdActionCustomDoEditCommand tells your control to handle edit commands if it allow focus and type in boxes.
 
5825
            
 
5826
            All custom controls must implement this call if they support edit boxes
 
5827
                }
 
5828
        QTCustomControlDoEditCommandRecordPtr = ^QTCustomControlDoEditCommandRecord;
 
5829
        QTCustomControlDoEditCommandRecord = record
 
5830
                storage:                                Ptr;                                                                    {  storage for the control }
 
5831
                command:                                SInt32;                                                         {  command to execute, return 0 here if processed }
 
5832
        end;
 
5833
 
 
5834
        QTCustomControlDoEditCommandPtr         = ^QTCustomControlDoEditCommandRecord;
 
5835
        QTParameterDialog                                       = SInt32;
 
5836
 
 
5837
const
 
5838
        elOptionsIncludeNoneInList      = $00000001;                                    {  "None" effect is included in list  }
 
5839
 
 
5840
 
 
5841
type
 
5842
        QTEffectListOptions                                     = SInt32;
 
5843
 
 
5844
const
 
5845
        pdOptionsCollectOneValue        = $00000001;                                    {  should collect a single value only }
 
5846
        pdOptionsAllowOptionalInterpolations = $00000002;                       {  non-novice interpolation options are shown  }
 
5847
        pdOptionsModalDialogBox         = $00000004;                                    {  dialog box should be modal  }
 
5848
        pdOptionsEditCurrentEffectOnly = $00000008;                                     {  List of effects will not be shown  }
 
5849
        pdOptionsHidePreview            = $00000010;                                    {  Preview item will not be shown  }
 
5850
 
 
5851
        effectIsRealtime                        = 0;                                                    {  effect can be rendered in real time  }
 
5852
 
 
5853
        {       
 
5854
            QTGetEffectsListExtended is a call that provides for 
 
5855
            more advanced filtering of effects to be placed into the
 
5856
            effect list.  Applications can filter on:
 
5857
             1) number of input sources
 
5858
             2) effect major or minor class
 
5859
             3) custom filtering through a callback
 
5860
            The callback will be called for each effect which passes
 
5861
            the other criteria for inclusion.  If the callback
 
5862
            returns a true result the effect will be included in the list.
 
5863
            
 
5864
            Note that your filter proc may receive multiple effects from various
 
5865
            manufacturers.  If you return true for multiple effects of a given type
 
5866
            only the one with the higher parameter version number will be included.
 
5867
            If you wish other filtering (such as effects from a given manufacturer, you
 
5868
            can do this by return false for the other effects and true for those
 
5869
            that you prefer.
 
5870
                }
 
5871
 
 
5872
type
 
5873
{$ifc TYPED_FUNCTION_POINTERS}
 
5874
        QTEffectListFilterProcPtr = function(effect: Component; effectMinSource: SInt32; effectMaxSource: SInt32; majorClass: OSType; minorClass: OSType; refcon: UnivPtr): boolean;
 
5875
{$elsec}
 
5876
        QTEffectListFilterProcPtr = ProcPtr;
 
5877
{$endc}
 
5878
 
 
5879
{$ifc OPAQUE_UPP_TYPES}
 
5880
        QTEffectListFilterUPP = ^SInt32; { an opaque UPP }
 
5881
{$elsec}
 
5882
        QTEffectListFilterUPP = UniversalProcPtr;
 
5883
{$endc} 
 
5884
        {
 
5885
         *  QTGetEffectsList()
 
5886
         *  
 
5887
         *  Availability:
 
5888
         *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5889
         *    CarbonLib:        in CarbonLib 1.0 and later
 
5890
         *    Mac OS X:         in version 10.0 and later
 
5891
         *    Windows:          in qtmlClient.lib 3.0 and later
 
5892
                }
 
5893
function QTGetEffectsList(var returnedList: QTAtomContainer; minSources: SInt32; maxSources: SInt32; getOptions: QTEffectListOptions): OSErr; external name '_QTGetEffectsList';
 
5894
{
 
5895
 *  QTGetEffectsListExtended()
 
5896
 *  
 
5897
 *  Availability:
 
5898
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
5899
 *    CarbonLib:        in CarbonLib 1.6 and later
 
5900
 *    Mac OS X:         in version 10.2 and later
 
5901
 *    Windows:          in qtmlClient.lib 6.0 and later
 
5902
 }
 
5903
function QTGetEffectsListExtended(var returnedList: QTAtomContainer; minSources: SInt32; maxSources: SInt32; getOptions: QTEffectListOptions; majorClass: OSType; minorClass: OSType; filterProc: QTEffectListFilterUPP; filterRefCon: UnivPtr): OSErr; external name '_QTGetEffectsListExtended';
 
5904
{
 
5905
 *  QTCreateStandardParameterDialog()
 
5906
 *  
 
5907
 *  Availability:
 
5908
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5909
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5910
 *    Mac OS X:         in version 10.0 and later
 
5911
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5912
 }
 
5913
function QTCreateStandardParameterDialog(effectList: QTAtomContainer; parameters: QTAtomContainer; dialogOptions: QTParameterDialogOptions; var createdDialog: QTParameterDialog): OSErr; external name '_QTCreateStandardParameterDialog';
 
5914
{
 
5915
 *  QTIsStandardParameterDialogEvent()
 
5916
 *  
 
5917
 *  Availability:
 
5918
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5919
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5920
 *    Mac OS X:         in version 10.0 and later
 
5921
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5922
 }
 
5923
function QTIsStandardParameterDialogEvent(var pEvent: EventRecord; createdDialog: QTParameterDialog): OSErr; external name '_QTIsStandardParameterDialogEvent';
 
5924
{
 
5925
 *  QTDismissStandardParameterDialog()
 
5926
 *  
 
5927
 *  Availability:
 
5928
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5929
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5930
 *    Mac OS X:         in version 10.0 and later
 
5931
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5932
 }
 
5933
function QTDismissStandardParameterDialog(createdDialog: QTParameterDialog): OSErr; external name '_QTDismissStandardParameterDialog';
 
5934
{
 
5935
 *  QTStandardParameterDialogDoAction()
 
5936
 *  
 
5937
 *  Availability:
 
5938
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5939
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5940
 *    Mac OS X:         in version 10.0 and later
 
5941
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5942
 }
 
5943
function QTStandardParameterDialogDoAction(createdDialog: QTParameterDialog; action: SInt32; params: UnivPtr): OSErr; external name '_QTStandardParameterDialogDoAction';
 
5944
{
 
5945
 *  QTGetEffectSpeed()
 
5946
 *  
 
5947
 *  Availability:
 
5948
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
5949
 *    CarbonLib:        in CarbonLib 1.0 and later
 
5950
 *    Mac OS X:         in version 10.0 and later
 
5951
 *    Windows:          in qtmlClient.lib 3.0 and later
 
5952
 }
 
5953
function QTGetEffectSpeed(parameters: QTAtomContainer; var pFPS: Fixed): OSErr; external name '_QTGetEffectSpeed';
 
5954
{****
 
5955
    Error reporting
 
5956
****}
 
5957
 
 
5958
type
 
5959
        QTErrorReplacementRecordPtr = ^QTErrorReplacementRecord;
 
5960
        QTErrorReplacementRecord = record
 
5961
                numEntries:                             SInt32;
 
5962
                replacementString:              array [0..0] of StringPtr;                              {  array of numEntries StringPtrs (each String is allocated separately). }
 
5963
        end;
 
5964
 
 
5965
        QTErrorReplacementPtr                           = ^QTErrorReplacementRecord;
 
5966
        {       
 
5967
            QTAddMovieError is used to add orthogonal errors to a list of errors that will
 
5968
            later be reported (at the end of an import or playback, for example).  Errors are stored
 
5969
            in 'qter' resources within the component.
 
5970
            
 
5971
            QTAddMovieError(Movie       addTo,                          // in: movie to add error to
 
5972
                            Component   adder,                          // in: component which is adding the error
 
5973
                            long        errorCode,                      // in: error code being added
 
5974
                            QTErrorReplacementPtr   stringReplacements);// in: list of strings to subsitute (in order) for "^1", "^2", etc
 
5975
                }
 
5976
        {
 
5977
         *  QTAddMovieError()
 
5978
         *  
 
5979
         *  Availability:
 
5980
         *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
5981
         *    CarbonLib:        in CarbonLib 1.6 and later
 
5982
         *    Mac OS X:         in version 10.2 and later
 
5983
         *    Windows:          in qtmlClient.lib 6.0 and later
 
5984
                }
 
5985
function QTAddMovieError(movieH: Movie; c: Component; errorCode: SInt32; stringReplacements: QTErrorReplacementPtr): OSErr; external name '_QTAddMovieError';
 
5986
{****
 
5987
    Access Keys
 
5988
****}
 
5989
 
 
5990
const
 
5991
        kAccessKeyAtomType                      = $61636B79 (* 'acky' *);
 
5992
 
 
5993
        kAccessKeySystemFlag            = $00000001;
 
5994
 
 
5995
        {
 
5996
         *  QTGetAccessKeys()
 
5997
         *  
 
5998
         *  Availability:
 
5999
         *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6000
         *    CarbonLib:        in CarbonLib 1.0 and later
 
6001
         *    Mac OS X:         in version 10.0 and later
 
6002
         *    Windows:          in qtmlClient.lib 3.0 and later
 
6003
                }
 
6004
function QTGetAccessKeys(var accessKeyType: Str255; flags: SInt32; var keys: QTAtomContainer): OSErr; external name '_QTGetAccessKeys';
 
6005
{
 
6006
 *  QTRegisterAccessKey()
 
6007
 *  
 
6008
 *  Availability:
 
6009
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6010
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6011
 *    Mac OS X:         in version 10.0 and later
 
6012
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6013
 }
 
6014
function QTRegisterAccessKey(var accessKeyType: Str255; flags: SInt32; accessKey: Handle): OSErr; external name '_QTRegisterAccessKey';
 
6015
{
 
6016
 *  QTUnregisterAccessKey()
 
6017
 *  
 
6018
 *  Availability:
 
6019
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6020
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6021
 *    Mac OS X:         in version 10.0 and later
 
6022
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6023
 }
 
6024
function QTUnregisterAccessKey(var accessKeyType: Str255; flags: SInt32; accessKey: Handle): OSErr; external name '_QTUnregisterAccessKey';
 
6025
{****
 
6026
    Content Restrictions
 
6027
****}
 
6028
 
 
6029
{
 
6030
 *  QTGetMovieRestrictions()
 
6031
 *  
 
6032
 *  Availability:
 
6033
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
6034
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6035
 *    Mac OS X:         in version 10.2 and later
 
6036
 *    Windows:          in qtmlClient.lib 6.0 and later
 
6037
 }
 
6038
function QTGetMovieRestrictions(theMovie: Movie; var outRestrictionSet: QTRestrictionSet; var outSeed: UInt32): OSErr; external name '_QTGetMovieRestrictions';
 
6039
{
 
6040
 *  QTRestrictionsGetInfo()
 
6041
 *  
 
6042
 *  Availability:
 
6043
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
6044
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6045
 *    Mac OS X:         in version 10.2 and later
 
6046
 *    Windows:          in qtmlClient.lib 6.0 and later
 
6047
 }
 
6048
function QTRestrictionsGetInfo(inRestrictionSet: QTRestrictionSet; var outRestrictionClassCount: SInt32; var outSeed: SInt32): OSErr; external name '_QTRestrictionsGetInfo';
 
6049
{
 
6050
 *  QTRestrictionsGetIndClass()
 
6051
 *  
 
6052
 *  Availability:
 
6053
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
6054
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6055
 *    Mac OS X:         in version 10.2 and later
 
6056
 *    Windows:          in qtmlClient.lib 6.0 and later
 
6057
 }
 
6058
function QTRestrictionsGetIndClass(inRestrictionSet: QTRestrictionSet; inIndex: SInt32; var outClass: OSType): OSErr; external name '_QTRestrictionsGetIndClass';
 
6059
{
 
6060
 *  QTRestrictionsGetItem()
 
6061
 *  
 
6062
 *  Availability:
 
6063
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
6064
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6065
 *    Mac OS X:         in version 10.2 and later
 
6066
 *    Windows:          in qtmlClient.lib 6.0 and later
 
6067
 }
 
6068
function QTRestrictionsGetItem(inRestrictionSet: QTRestrictionSet; inRestrictionClass: OSType; var outRestrictions: UInt32): OSErr; external name '_QTRestrictionsGetItem';
 
6069
{
 
6070
 *  QTGetSupportedRestrictions()
 
6071
 *  
 
6072
 *  Availability:
 
6073
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
6074
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6075
 *    Mac OS X:         in version 10.2 and later
 
6076
 *    Windows:          in qtmlClient.lib 6.0 and later
 
6077
 }
 
6078
function QTGetSupportedRestrictions(inRestrictionClass: OSType; var outRestrictionIDs: UInt32): OSErr; external name '_QTGetSupportedRestrictions';
 
6079
{
 
6080
 *  QTCreateUUID()
 
6081
 *  
 
6082
 *  Availability:
 
6083
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
6084
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6085
 *    Mac OS X:         in version 10.2 and later
 
6086
 *    Windows:          in qtmlClient.lib 6.0 and later
 
6087
 }
 
6088
function QTCreateUUID(var outUUID: QTUUID; creationFlags: SInt32): OSErr; external name '_QTCreateUUID';
 
6089
{
 
6090
 *  QTEqualUUIDs()
 
6091
 *  
 
6092
 *  Availability:
 
6093
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
6094
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6095
 *    Mac OS X:         in version 10.2 and later
 
6096
 *    Windows:          in qtmlClient.lib 6.0 and later
 
6097
 }
 
6098
function QTEqualUUIDs(const (*var*) uuid1: QTUUID; const (*var*) uuid2: QTUUID): boolean; external name '_QTEqualUUIDs';
 
6099
{****
 
6100
    Time table
 
6101
****}
 
6102
{
 
6103
 *  MakeTrackTimeTable()
 
6104
 *  
 
6105
 *  Availability:
 
6106
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6107
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6108
 *    Mac OS X:         in version 10.0 and later
 
6109
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6110
 }
 
6111
function MakeTrackTimeTable(trackH: Track; var offsets: SInt32Ptr; startTime: TimeValue; endTime: TimeValue; timeIncrement: TimeValue; firstDataRefIndex: SInt16; lastDataRefIndex: SInt16; var retdataRefSkew: SInt32): OSErr; external name '_MakeTrackTimeTable';
 
6112
{
 
6113
 *  MakeMediaTimeTable()
 
6114
 *  
 
6115
 *  Availability:
 
6116
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6117
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6118
 *    Mac OS X:         in version 10.0 and later
 
6119
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6120
 }
 
6121
function MakeMediaTimeTable(theMedia: Media; var offsets: SInt32Ptr; startTime: TimeValue; endTime: TimeValue; timeIncrement: TimeValue; firstDataRefIndex: SInt16; lastDataRefIndex: SInt16; var retdataRefSkew: SInt32): OSErr; external name '_MakeMediaTimeTable';
 
6122
{
 
6123
 *  GetMaxLoadedTimeInMovie()
 
6124
 *  
 
6125
 *  Availability:
 
6126
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6127
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6128
 *    Mac OS X:         in version 10.0 and later
 
6129
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6130
 }
 
6131
function GetMaxLoadedTimeInMovie(theMovie: Movie; var time: TimeValue): OSErr; external name '_GetMaxLoadedTimeInMovie';
 
6132
{
 
6133
 *  QTMovieNeedsTimeTable()
 
6134
 *  
 
6135
 *  Availability:
 
6136
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6137
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6138
 *    Mac OS X:         in version 10.0 and later
 
6139
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6140
 }
 
6141
function QTMovieNeedsTimeTable(theMovie: Movie; var needsTimeTable: boolean): OSErr; external name '_QTMovieNeedsTimeTable';
 
6142
{
 
6143
 *  QTGetDataRefMaxFileOffset()
 
6144
 *  
 
6145
 *  Availability:
 
6146
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6147
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6148
 *    Mac OS X:         in version 10.0 and later
 
6149
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6150
 }
 
6151
function QTGetDataRefMaxFileOffset(movieH: Movie; dataRefType: OSType; dataRef: Handle; var offset: SInt32): OSErr; external name '_QTGetDataRefMaxFileOffset';
 
6152
{****
 
6153
    Bandwidth management support
 
6154
****}
 
6155
 
 
6156
const
 
6157
        ConnectionSpeedPrefsType        = $63737064 (* 'cspd' *);
 
6158
        BandwidthManagementPrefsType = $62776D67 (* 'bwmg' *);
 
6159
 
 
6160
 
 
6161
type
 
6162
        ConnectionSpeedPrefsRecordPtr = ^ConnectionSpeedPrefsRecord;
 
6163
        ConnectionSpeedPrefsRecord = record
 
6164
                connectionSpeed:                SInt32;
 
6165
        end;
 
6166
 
 
6167
        ConnectionSpeedPrefsPtr                         = ^ConnectionSpeedPrefsRecord;
 
6168
        ConnectionSpeedPrefsHandle                      = ^ConnectionSpeedPrefsPtr;
 
6169
        BandwidthManagementPrefsRecordPtr = ^BandwidthManagementPrefsRecord;
 
6170
        BandwidthManagementPrefsRecord = record
 
6171
                overrideConnectionSpeedForBandwidth: boolean;
 
6172
                pad: SInt8
 
6173
        end;
 
6174
 
 
6175
        BandwidthManagementPrefsPtr                     = ^BandwidthManagementPrefsRecord;
 
6176
        BandwidthManagementPrefsHandle          = ^BandwidthManagementPrefsPtr;
 
6177
 
 
6178
const
 
6179
        kQTIdlePriority                         = 10;
 
6180
        kQTNonRealTimePriority          = 20;
 
6181
        kQTRealTimeSharedPriority       = 25;
 
6182
        kQTRealTimePriority                     = 30;
 
6183
 
 
6184
        kQTBandwidthNotifyNeedToStop = $00000001;
 
6185
        kQTBandwidthNotifyGoodToGo      = $00000002;
 
6186
        kQTBandwidthChangeRequest       = $00000004;
 
6187
        kQTBandwidthQueueRequest        = $00000008;
 
6188
        kQTBandwidthScheduledRequest = $00000010;
 
6189
        kQTBandwidthVoluntaryRelease = $00000020;
 
6190
 
 
6191
 
 
6192
type
 
6193
{$ifc TYPED_FUNCTION_POINTERS}
 
6194
        QTBandwidthNotificationProcPtr = function(flags: SInt32; reserved: UnivPtr; refcon: UnivPtr): OSErr;
 
6195
{$elsec}
 
6196
        QTBandwidthNotificationProcPtr = ProcPtr;
 
6197
{$endc}
 
6198
 
 
6199
        QTScheduledBandwidthRecordPtr = ^QTScheduledBandwidthRecord;
 
6200
        QTScheduledBandwidthRecord = record
 
6201
                recordSize:                             SInt32;                                                         {  total number of bytes in QTScheduledBandwidthRecord }
 
6202
                priority:                               SInt32;
 
6203
                dataRate:                               SInt32;
 
6204
                startTime:                              CompTimeValue;                                                  {  bandwidth usage start time }
 
6205
                duration:                               CompTimeValue;                                                  {  duration of bandwidth usage (0 if unknown) }
 
6206
                prerollDuration:                CompTimeValue;                                                  {  time for negotiation before startTime (0 if unknown) }
 
6207
                scale:                                  TimeScale;                                                              {  timescale of value/duration/prerollDuration fields }
 
6208
                base:                                   TimeBase;                                                               {  timebase }
 
6209
        end;
 
6210
 
 
6211
        QTScheduledBandwidthPtr                         = ^QTScheduledBandwidthRecord;
 
6212
        QTScheduledBandwidthHandle                      = ^QTScheduledBandwidthPtr;
 
6213
{$ifc OPAQUE_UPP_TYPES}
 
6214
        QTBandwidthNotificationUPP = ^SInt32; { an opaque UPP }
 
6215
{$elsec}
 
6216
        QTBandwidthNotificationUPP = UniversalProcPtr;
 
6217
{$endc} 
 
6218
        {
 
6219
         *  QTBandwidthRequest()
 
6220
         *  
 
6221
         *  Availability:
 
6222
         *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
6223
         *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6224
         *    Mac OS X:         in version 10.0 and later
 
6225
         *    Windows:          in qtmlClient.lib 4.0 and later
 
6226
                }
 
6227
function QTBandwidthRequest(priority: SInt32; callback: QTBandwidthNotificationUPP; refcon: UnivPtr; var bwRef: QTBandwidthReference; flags: SInt32): OSErr; external name '_QTBandwidthRequest';
 
6228
{
 
6229
 *  QTBandwidthRequestForTimeBase()
 
6230
 *  
 
6231
 *  Availability:
 
6232
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
6233
 *    CarbonLib:        in CarbonLib 1.1 and later
 
6234
 *    Mac OS X:         in version 10.0 and later
 
6235
 *    Windows:          in qtmlClient.lib 4.1 and later
 
6236
 }
 
6237
function QTBandwidthRequestForTimeBase(tb: TimeBase; priority: SInt32; callback: QTBandwidthNotificationUPP; refcon: UnivPtr; var bwRef: QTBandwidthReference; flags: SInt32): OSErr; external name '_QTBandwidthRequestForTimeBase';
 
6238
{
 
6239
 *  QTBandwidthRelease()
 
6240
 *  
 
6241
 *  Availability:
 
6242
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
6243
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6244
 *    Mac OS X:         in version 10.0 and later
 
6245
 *    Windows:          in qtmlClient.lib 4.0 and later
 
6246
 }
 
6247
function QTBandwidthRelease(bwRef: QTBandwidthReference; flags: SInt32): OSErr; external name '_QTBandwidthRelease';
 
6248
{
 
6249
 *  QTScheduledBandwidthRequest()
 
6250
 *  
 
6251
 *  Availability:
 
6252
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
6253
 *    CarbonLib:        in CarbonLib 1.1 and later
 
6254
 *    Mac OS X:         in version 10.0 and later
 
6255
 *    Windows:          in qtmlClient.lib 4.1 and later
 
6256
 }
 
6257
function QTScheduledBandwidthRequest(scheduleRec: QTScheduledBandwidthPtr; notificationCallback: QTBandwidthNotificationUPP; refcon: UnivPtr; var sbwRef: QTScheduledBandwidthReference; flags: SInt32): OSErr; external name '_QTScheduledBandwidthRequest';
 
6258
{
 
6259
 *  QTScheduledBandwidthRelease()
 
6260
 *  
 
6261
 *  Availability:
 
6262
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
6263
 *    CarbonLib:        in CarbonLib 1.1 and later
 
6264
 *    Mac OS X:         in version 10.0 and later
 
6265
 *    Windows:          in qtmlClient.lib 4.1 and later
 
6266
 }
 
6267
function QTScheduledBandwidthRelease(sbwRef: QTScheduledBandwidthReference; flags: SInt32): OSErr; external name '_QTScheduledBandwidthRelease';
 
6268
const
 
6269
        uppQTCallBackProcInfo = $000003C0;
 
6270
        uppQTSyncTaskProcInfo = $000000C0;
 
6271
        uppMovieRgnCoverProcInfo = $00000FE0;
 
6272
        uppMovieProgressProcInfo = $0000FAE0;
 
6273
        uppMovieDrawingCompleteProcInfo = $000003E0;
 
6274
        uppTrackTransferProcInfo = $000003E0;
 
6275
        uppGetMovieProcInfo = $00003FE0;
 
6276
        uppMoviePreviewCallOutProcInfo = $000000D0;
 
6277
        uppTextMediaProcInfo = $00003FE0;
 
6278
        uppActionsProcInfo = $00003FE0;
 
6279
        uppDoMCActionProcInfo = $00003EE0;
 
6280
        uppMovieExecuteWiredActionsProcInfo = $00003FE0;
 
6281
        uppMoviePrePrerollCompleteProcInfo = $00000EC0;
 
6282
        uppQTNextTaskNeededSoonerCallbackProcInfo = $00000FC0;
 
6283
        uppMoviesErrorProcInfo = $00000380;
 
6284
        uppTweenerDataProcInfo = $003FFFF0;
 
6285
        uppQTEffectListFilterProcInfo = $0003FFD0;
 
6286
        uppQTBandwidthNotificationProcInfo = $00000FE0;
 
6287
        {
 
6288
         *  NewQTCallBackUPP()
 
6289
         *  
 
6290
         *  Availability:
 
6291
         *    Non-Carbon CFM:   available as macro/inline
 
6292
         *    CarbonLib:        in CarbonLib 1.0 and later
 
6293
         *    Mac OS X:         in version 10.0 and later
 
6294
                }
 
6295
function NewQTCallBackUPP(userRoutine: QTCallBackProcPtr): QTCallBackUPP; external name '_NewQTCallBackUPP'; { old name was NewQTCallBackProc }
 
6296
{
 
6297
 *  NewQTSyncTaskUPP()
 
6298
 *  
 
6299
 *  Availability:
 
6300
 *    Non-Carbon CFM:   available as macro/inline
 
6301
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6302
 *    Mac OS X:         in version 10.0 and later
 
6303
 }
 
6304
function NewQTSyncTaskUPP(userRoutine: QTSyncTaskProcPtr): QTSyncTaskUPP; external name '_NewQTSyncTaskUPP'; { old name was NewQTSyncTaskProc }
 
6305
{
 
6306
 *  NewMovieRgnCoverUPP()
 
6307
 *  
 
6308
 *  Availability:
 
6309
 *    Non-Carbon CFM:   available as macro/inline
 
6310
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6311
 *    Mac OS X:         in version 10.0 and later
 
6312
 }
 
6313
function NewMovieRgnCoverUPP(userRoutine: MovieRgnCoverProcPtr): MovieRgnCoverUPP; external name '_NewMovieRgnCoverUPP'; { old name was NewMovieRgnCoverProc }
 
6314
{
 
6315
 *  NewMovieProgressUPP()
 
6316
 *  
 
6317
 *  Availability:
 
6318
 *    Non-Carbon CFM:   available as macro/inline
 
6319
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6320
 *    Mac OS X:         in version 10.0 and later
 
6321
 }
 
6322
function NewMovieProgressUPP(userRoutine: MovieProgressProcPtr): MovieProgressUPP; external name '_NewMovieProgressUPP'; { old name was NewMovieProgressProc }
 
6323
{
 
6324
 *  NewMovieDrawingCompleteUPP()
 
6325
 *  
 
6326
 *  Availability:
 
6327
 *    Non-Carbon CFM:   available as macro/inline
 
6328
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6329
 *    Mac OS X:         in version 10.0 and later
 
6330
 }
 
6331
function NewMovieDrawingCompleteUPP(userRoutine: MovieDrawingCompleteProcPtr): MovieDrawingCompleteUPP; external name '_NewMovieDrawingCompleteUPP'; { old name was NewMovieDrawingCompleteProc }
 
6332
{
 
6333
 *  NewTrackTransferUPP()
 
6334
 *  
 
6335
 *  Availability:
 
6336
 *    Non-Carbon CFM:   available as macro/inline
 
6337
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6338
 *    Mac OS X:         in version 10.0 and later
 
6339
 }
 
6340
function NewTrackTransferUPP(userRoutine: TrackTransferProcPtr): TrackTransferUPP; external name '_NewTrackTransferUPP'; { old name was NewTrackTransferProc }
 
6341
{
 
6342
 *  NewGetMovieUPP()
 
6343
 *  
 
6344
 *  Availability:
 
6345
 *    Non-Carbon CFM:   available as macro/inline
 
6346
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6347
 *    Mac OS X:         in version 10.0 and later
 
6348
 }
 
6349
function NewGetMovieUPP(userRoutine: GetMovieProcPtr): GetMovieUPP; external name '_NewGetMovieUPP'; { old name was NewGetMovieProc }
 
6350
{
 
6351
 *  NewMoviePreviewCallOutUPP()
 
6352
 *  
 
6353
 *  Availability:
 
6354
 *    Non-Carbon CFM:   available as macro/inline
 
6355
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6356
 *    Mac OS X:         in version 10.0 and later
 
6357
 }
 
6358
function NewMoviePreviewCallOutUPP(userRoutine: MoviePreviewCallOutProcPtr): MoviePreviewCallOutUPP; external name '_NewMoviePreviewCallOutUPP'; { old name was NewMoviePreviewCallOutProc }
 
6359
{
 
6360
 *  NewTextMediaUPP()
 
6361
 *  
 
6362
 *  Availability:
 
6363
 *    Non-Carbon CFM:   available as macro/inline
 
6364
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6365
 *    Mac OS X:         in version 10.0 and later
 
6366
 }
 
6367
function NewTextMediaUPP(userRoutine: TextMediaProcPtr): TextMediaUPP; external name '_NewTextMediaUPP'; { old name was NewTextMediaProc }
 
6368
{
 
6369
 *  NewActionsUPP()
 
6370
 *  
 
6371
 *  Availability:
 
6372
 *    Non-Carbon CFM:   available as macro/inline
 
6373
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6374
 *    Mac OS X:         in version 10.0 and later
 
6375
 }
 
6376
function NewActionsUPP(userRoutine: ActionsProcPtr): ActionsUPP; external name '_NewActionsUPP'; { old name was NewActionsProc }
 
6377
{
 
6378
 *  NewDoMCActionUPP()
 
6379
 *  
 
6380
 *  Availability:
 
6381
 *    Non-Carbon CFM:   available as macro/inline
 
6382
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6383
 *    Mac OS X:         in version 10.0 and later
 
6384
 }
 
6385
function NewDoMCActionUPP(userRoutine: DoMCActionProcPtr): DoMCActionUPP; external name '_NewDoMCActionUPP'; { old name was NewDoMCActionProc }
 
6386
{
 
6387
 *  NewMovieExecuteWiredActionsUPP()
 
6388
 *  
 
6389
 *  Availability:
 
6390
 *    Non-Carbon CFM:   available as macro/inline
 
6391
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6392
 *    Mac OS X:         in version 10.0 and later
 
6393
 }
 
6394
function NewMovieExecuteWiredActionsUPP(userRoutine: MovieExecuteWiredActionsProcPtr): MovieExecuteWiredActionsUPP; external name '_NewMovieExecuteWiredActionsUPP'; { old name was NewMovieExecuteWiredActionsProc }
 
6395
{
 
6396
 *  NewMoviePrePrerollCompleteUPP()
 
6397
 *  
 
6398
 *  Availability:
 
6399
 *    Non-Carbon CFM:   available as macro/inline
 
6400
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6401
 *    Mac OS X:         in version 10.0 and later
 
6402
 }
 
6403
function NewMoviePrePrerollCompleteUPP(userRoutine: MoviePrePrerollCompleteProcPtr): MoviePrePrerollCompleteUPP; external name '_NewMoviePrePrerollCompleteUPP'; { old name was NewMoviePrePrerollCompleteProc }
 
6404
{
 
6405
 *  NewQTNextTaskNeededSoonerCallbackUPP()
 
6406
 *  
 
6407
 *  Availability:
 
6408
 *    Non-Carbon CFM:   available as macro/inline
 
6409
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6410
 *    Mac OS X:         in version 10.2 and later
 
6411
 }
 
6412
function NewQTNextTaskNeededSoonerCallbackUPP(userRoutine: QTNextTaskNeededSoonerCallbackProcPtr): QTNextTaskNeededSoonerCallbackUPP; external name '_NewQTNextTaskNeededSoonerCallbackUPP'; { old name was NewQTNextTaskNeededSoonerCallbackProc }
 
6413
{
 
6414
 *  NewMoviesErrorUPP()
 
6415
 *  
 
6416
 *  Availability:
 
6417
 *    Non-Carbon CFM:   available as macro/inline
 
6418
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6419
 *    Mac OS X:         in version 10.0 and later
 
6420
 }
 
6421
function NewMoviesErrorUPP(userRoutine: MoviesErrorProcPtr): MoviesErrorUPP; external name '_NewMoviesErrorUPP'; { old name was NewMoviesErrorProc }
 
6422
{
 
6423
 *  NewTweenerDataUPP()
 
6424
 *  
 
6425
 *  Availability:
 
6426
 *    Non-Carbon CFM:   available as macro/inline
 
6427
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6428
 *    Mac OS X:         in version 10.0 and later
 
6429
 }
 
6430
function NewTweenerDataUPP(userRoutine: TweenerDataProcPtr): TweenerDataUPP; external name '_NewTweenerDataUPP'; { old name was NewTweenerDataProc }
 
6431
{
 
6432
 *  NewQTEffectListFilterUPP()
 
6433
 *  
 
6434
 *  Availability:
 
6435
 *    Non-Carbon CFM:   available as macro/inline
 
6436
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6437
 *    Mac OS X:         in version 10.2 and later
 
6438
 }
 
6439
function NewQTEffectListFilterUPP(userRoutine: QTEffectListFilterProcPtr): QTEffectListFilterUPP; external name '_NewQTEffectListFilterUPP'; { old name was NewQTEffectListFilterProc }
 
6440
{
 
6441
 *  NewQTBandwidthNotificationUPP()
 
6442
 *  
 
6443
 *  Availability:
 
6444
 *    Non-Carbon CFM:   available as macro/inline
 
6445
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6446
 *    Mac OS X:         in version 10.0 and later
 
6447
 }
 
6448
function NewQTBandwidthNotificationUPP(userRoutine: QTBandwidthNotificationProcPtr): QTBandwidthNotificationUPP; external name '_NewQTBandwidthNotificationUPP'; { old name was NewQTBandwidthNotificationProc }
 
6449
{
 
6450
 *  DisposeQTCallBackUPP()
 
6451
 *  
 
6452
 *  Availability:
 
6453
 *    Non-Carbon CFM:   available as macro/inline
 
6454
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6455
 *    Mac OS X:         in version 10.0 and later
 
6456
 }
 
6457
procedure DisposeQTCallBackUPP(userUPP: QTCallBackUPP); external name '_DisposeQTCallBackUPP';
 
6458
{
 
6459
 *  DisposeQTSyncTaskUPP()
 
6460
 *  
 
6461
 *  Availability:
 
6462
 *    Non-Carbon CFM:   available as macro/inline
 
6463
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6464
 *    Mac OS X:         in version 10.0 and later
 
6465
 }
 
6466
procedure DisposeQTSyncTaskUPP(userUPP: QTSyncTaskUPP); external name '_DisposeQTSyncTaskUPP';
 
6467
{
 
6468
 *  DisposeMovieRgnCoverUPP()
 
6469
 *  
 
6470
 *  Availability:
 
6471
 *    Non-Carbon CFM:   available as macro/inline
 
6472
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6473
 *    Mac OS X:         in version 10.0 and later
 
6474
 }
 
6475
procedure DisposeMovieRgnCoverUPP(userUPP: MovieRgnCoverUPP); external name '_DisposeMovieRgnCoverUPP';
 
6476
{
 
6477
 *  DisposeMovieProgressUPP()
 
6478
 *  
 
6479
 *  Availability:
 
6480
 *    Non-Carbon CFM:   available as macro/inline
 
6481
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6482
 *    Mac OS X:         in version 10.0 and later
 
6483
 }
 
6484
procedure DisposeMovieProgressUPP(userUPP: MovieProgressUPP); external name '_DisposeMovieProgressUPP';
 
6485
{
 
6486
 *  DisposeMovieDrawingCompleteUPP()
 
6487
 *  
 
6488
 *  Availability:
 
6489
 *    Non-Carbon CFM:   available as macro/inline
 
6490
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6491
 *    Mac OS X:         in version 10.0 and later
 
6492
 }
 
6493
procedure DisposeMovieDrawingCompleteUPP(userUPP: MovieDrawingCompleteUPP); external name '_DisposeMovieDrawingCompleteUPP';
 
6494
{
 
6495
 *  DisposeTrackTransferUPP()
 
6496
 *  
 
6497
 *  Availability:
 
6498
 *    Non-Carbon CFM:   available as macro/inline
 
6499
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6500
 *    Mac OS X:         in version 10.0 and later
 
6501
 }
 
6502
procedure DisposeTrackTransferUPP(userUPP: TrackTransferUPP); external name '_DisposeTrackTransferUPP';
 
6503
{
 
6504
 *  DisposeGetMovieUPP()
 
6505
 *  
 
6506
 *  Availability:
 
6507
 *    Non-Carbon CFM:   available as macro/inline
 
6508
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6509
 *    Mac OS X:         in version 10.0 and later
 
6510
 }
 
6511
procedure DisposeGetMovieUPP(userUPP: GetMovieUPP); external name '_DisposeGetMovieUPP';
 
6512
{
 
6513
 *  DisposeMoviePreviewCallOutUPP()
 
6514
 *  
 
6515
 *  Availability:
 
6516
 *    Non-Carbon CFM:   available as macro/inline
 
6517
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6518
 *    Mac OS X:         in version 10.0 and later
 
6519
 }
 
6520
procedure DisposeMoviePreviewCallOutUPP(userUPP: MoviePreviewCallOutUPP); external name '_DisposeMoviePreviewCallOutUPP';
 
6521
{
 
6522
 *  DisposeTextMediaUPP()
 
6523
 *  
 
6524
 *  Availability:
 
6525
 *    Non-Carbon CFM:   available as macro/inline
 
6526
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6527
 *    Mac OS X:         in version 10.0 and later
 
6528
 }
 
6529
procedure DisposeTextMediaUPP(userUPP: TextMediaUPP); external name '_DisposeTextMediaUPP';
 
6530
{
 
6531
 *  DisposeActionsUPP()
 
6532
 *  
 
6533
 *  Availability:
 
6534
 *    Non-Carbon CFM:   available as macro/inline
 
6535
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6536
 *    Mac OS X:         in version 10.0 and later
 
6537
 }
 
6538
procedure DisposeActionsUPP(userUPP: ActionsUPP); external name '_DisposeActionsUPP';
 
6539
{
 
6540
 *  DisposeDoMCActionUPP()
 
6541
 *  
 
6542
 *  Availability:
 
6543
 *    Non-Carbon CFM:   available as macro/inline
 
6544
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6545
 *    Mac OS X:         in version 10.0 and later
 
6546
 }
 
6547
procedure DisposeDoMCActionUPP(userUPP: DoMCActionUPP); external name '_DisposeDoMCActionUPP';
 
6548
{
 
6549
 *  DisposeMovieExecuteWiredActionsUPP()
 
6550
 *  
 
6551
 *  Availability:
 
6552
 *    Non-Carbon CFM:   available as macro/inline
 
6553
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6554
 *    Mac OS X:         in version 10.0 and later
 
6555
 }
 
6556
procedure DisposeMovieExecuteWiredActionsUPP(userUPP: MovieExecuteWiredActionsUPP); external name '_DisposeMovieExecuteWiredActionsUPP';
 
6557
{
 
6558
 *  DisposeMoviePrePrerollCompleteUPP()
 
6559
 *  
 
6560
 *  Availability:
 
6561
 *    Non-Carbon CFM:   available as macro/inline
 
6562
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6563
 *    Mac OS X:         in version 10.0 and later
 
6564
 }
 
6565
procedure DisposeMoviePrePrerollCompleteUPP(userUPP: MoviePrePrerollCompleteUPP); external name '_DisposeMoviePrePrerollCompleteUPP';
 
6566
{
 
6567
 *  DisposeQTNextTaskNeededSoonerCallbackUPP()
 
6568
 *  
 
6569
 *  Availability:
 
6570
 *    Non-Carbon CFM:   available as macro/inline
 
6571
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6572
 *    Mac OS X:         in version 10.2 and later
 
6573
 }
 
6574
procedure DisposeQTNextTaskNeededSoonerCallbackUPP(userUPP: QTNextTaskNeededSoonerCallbackUPP); external name '_DisposeQTNextTaskNeededSoonerCallbackUPP';
 
6575
{
 
6576
 *  DisposeMoviesErrorUPP()
 
6577
 *  
 
6578
 *  Availability:
 
6579
 *    Non-Carbon CFM:   available as macro/inline
 
6580
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6581
 *    Mac OS X:         in version 10.0 and later
 
6582
 }
 
6583
procedure DisposeMoviesErrorUPP(userUPP: MoviesErrorUPP); external name '_DisposeMoviesErrorUPP';
 
6584
{
 
6585
 *  DisposeTweenerDataUPP()
 
6586
 *  
 
6587
 *  Availability:
 
6588
 *    Non-Carbon CFM:   available as macro/inline
 
6589
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6590
 *    Mac OS X:         in version 10.0 and later
 
6591
 }
 
6592
procedure DisposeTweenerDataUPP(userUPP: TweenerDataUPP); external name '_DisposeTweenerDataUPP';
 
6593
{
 
6594
 *  DisposeQTEffectListFilterUPP()
 
6595
 *  
 
6596
 *  Availability:
 
6597
 *    Non-Carbon CFM:   available as macro/inline
 
6598
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6599
 *    Mac OS X:         in version 10.2 and later
 
6600
 }
 
6601
procedure DisposeQTEffectListFilterUPP(userUPP: QTEffectListFilterUPP); external name '_DisposeQTEffectListFilterUPP';
 
6602
{
 
6603
 *  DisposeQTBandwidthNotificationUPP()
 
6604
 *  
 
6605
 *  Availability:
 
6606
 *    Non-Carbon CFM:   available as macro/inline
 
6607
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6608
 *    Mac OS X:         in version 10.0 and later
 
6609
 }
 
6610
procedure DisposeQTBandwidthNotificationUPP(userUPP: QTBandwidthNotificationUPP); external name '_DisposeQTBandwidthNotificationUPP';
 
6611
{
 
6612
 *  InvokeQTCallBackUPP()
 
6613
 *  
 
6614
 *  Availability:
 
6615
 *    Non-Carbon CFM:   available as macro/inline
 
6616
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6617
 *    Mac OS X:         in version 10.0 and later
 
6618
 }
 
6619
procedure InvokeQTCallBackUPP(cb: QTCallBack; refCon: SInt32; userRoutine: QTCallBackUPP); external name '_InvokeQTCallBackUPP'; { old name was CallQTCallBackProc }
 
6620
{
 
6621
 *  InvokeQTSyncTaskUPP()
 
6622
 *  
 
6623
 *  Availability:
 
6624
 *    Non-Carbon CFM:   available as macro/inline
 
6625
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6626
 *    Mac OS X:         in version 10.0 and later
 
6627
 }
 
6628
procedure InvokeQTSyncTaskUPP(task: UnivPtr; userRoutine: QTSyncTaskUPP); external name '_InvokeQTSyncTaskUPP'; { old name was CallQTSyncTaskProc }
 
6629
{
 
6630
 *  InvokeMovieRgnCoverUPP()
 
6631
 *  
 
6632
 *  Availability:
 
6633
 *    Non-Carbon CFM:   available as macro/inline
 
6634
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6635
 *    Mac OS X:         in version 10.0 and later
 
6636
 }
 
6637
function InvokeMovieRgnCoverUPP(theMovie: Movie; changedRgn: RgnHandle; refcon: SInt32; userRoutine: MovieRgnCoverUPP): OSErr; external name '_InvokeMovieRgnCoverUPP'; { old name was CallMovieRgnCoverProc }
 
6638
{
 
6639
 *  InvokeMovieProgressUPP()
 
6640
 *  
 
6641
 *  Availability:
 
6642
 *    Non-Carbon CFM:   available as macro/inline
 
6643
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6644
 *    Mac OS X:         in version 10.0 and later
 
6645
 }
 
6646
function InvokeMovieProgressUPP(theMovie: Movie; message: SInt16; whatOperation: SInt16; percentDone: Fixed; refcon: SInt32; userRoutine: MovieProgressUPP): OSErr; external name '_InvokeMovieProgressUPP'; { old name was CallMovieProgressProc }
 
6647
{
 
6648
 *  InvokeMovieDrawingCompleteUPP()
 
6649
 *  
 
6650
 *  Availability:
 
6651
 *    Non-Carbon CFM:   available as macro/inline
 
6652
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6653
 *    Mac OS X:         in version 10.0 and later
 
6654
 }
 
6655
function InvokeMovieDrawingCompleteUPP(theMovie: Movie; refCon: SInt32; userRoutine: MovieDrawingCompleteUPP): OSErr; external name '_InvokeMovieDrawingCompleteUPP'; { old name was CallMovieDrawingCompleteProc }
 
6656
{
 
6657
 *  InvokeTrackTransferUPP()
 
6658
 *  
 
6659
 *  Availability:
 
6660
 *    Non-Carbon CFM:   available as macro/inline
 
6661
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6662
 *    Mac OS X:         in version 10.0 and later
 
6663
 }
 
6664
function InvokeTrackTransferUPP(t: Track; refCon: SInt32; userRoutine: TrackTransferUPP): OSErr; external name '_InvokeTrackTransferUPP'; { old name was CallTrackTransferProc }
 
6665
{
 
6666
 *  InvokeGetMovieUPP()
 
6667
 *  
 
6668
 *  Availability:
 
6669
 *    Non-Carbon CFM:   available as macro/inline
 
6670
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6671
 *    Mac OS X:         in version 10.0 and later
 
6672
 }
 
6673
function InvokeGetMovieUPP(offset: SInt32; size: SInt32; dataPtr: UnivPtr; refCon: UnivPtr; userRoutine: GetMovieUPP): OSErr; external name '_InvokeGetMovieUPP'; { old name was CallGetMovieProc }
 
6674
{
 
6675
 *  InvokeMoviePreviewCallOutUPP()
 
6676
 *  
 
6677
 *  Availability:
 
6678
 *    Non-Carbon CFM:   available as macro/inline
 
6679
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6680
 *    Mac OS X:         in version 10.0 and later
 
6681
 }
 
6682
function InvokeMoviePreviewCallOutUPP(refcon: SInt32; userRoutine: MoviePreviewCallOutUPP): boolean; external name '_InvokeMoviePreviewCallOutUPP'; { old name was CallMoviePreviewCallOutProc }
 
6683
{
 
6684
 *  InvokeTextMediaUPP()
 
6685
 *  
 
6686
 *  Availability:
 
6687
 *    Non-Carbon CFM:   available as macro/inline
 
6688
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6689
 *    Mac OS X:         in version 10.0 and later
 
6690
 }
 
6691
function InvokeTextMediaUPP(theText: Handle; theMovie: Movie; var displayFlag: SInt16; refcon: SInt32; userRoutine: TextMediaUPP): OSErr; external name '_InvokeTextMediaUPP'; { old name was CallTextMediaProc }
 
6692
{
 
6693
 *  InvokeActionsUPP()
 
6694
 *  
 
6695
 *  Availability:
 
6696
 *    Non-Carbon CFM:   available as macro/inline
 
6697
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6698
 *    Mac OS X:         in version 10.0 and later
 
6699
 }
 
6700
function InvokeActionsUPP(refcon: UnivPtr; targetTrack: Track; targetRefCon: SInt32; theEvent: QTEventRecordPtr; userRoutine: ActionsUPP): OSErr; external name '_InvokeActionsUPP'; { old name was CallActionsProc }
 
6701
{
 
6702
 *  InvokeDoMCActionUPP()
 
6703
 *  
 
6704
 *  Availability:
 
6705
 *    Non-Carbon CFM:   available as macro/inline
 
6706
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6707
 *    Mac OS X:         in version 10.0 and later
 
6708
 }
 
6709
function InvokeDoMCActionUPP(refcon: UnivPtr; action: SInt16; params: UnivPtr; var handled: boolean; userRoutine: DoMCActionUPP): OSErr; external name '_InvokeDoMCActionUPP'; { old name was CallDoMCActionProc }
 
6710
{
 
6711
 *  InvokeMovieExecuteWiredActionsUPP()
 
6712
 *  
 
6713
 *  Availability:
 
6714
 *    Non-Carbon CFM:   available as macro/inline
 
6715
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6716
 *    Mac OS X:         in version 10.0 and later
 
6717
 }
 
6718
function InvokeMovieExecuteWiredActionsUPP(theMovie: Movie; refcon: UnivPtr; flags: SInt32; wiredActions: QTAtomContainer; userRoutine: MovieExecuteWiredActionsUPP): OSErr; external name '_InvokeMovieExecuteWiredActionsUPP'; { old name was CallMovieExecuteWiredActionsProc }
 
6719
{
 
6720
 *  InvokeMoviePrePrerollCompleteUPP()
 
6721
 *  
 
6722
 *  Availability:
 
6723
 *    Non-Carbon CFM:   available as macro/inline
 
6724
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6725
 *    Mac OS X:         in version 10.0 and later
 
6726
 }
 
6727
procedure InvokeMoviePrePrerollCompleteUPP(theMovie: Movie; prerollErr: OSErr; refcon: UnivPtr; userRoutine: MoviePrePrerollCompleteUPP); external name '_InvokeMoviePrePrerollCompleteUPP'; { old name was CallMoviePrePrerollCompleteProc }
 
6728
{
 
6729
 *  InvokeQTNextTaskNeededSoonerCallbackUPP()
 
6730
 *  
 
6731
 *  Availability:
 
6732
 *    Non-Carbon CFM:   available as macro/inline
 
6733
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6734
 *    Mac OS X:         in version 10.2 and later
 
6735
 }
 
6736
procedure InvokeQTNextTaskNeededSoonerCallbackUPP(duration: TimeValue; flags: UInt32; refcon: UnivPtr; userRoutine: QTNextTaskNeededSoonerCallbackUPP); external name '_InvokeQTNextTaskNeededSoonerCallbackUPP'; { old name was CallQTNextTaskNeededSoonerCallbackProc }
 
6737
{
 
6738
 *  InvokeMoviesErrorUPP()
 
6739
 *  
 
6740
 *  Availability:
 
6741
 *    Non-Carbon CFM:   available as macro/inline
 
6742
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6743
 *    Mac OS X:         in version 10.0 and later
 
6744
 }
 
6745
procedure InvokeMoviesErrorUPP(theErr: OSErr; refcon: SInt32; userRoutine: MoviesErrorUPP); external name '_InvokeMoviesErrorUPP'; { old name was CallMoviesErrorProc }
 
6746
{
 
6747
 *  InvokeTweenerDataUPP()
 
6748
 *  
 
6749
 *  Availability:
 
6750
 *    Non-Carbon CFM:   available as macro/inline
 
6751
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6752
 *    Mac OS X:         in version 10.0 and later
 
6753
 }
 
6754
function InvokeTweenerDataUPP(tr: TweenRecordPtr; tweenData: UnivPtr; tweenDataSize: SInt32; dataDescriptionSeed: SInt32; dataDescription: Handle; asyncCompletionProc: ICMCompletionProcRecordPtr; transferProc: UniversalProcPtr; refCon: UnivPtr; userRoutine: TweenerDataUPP): ComponentResult; external name '_InvokeTweenerDataUPP'; { old name was CallTweenerDataProc }
 
6755
{
 
6756
 *  InvokeQTEffectListFilterUPP()
 
6757
 *  
 
6758
 *  Availability:
 
6759
 *    Non-Carbon CFM:   available as macro/inline
 
6760
 *    CarbonLib:        in CarbonLib 1.6 and later
 
6761
 *    Mac OS X:         in version 10.2 and later
 
6762
 }
 
6763
function InvokeQTEffectListFilterUPP(effect: Component; effectMinSource: SInt32; effectMaxSource: SInt32; majorClass: OSType; minorClass: OSType; refcon: UnivPtr; userRoutine: QTEffectListFilterUPP): boolean; external name '_InvokeQTEffectListFilterUPP'; { old name was CallQTEffectListFilterProc }
 
6764
{
 
6765
 *  InvokeQTBandwidthNotificationUPP()
 
6766
 *  
 
6767
 *  Availability:
 
6768
 *    Non-Carbon CFM:   available as macro/inline
 
6769
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
6770
 *    Mac OS X:         in version 10.0 and later
 
6771
 }
 
6772
function InvokeQTBandwidthNotificationUPP(flags: SInt32; reserved: UnivPtr; refcon: UnivPtr; userRoutine: QTBandwidthNotificationUPP): OSErr; external name '_InvokeQTBandwidthNotificationUPP'; { old name was CallQTBandwidthNotificationProc }
 
6773
{****
 
6774
    QT International Text Atom Support
 
6775
****}
 
6776
 
 
6777
const
 
6778
        kITextRemoveEverythingBut       = $00;
 
6779
        kITextRemoveLeaveSuggestedAlternate = $02;
 
6780
 
 
6781
        kITextAtomType                          = $69747874 (* 'itxt' *);
 
6782
        kITextStringAtomType            = $74657874 (* 'text' *);
 
6783
 
 
6784
        {
 
6785
         *  ITextAddString()
 
6786
         *  
 
6787
         *  Availability:
 
6788
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
6789
         *    CarbonLib:        in CarbonLib 1.0 and later
 
6790
         *    Mac OS X:         in version 10.0 and later
 
6791
         *    Windows:          in qtmlClient.lib 3.0 and later
 
6792
                }
 
6793
function ITextAddString(container: QTAtomContainer; parentAtom: QTAtom; theRegionCode: RegionCode; const (*var*) theString: Str255): OSErr; external name '_ITextAddString';
 
6794
{
 
6795
 *  ITextRemoveString()
 
6796
 *  
 
6797
 *  Availability:
 
6798
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
6799
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6800
 *    Mac OS X:         in version 10.0 and later
 
6801
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6802
 }
 
6803
function ITextRemoveString(container: QTAtomContainer; parentAtom: QTAtom; theRegionCode: RegionCode; flags: SInt32): OSErr; external name '_ITextRemoveString';
 
6804
{
 
6805
 *  ITextGetString()
 
6806
 *  
 
6807
 *  Availability:
 
6808
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
6809
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6810
 *    Mac OS X:         in version 10.0 and later
 
6811
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6812
 }
 
6813
function ITextGetString(container: QTAtomContainer; parentAtom: QTAtom; requestedRegion: RegionCode; var foundRegion: RegionCode; theString: StringPtr): OSErr; external name '_ITextGetString';
 
6814
{
 
6815
 *  QTTextToNativeText()
 
6816
 *  
 
6817
 *  Availability:
 
6818
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
6819
 *    CarbonLib:        in CarbonLib 1.0 and later
 
6820
 *    Mac OS X:         in version 10.0 and later
 
6821
 *    Windows:          in qtmlClient.lib 3.0 and later
 
6822
 }
 
6823
function QTTextToNativeText(theText: Handle; encoding: SInt32; flags: SInt32): OSErr; external name '_QTTextToNativeText';
 
6824
{  QTParseTextHREF inContainer atoms }
 
6825
 
 
6826
const
 
6827
        kQTParseTextHREFText            = $74657874 (* 'text' *);                                               {  string }
 
6828
        kQTParseTextHREFBaseURL         = $6275726C (* 'burl' *);                                               {  string }
 
6829
        kQTParseTextHREFClickPoint      = $636C696B (* 'clik' *);                                               {  Point; if present, QTParseTextHREF will expand URLs to support server-side image maps }
 
6830
        kQTParseTextHREFUseAltDelim     = $616C7464 (* 'altd' *);                                               {  boolean; if no kQTParseTextHREFDelimiter, delim is ':' }
 
6831
        kQTParseTextHREFDelimiter       = $64656C6D (* 'delm' *);                                               {  character }
 
6832
        kQTParseTextHREFRecomposeHREF = $72687266 (* 'rhrf' *);                                         {  Boolean; if true, QTParseTextHREF returns recomposed HREF with URL expanded as appropriate }
 
6833
 
 
6834
        {  QTParseTextHREF outContainer atoms }
 
6835
        kQTParseTextHREFURL                     = $75726C20 (* 'url ' *);                                               {  string }
 
6836
        kQTParseTextHREFTarget          = $74617267 (* 'targ' *);                                               {  string }
 
6837
        kQTParseTextHREFChapter         = $63686170 (* 'chap' *);                                               {  string }
 
6838
        kQTParseTextHREFIsAutoHREF      = $6175746F (* 'auto' *);                                               {  Boolean }
 
6839
        kQTParseTextHREFIsServerMap     = $736D6170 (* 'smap' *);                                               {  Boolean }
 
6840
        kQTParseTextHREFHREF            = $68726566 (* 'href' *);                                               {  string; recomposed HREF with URL expanded as appropriate, suitable for mcActionLinkToURL }
 
6841
        kQTParseTextHREFEMBEDArgs       = $6D626564 (* 'mbed' *);                                               {  string; text between 'E<' and '>' to be used as new movie's embed tags }
 
6842
 
 
6843
        {
 
6844
         *  QTParseTextHREF()
 
6845
         *  
 
6846
         *  Availability:
 
6847
         *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
6848
         *    CarbonLib:        in CarbonLib 1.1 and later
 
6849
         *    Mac OS X:         in version 10.0 and later
 
6850
         *    Windows:          in qtmlClient.lib 4.1 and later
 
6851
                }
 
6852
function QTParseTextHREF(href: CStringPtr; hrefLen: SInt32; inContainer: QTAtomContainer; var outContainer: QTAtomContainer): OSErr; external name '_QTParseTextHREF';
 
6853
{************************
 
6854
* track reference types
 
6855
*************************}
 
6856
 
 
6857
const
 
6858
        kTrackReferenceChapterList      = $63686170 (* 'chap' *);
 
6859
        kTrackReferenceTimeCode         = $746D6364 (* 'tmcd' *);
 
6860
        kTrackReferenceModifier         = $73737263 (* 'ssrc' *);
 
6861
 
 
6862
        {       ************************
 
6863
        * modifier track types
 
6864
        *************************       }
 
6865
        kTrackModifierInput                     = $696E;                                                {  is really 'in' }
 
6866
        kTrackModifierType                      = $7479;                                                {  is really 'ty' }
 
6867
        kTrackModifierReference         = $73737263 (* 'ssrc' *);
 
6868
        kTrackModifierObjectID          = $6F626964 (* 'obid' *);
 
6869
        kTrackModifierInputName         = $6E616D65 (* 'name' *);
 
6870
 
 
6871
        kInputMapSubInputID                     = $73756269 (* 'subi' *);
 
6872
 
 
6873
        kTrackModifierTypeMatrix        = 1;
 
6874
        kTrackModifierTypeClip          = 2;
 
6875
        kTrackModifierTypeGraphicsMode = 5;
 
6876
        kTrackModifierTypeVolume        = 3;
 
6877
        kTrackModifierTypeBalance       = 4;
 
6878
        kTrackModifierTypeImage         = $76696465 (* 'vide' *);                                               {  was kTrackModifierTypeSpriteImage }
 
6879
        kTrackModifierObjectMatrix      = 6;
 
6880
        kTrackModifierObjectGraphicsMode = 7;
 
6881
        kTrackModifierType3d4x4Matrix = 8;
 
6882
        kTrackModifierCameraData        = 9;
 
6883
        kTrackModifierSoundLocalizationData = 10;
 
6884
        kTrackModifierObjectImageIndex = 11;
 
6885
        kTrackModifierObjectLayer       = 12;
 
6886
        kTrackModifierObjectVisible     = 13;
 
6887
        kTrackModifierAngleAspectCamera = 14;
 
6888
        kTrackModifierPanAngle          = $70616E20 (* 'pan ' *);
 
6889
        kTrackModifierTiltAngle         = $74696C74 (* 'tilt' *);
 
6890
        kTrackModifierVerticalFieldOfViewAngle = $666F7620 (* 'fov ' *);
 
6891
        kTrackModifierObjectQTEventSend = $65766E74 (* 'evnt' *);
 
6892
        kTrackModifierObjectCanBeHitTested = 15;
 
6893
 
 
6894
 
 
6895
type
 
6896
        ModifierTrackGraphicsModeRecordPtr = ^ModifierTrackGraphicsModeRecord;
 
6897
        ModifierTrackGraphicsModeRecord = record
 
6898
                graphicsMode:                   SInt32;
 
6899
                opColor:                                RGBColor;
 
6900
        end;
 
6901
 
 
6902
 
 
6903
        {       ************************
 
6904
        * tween track types
 
6905
        *************************       }
 
6906
 
 
6907
const
 
6908
        kTweenTypeShort                         = 1;
 
6909
        kTweenTypeLong                          = 2;
 
6910
        kTweenTypeFixed                         = 3;
 
6911
        kTweenTypePoint                         = 4;
 
6912
        kTweenTypeQDRect                        = 5;
 
6913
        kTweenTypeQDRegion                      = 6;
 
6914
        kTweenTypeMatrix                        = 7;
 
6915
        kTweenTypeRGBColor                      = 8;
 
6916
        kTweenTypeGraphicsModeWithRGBColor = 9;
 
6917
        kTweenTypeQTFloatSingle         = 10;
 
6918
        kTweenTypeQTFloatDouble         = 11;
 
6919
        kTweenTypeFixedPoint            = 12;
 
6920
        kTweenType3dScale                       = $33736361 (* '3sca' *);
 
6921
        kTweenType3dTranslate           = $33747261 (* '3tra' *);
 
6922
        kTweenType3dRotate                      = $33726F74 (* '3rot' *);
 
6923
        kTweenType3dRotateAboutPoint = $33726170 (* '3rap' *);
 
6924
        kTweenType3dRotateAboutAxis     = $33726178 (* '3rax' *);
 
6925
        kTweenType3dRotateAboutVector = $33727663 (* '3rvc' *);
 
6926
        kTweenType3dQuaternion          = $33717561 (* '3qua' *);
 
6927
        kTweenType3dMatrix                      = $336D6174 (* '3mat' *);
 
6928
        kTweenType3dCameraData          = $3363616D (* '3cam' *);
 
6929
        kTweenType3dAngleAspectCameraData = $33636161 (* '3caa' *);
 
6930
        kTweenType3dSoundLocalizationData = $33736C63 (* '3slc' *);
 
6931
        kTweenTypePathToMatrixTranslation = $67786D74 (* 'gxmt' *);
 
6932
        kTweenTypePathToMatrixRotation = $67787072 (* 'gxpr' *);
 
6933
        kTweenTypePathToMatrixTranslationAndRotation = $67786D72 (* 'gxmr' *);
 
6934
        kTweenTypePathToFixedPoint      = $67786670 (* 'gxfp' *);
 
6935
        kTweenTypePathXtoY                      = $67787879 (* 'gxxy' *);
 
6936
        kTweenTypePathYtoX                      = $67787978 (* 'gxyx' *);
 
6937
        kTweenTypeAtomList                      = $61746F6D (* 'atom' *);
 
6938
        kTweenTypePolygon                       = $706F6C79 (* 'poly' *);
 
6939
        kTweenTypeMultiMatrix           = $6D756C6D (* 'mulm' *);
 
6940
        kTweenTypeSpin                          = $7370696E (* 'spin' *);
 
6941
        kTweenType3dMatrixNonLinear     = $336E6C72 (* '3nlr' *);
 
6942
        kTweenType3dVRObject            = $3376726F (* '3vro' *);
 
6943
 
 
6944
        kTweenEntry                                     = $7477656E (* 'twen' *);
 
6945
        kTweenData                                      = $64617461 (* 'data' *);
 
6946
        kTweenType                                      = $74776E74 (* 'twnt' *);
 
6947
        kTweenStartOffset                       = $74777374 (* 'twst' *);
 
6948
        kTweenDuration                          = $74776475 (* 'twdu' *);
 
6949
        kTweenFlags                                     = $666C6167 (* 'flag' *);
 
6950
        kTweenOutputMin                         = $6F6D696E (* 'omin' *);
 
6951
        kTweenOutputMax                         = $6F6D6178 (* 'omax' *);
 
6952
        kTweenSequenceElement           = $73657165 (* 'seqe' *);
 
6953
        kTween3dInitialCondition        = $69636E64 (* 'icnd' *);
 
6954
        kTweenInterpolationID           = $696E7472 (* 'intr' *);
 
6955
        kTweenRegionData                        = $71647267 (* 'qdrg' *);
 
6956
        kTweenPictureData                       = $50494354 (* 'PICT' *);
 
6957
        kListElementType                        = $74797065 (* 'type' *);
 
6958
        kListElementDataType            = $64617479 (* 'daty' *);
 
6959
        kNameAtom                                       = $6E616D65 (* 'name' *);
 
6960
        kInitialRotationAtom            = $696E726F (* 'inro' *);
 
6961
        kNonLinearTweenHeader           = $6E6C7468 (* 'nlth' *);
 
6962
 
 
6963
        {  kTweenFlags }
 
6964
        kTweenReturnDelta                       = $00000001;
 
6965
 
 
6966
 
 
6967
type
 
6968
        TweenSequenceEntryRecordPtr = ^TweenSequenceEntryRecord;
 
6969
        TweenSequenceEntryRecord = record
 
6970
                endPercent:                             Fixed;
 
6971
                tweenAtomID:                    QTAtomID;
 
6972
                dataAtomID:                             QTAtomID;
 
6973
        end;
 
6974
 
 
6975
 
 
6976
        {       ****
 
6977
            Content Restrictions
 
6978
        ****    }
 
6979
 
 
6980
const
 
6981
        kQTRestrictionClassSave         = $73617665 (* 'save' *);
 
6982
        kQTRestrictionSaveDontAddMovieResource = $00000001;
 
6983
        kQTRestrictionSaveDontFlatten = $00000002;
 
6984
        kQTRestrictionSaveDontExport = $00000004;
 
6985
        kQTRestrictionSaveDontExtract = $00000008;                                      {  don't allow any form of extraction of content }
 
6986
        kQTRestrictionClassEdit         = $65646974 (* 'edit' *);
 
6987
        kQTRestrictionEditDontCopy      = $00000001;                                    {  disable copy  }
 
6988
        kQTRestrictionEditDontCut       = $00000002;                                    {  disable cut  }
 
6989
        kQTRestrictionEditDontPaste     = $00000004;                                    {  disable paste  }
 
6990
        kQTRestrictionEditDontClear     = $00000008;                                    {  disable clear }
 
6991
        kQTRestrictionEditDontModify = $00000010;                                       {  don't allow modification of content }
 
6992
        kQTRestrictionEditDontExtract = $00000020;                                      {  don't allow any form of extraction of content }
 
6993
 
 
6994
 
 
6995
        {       ************************
 
6996
        * Video Media routines
 
6997
        *************************       }
 
6998
 
 
6999
 
 
7000
        videoFlagDontLeanAhead          = $00000001;
 
7001
 
 
7002
 
 
7003
        {  use these five routines at your own peril }
 
7004
        {
 
7005
         *  VideoMediaResetStatistics()
 
7006
         *  
 
7007
         *  Availability:
 
7008
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7009
         *    CarbonLib:        in CarbonLib 1.0 and later
 
7010
         *    Mac OS X:         in version 10.0 and later
 
7011
         *    Windows:          in qtmlClient.lib 3.0 and later
 
7012
                }
 
7013
function VideoMediaResetStatistics(mh: MediaHandler): ComponentResult; external name '_VideoMediaResetStatistics';
 
7014
{
 
7015
 *  VideoMediaGetStatistics()
 
7016
 *  
 
7017
 *  Availability:
 
7018
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7019
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7020
 *    Mac OS X:         in version 10.0 and later
 
7021
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7022
 }
 
7023
function VideoMediaGetStatistics(mh: MediaHandler): ComponentResult; external name '_VideoMediaGetStatistics';
 
7024
{
 
7025
 *  VideoMediaGetStallCount()
 
7026
 *  
 
7027
 *  Availability:
 
7028
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7029
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7030
 *    Mac OS X:         in version 10.0 and later
 
7031
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7032
 }
 
7033
function VideoMediaGetStallCount(mh: MediaHandler; var stalls: UInt32): ComponentResult; external name '_VideoMediaGetStallCount';
 
7034
{
 
7035
 *  VideoMediaSetCodecParameter()
 
7036
 *  
 
7037
 *  Availability:
 
7038
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7039
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7040
 *    Mac OS X:         in version 10.0 and later
 
7041
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7042
 }
 
7043
function VideoMediaSetCodecParameter(mh: MediaHandler; cType: CodecType; parameterID: OSType; parameterChangeSeed: SInt32; dataPtr: UnivPtr; dataSize: SInt32): ComponentResult; external name '_VideoMediaSetCodecParameter';
 
7044
{
 
7045
 *  VideoMediaGetCodecParameter()
 
7046
 *  
 
7047
 *  Availability:
 
7048
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7049
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7050
 *    Mac OS X:         in version 10.0 and later
 
7051
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7052
 }
 
7053
function VideoMediaGetCodecParameter(mh: MediaHandler; cType: CodecType; parameterID: OSType; outParameterData: Handle): ComponentResult; external name '_VideoMediaGetCodecParameter';
 
7054
{************************
 
7055
* Text Media routines
 
7056
*************************}
 
7057
 
 
7058
 
 
7059
{ Return displayFlags for TextProc }
 
7060
 
 
7061
const
 
7062
        txtProcDefaultDisplay           = 0;                                                    {     Use the media's default }
 
7063
        txtProcDontDisplay                      = 1;                                                    {     Don't display the text }
 
7064
        txtProcDoDisplay                        = 2;                                                    {     Do display the text }
 
7065
 
 
7066
        {
 
7067
         *  TextMediaSetTextProc()
 
7068
         *  
 
7069
         *  Availability:
 
7070
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7071
         *    CarbonLib:        in CarbonLib 1.0 and later
 
7072
         *    Mac OS X:         in version 10.0 and later
 
7073
         *    Windows:          in qtmlClient.lib 3.0 and later
 
7074
                }
 
7075
function TextMediaSetTextProc(mh: MediaHandler; TextProc: TextMediaUPP; refcon: SInt32): ComponentResult; external name '_TextMediaSetTextProc';
 
7076
{
 
7077
 *  TextMediaAddTextSample()
 
7078
 *  
 
7079
 *  Availability:
 
7080
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7081
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7082
 *    Mac OS X:         in version 10.0 and later
 
7083
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7084
 }
 
7085
function TextMediaAddTextSample(mh: MediaHandler; text: Ptr; size: UInt32; fontNumber: SInt16; fontSize: SInt16; txtFace: ByteParameter; var textColor: RGBColor; var backColor: RGBColor; textJustification: SInt16; var textBox: Rect; displayFlags: SInt32; scrollDelay: TimeValue; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor; duration: TimeValue; var sampleTime: TimeValue): ComponentResult; external name '_TextMediaAddTextSample';
 
7086
{
 
7087
 *  TextMediaAddTESample()
 
7088
 *  
 
7089
 *  Availability:
 
7090
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7091
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7092
 *    Mac OS X:         in version 10.0 and later
 
7093
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7094
 }
 
7095
function TextMediaAddTESample(mh: MediaHandler; hTE: TEHandle; var backColor: RGBColor; textJustification: SInt16; var textBox: Rect; displayFlags: SInt32; scrollDelay: TimeValue; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor; duration: TimeValue; var sampleTime: TimeValue): ComponentResult; external name '_TextMediaAddTESample';
 
7096
{
 
7097
 *  TextMediaAddHiliteSample()
 
7098
 *  
 
7099
 *  Availability:
 
7100
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7101
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7102
 *    Mac OS X:         in version 10.0 and later
 
7103
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7104
 }
 
7105
function TextMediaAddHiliteSample(mh: MediaHandler; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor; duration: TimeValue; var sampleTime: TimeValue): ComponentResult; external name '_TextMediaAddHiliteSample';
 
7106
{
 
7107
 *  TextMediaDrawRaw()
 
7108
 *  
 
7109
 *  Availability:
 
7110
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7111
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7112
 *    Mac OS X:         in version 10.0 and later
 
7113
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7114
 }
 
7115
function TextMediaDrawRaw(mh: MediaHandler; gw: GWorldPtr; gd: GDHandle; data: UnivPtr; dataSize: SInt32; tdh: TextDescriptionHandle): ComponentResult; external name '_TextMediaDrawRaw';
 
7116
{
 
7117
 *  TextMediaSetTextProperty()
 
7118
 *  
 
7119
 *  Availability:
 
7120
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7121
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7122
 *    Mac OS X:         in version 10.0 and later
 
7123
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7124
 }
 
7125
function TextMediaSetTextProperty(mh: MediaHandler; atMediaTime: TimeValue; propertyType: SInt32; data: UnivPtr; dataSize: SInt32): ComponentResult; external name '_TextMediaSetTextProperty';
 
7126
{
 
7127
 *  TextMediaRawSetup()
 
7128
 *  
 
7129
 *  Availability:
 
7130
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7131
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7132
 *    Mac OS X:         in version 10.0 and later
 
7133
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7134
 }
 
7135
function TextMediaRawSetup(mh: MediaHandler; gw: GWorldPtr; gd: GDHandle; data: UnivPtr; dataSize: SInt32; tdh: TextDescriptionHandle; sampleDuration: TimeValue): ComponentResult; external name '_TextMediaRawSetup';
 
7136
{
 
7137
 *  TextMediaRawIdle()
 
7138
 *  
 
7139
 *  Availability:
 
7140
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7141
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7142
 *    Mac OS X:         in version 10.0 and later
 
7143
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7144
 }
 
7145
function TextMediaRawIdle(mh: MediaHandler; gw: GWorldPtr; gd: GDHandle; sampleTime: TimeValue; flagsIn: SInt32; var flagsOut: SInt32): ComponentResult; external name '_TextMediaRawIdle';
 
7146
{
 
7147
 *  TextMediaGetTextProperty()
 
7148
 *  
 
7149
 *  Availability:
 
7150
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
7151
 *    CarbonLib:        in CarbonLib 1.3 and later
 
7152
 *    Mac OS X:         in version 10.0 and later
 
7153
 *    Windows:          in qtmlClient.lib 5.0 and later
 
7154
 }
 
7155
function TextMediaGetTextProperty(mh: MediaHandler; atMediaTime: TimeValue; propertyType: SInt32; data: UnivPtr; dataSize: SInt32): ComponentResult; external name '_TextMediaGetTextProperty';
 
7156
const
 
7157
        findTextEdgeOK                          = $01;                                                  {  Okay to find text at specified sample time }
 
7158
        findTextCaseSensitive           = $02;                                                  {  Case sensitive search }
 
7159
        findTextReverseSearch           = $04;                                                  {  Search from sampleTime backwards }
 
7160
        findTextWrapAround                      = $08;                                                  {  Wrap search when beginning or end of movie is hit }
 
7161
        findTextUseOffset                       = $10;                                                  {  Begin search at the given character offset into sample rather than edge }
 
7162
 
 
7163
        {
 
7164
         *  TextMediaFindNextText()
 
7165
         *  
 
7166
         *  Availability:
 
7167
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7168
         *    CarbonLib:        in CarbonLib 1.0 and later
 
7169
         *    Mac OS X:         in version 10.0 and later
 
7170
         *    Windows:          in qtmlClient.lib 3.0 and later
 
7171
                }
 
7172
function TextMediaFindNextText(mh: MediaHandler; text: Ptr; size: SInt32; findFlags: SInt16; startTime: TimeValue; var foundTime: TimeValue; var foundDuration: TimeValue; var offset: SInt32): ComponentResult; external name '_TextMediaFindNextText';
 
7173
{
 
7174
 *  TextMediaHiliteTextSample()
 
7175
 *  
 
7176
 *  Availability:
 
7177
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7178
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7179
 *    Mac OS X:         in version 10.0 and later
 
7180
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7181
 }
 
7182
function TextMediaHiliteTextSample(mh: MediaHandler; sampleTime: TimeValue; hiliteStart: SInt16; hiliteEnd: SInt16; var rgbHiliteColor: RGBColor): ComponentResult; external name '_TextMediaHiliteTextSample';
 
7183
const
 
7184
        dropShadowOffsetType            = $6472706F (* 'drpo' *);
 
7185
        dropShadowTranslucencyType      = $64727074 (* 'drpt' *);
 
7186
 
 
7187
        {
 
7188
         *  TextMediaSetTextSampleData()
 
7189
         *  
 
7190
         *  Availability:
 
7191
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7192
         *    CarbonLib:        in CarbonLib 1.0 and later
 
7193
         *    Mac OS X:         in version 10.0 and later
 
7194
         *    Windows:          in qtmlClient.lib 3.0 and later
 
7195
                }
 
7196
function TextMediaSetTextSampleData(mh: MediaHandler; data: UnivPtr; dataType: OSType): ComponentResult; external name '_TextMediaSetTextSampleData';
 
7197
{************************
 
7198
* Sprite Media routines
 
7199
*************************}
 
7200
{ flags for sprite hit test routines }
 
7201
 
 
7202
const
 
7203
        spriteHitTestBounds                     = $00000001;                                    {     point must only be within sprite's bounding box }
 
7204
        spriteHitTestImage                      = $00000002;                                    {   point must be within the shape of the sprite's image }
 
7205
        spriteHitTestInvisibleSprites = $00000004;                                      {   invisible sprites may be hit tested }
 
7206
        spriteHitTestIsClick            = $00000008;                                    {   for codecs that want mouse events }
 
7207
        spriteHitTestLocInDisplayCoordinates = $00000010;                       {     set if you want to pass a display coordiate point to SpriteHitTest }
 
7208
        spriteHitTestTreatAllSpritesAsHitTestable = $00000020;          {  set if you want to override each sprites hittestable property as true }
 
7209
 
 
7210
        {        atom types for sprite media    }
 
7211
        kSpriteAtomType                         = $73707274 (* 'sprt' *);
 
7212
        kSpriteImagesContainerAtomType = $696D6374 (* 'imct' *);
 
7213
        kSpriteImageAtomType            = $696D6167 (* 'imag' *);
 
7214
        kSpriteImageDataAtomType        = $696D6461 (* 'imda' *);
 
7215
        kSpriteImageDataRefAtomType     = $696D7265 (* 'imre' *);
 
7216
        kSpriteImageDataRefTypeAtomType = $696D7274 (* 'imrt' *);
 
7217
        kSpriteImageGroupIDAtomType     = $696D6772 (* 'imgr' *);
 
7218
        kSpriteImageRegistrationAtomType = $696D7267 (* 'imrg' *);
 
7219
        kSpriteImageDefaultImageIndexAtomType = $64656669 (* 'defi' *);
 
7220
        kSpriteSharedDataAtomType       = $64666C74 (* 'dflt' *);
 
7221
        kSpriteNameAtomType                     = $6E616D65 (* 'name' *);
 
7222
        kSpriteImageNameAtomType        = $6E616D65 (* 'name' *);
 
7223
        kSpriteUsesImageIDsAtomType     = $75736573 (* 'uses' *);                                               {  leaf data is an array of QTAtomID's, one per image used }
 
7224
        kSpriteBehaviorsAtomType        = $62656861 (* 'beha' *);
 
7225
        kSpriteImageBehaviorAtomType = $696D6167 (* 'imag' *);
 
7226
        kSpriteCursorBehaviorAtomType = $63727372 (* 'crsr' *);
 
7227
        kSpriteStatusStringsBehaviorAtomType = $73737472 (* 'sstr' *);
 
7228
        kSpriteVariablesContainerAtomType = $76617273 (* 'vars' *);
 
7229
        kSpriteStringVariableAtomType = $73747276 (* 'strv' *);
 
7230
        kSpriteFloatingPointVariableAtomType = $666C6F76 (* 'flov' *);
 
7231
 
 
7232
 
 
7233
type
 
7234
        QTRuntimeSpriteDescStructPtr = ^QTRuntimeSpriteDescStruct;
 
7235
        QTRuntimeSpriteDescStruct = record
 
7236
                version:                                SInt32;                                                         {  set to zero }
 
7237
                spriteID:                               QTAtomID;
 
7238
                imageIndex:                             SInt16;
 
7239
                matrix:                                 MatrixRecord;
 
7240
                visible:                                SInt16;
 
7241
                layer:                                  SInt16;
 
7242
                graphicsMode:                   ModifierTrackGraphicsModeRecord;
 
7243
                actionHandlingSpriteID: QTAtomID;
 
7244
        end;
 
7245
 
 
7246
        QTRuntimeSpriteDescPtr                          = ^QTRuntimeSpriteDescStruct;
 
7247
        {
 
7248
           when filling in QTSpriteButtonBehaviorStruct values -1 may be used to indicate that
 
7249
           the state transition does not change the property
 
7250
        }
 
7251
        QTSpriteButtonBehaviorStructPtr = ^QTSpriteButtonBehaviorStruct;
 
7252
        QTSpriteButtonBehaviorStruct = record
 
7253
                notOverNotPressedStateID: QTAtomID;
 
7254
                overNotPressedStateID:  QTAtomID;
 
7255
                overPressedStateID:             QTAtomID;
 
7256
                notOverPressedStateID:  QTAtomID;
 
7257
        end;
 
7258
 
 
7259
        QTSpriteButtonBehaviorPtr                       = ^QTSpriteButtonBehaviorStruct;
 
7260
        {
 
7261
         *  SpriteMediaSetProperty()
 
7262
         *  
 
7263
         *  Availability:
 
7264
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7265
         *    CarbonLib:        in CarbonLib 1.0 and later
 
7266
         *    Mac OS X:         in version 10.0 and later
 
7267
         *    Windows:          in qtmlClient.lib 3.0 and later
 
7268
                }
 
7269
function SpriteMediaSetProperty(mh: MediaHandler; spriteIndex: SInt16; propertyType: SInt32; propertyValue: UnivPtr): ComponentResult; external name '_SpriteMediaSetProperty';
 
7270
{
 
7271
 *  SpriteMediaGetProperty()
 
7272
 *  
 
7273
 *  Availability:
 
7274
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7275
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7276
 *    Mac OS X:         in version 10.0 and later
 
7277
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7278
 }
 
7279
function SpriteMediaGetProperty(mh: MediaHandler; spriteIndex: SInt16; propertyType: SInt32; propertyValue: UnivPtr): ComponentResult; external name '_SpriteMediaGetProperty';
 
7280
{
 
7281
 *  SpriteMediaHitTestSprites()
 
7282
 *  
 
7283
 *  Availability:
 
7284
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7285
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7286
 *    Mac OS X:         in version 10.0 and later
 
7287
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7288
 }
 
7289
function SpriteMediaHitTestSprites(mh: MediaHandler; flags: SInt32; loc: Point; var spriteHitIndex: SInt16): ComponentResult; external name '_SpriteMediaHitTestSprites';
 
7290
{
 
7291
 *  SpriteMediaCountSprites()
 
7292
 *  
 
7293
 *  Availability:
 
7294
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7295
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7296
 *    Mac OS X:         in version 10.0 and later
 
7297
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7298
 }
 
7299
function SpriteMediaCountSprites(mh: MediaHandler; var numSprites: SInt16): ComponentResult; external name '_SpriteMediaCountSprites';
 
7300
{
 
7301
 *  SpriteMediaCountImages()
 
7302
 *  
 
7303
 *  Availability:
 
7304
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7305
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7306
 *    Mac OS X:         in version 10.0 and later
 
7307
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7308
 }
 
7309
function SpriteMediaCountImages(mh: MediaHandler; var numImages: SInt16): ComponentResult; external name '_SpriteMediaCountImages';
 
7310
{
 
7311
 *  SpriteMediaGetIndImageDescription()
 
7312
 *  
 
7313
 *  Availability:
 
7314
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7315
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7316
 *    Mac OS X:         in version 10.0 and later
 
7317
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7318
 }
 
7319
function SpriteMediaGetIndImageDescription(mh: MediaHandler; imageIndex: SInt16; imageDescription: ImageDescriptionHandle): ComponentResult; external name '_SpriteMediaGetIndImageDescription';
 
7320
{
 
7321
 *  SpriteMediaGetDisplayedSampleNumber()
 
7322
 *  
 
7323
 *  Availability:
 
7324
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7325
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7326
 *    Mac OS X:         in version 10.0 and later
 
7327
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7328
 }
 
7329
function SpriteMediaGetDisplayedSampleNumber(mh: MediaHandler; var sampleNum: SInt32): ComponentResult; external name '_SpriteMediaGetDisplayedSampleNumber';
 
7330
{
 
7331
 *  SpriteMediaGetSpriteName()
 
7332
 *  
 
7333
 *  Availability:
 
7334
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7335
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7336
 *    Mac OS X:         in version 10.0 and later
 
7337
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7338
 }
 
7339
function SpriteMediaGetSpriteName(mh: MediaHandler; spriteID: QTAtomID; var spriteName: Str255): ComponentResult; external name '_SpriteMediaGetSpriteName';
 
7340
{
 
7341
 *  SpriteMediaGetImageName()
 
7342
 *  
 
7343
 *  Availability:
 
7344
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7345
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7346
 *    Mac OS X:         in version 10.0 and later
 
7347
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7348
 }
 
7349
function SpriteMediaGetImageName(mh: MediaHandler; imageIndex: SInt16; var imageName: Str255): ComponentResult; external name '_SpriteMediaGetImageName';
 
7350
{
 
7351
 *  SpriteMediaSetSpriteProperty()
 
7352
 *  
 
7353
 *  Availability:
 
7354
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7355
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7356
 *    Mac OS X:         in version 10.0 and later
 
7357
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7358
 }
 
7359
function SpriteMediaSetSpriteProperty(mh: MediaHandler; spriteID: QTAtomID; propertyType: SInt32; propertyValue: UnivPtr): ComponentResult; external name '_SpriteMediaSetSpriteProperty';
 
7360
{
 
7361
 *  SpriteMediaGetSpriteProperty()
 
7362
 *  
 
7363
 *  Availability:
 
7364
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7365
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7366
 *    Mac OS X:         in version 10.0 and later
 
7367
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7368
 }
 
7369
function SpriteMediaGetSpriteProperty(mh: MediaHandler; spriteID: QTAtomID; propertyType: SInt32; propertyValue: UnivPtr): ComponentResult; external name '_SpriteMediaGetSpriteProperty';
 
7370
{
 
7371
 *  SpriteMediaHitTestAllSprites()
 
7372
 *  
 
7373
 *  Availability:
 
7374
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7375
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7376
 *    Mac OS X:         in version 10.0 and later
 
7377
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7378
 }
 
7379
function SpriteMediaHitTestAllSprites(mh: MediaHandler; flags: SInt32; loc: Point; var spriteHitID: QTAtomID): ComponentResult; external name '_SpriteMediaHitTestAllSprites';
 
7380
{
 
7381
 *  SpriteMediaHitTestOneSprite()
 
7382
 *  
 
7383
 *  Availability:
 
7384
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7385
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7386
 *    Mac OS X:         in version 10.0 and later
 
7387
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7388
 }
 
7389
function SpriteMediaHitTestOneSprite(mh: MediaHandler; spriteID: QTAtomID; flags: SInt32; loc: Point; var wasHit: boolean): ComponentResult; external name '_SpriteMediaHitTestOneSprite';
 
7390
{
 
7391
 *  SpriteMediaSpriteIndexToID()
 
7392
 *  
 
7393
 *  Availability:
 
7394
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7395
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7396
 *    Mac OS X:         in version 10.0 and later
 
7397
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7398
 }
 
7399
function SpriteMediaSpriteIndexToID(mh: MediaHandler; spriteIndex: SInt16; var spriteID: QTAtomID): ComponentResult; external name '_SpriteMediaSpriteIndexToID';
 
7400
{
 
7401
 *  SpriteMediaSpriteIDToIndex()
 
7402
 *  
 
7403
 *  Availability:
 
7404
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7405
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7406
 *    Mac OS X:         in version 10.0 and later
 
7407
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7408
 }
 
7409
function SpriteMediaSpriteIDToIndex(mh: MediaHandler; spriteID: QTAtomID; var spriteIndex: SInt16): ComponentResult; external name '_SpriteMediaSpriteIDToIndex';
 
7410
{
 
7411
 *  SpriteMediaGetSpriteActionsForQTEvent()
 
7412
 *  
 
7413
 *  Availability:
 
7414
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7415
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7416
 *    Mac OS X:         in version 10.0 and later
 
7417
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7418
 }
 
7419
function SpriteMediaGetSpriteActionsForQTEvent(mh: MediaHandler; event: QTEventRecordPtr; spriteID: QTAtomID; var container: QTAtomContainer; var atom: QTAtom): ComponentResult; external name '_SpriteMediaGetSpriteActionsForQTEvent';
 
7420
{
 
7421
 *  SpriteMediaSetActionVariable()
 
7422
 *  
 
7423
 *  Availability:
 
7424
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7425
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7426
 *    Mac OS X:         in version 10.0 and later
 
7427
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7428
 }
 
7429
function SpriteMediaSetActionVariable(mh: MediaHandler; variableID: QTAtomID; value: Float32Ptr): ComponentResult; external name '_SpriteMediaSetActionVariable';
 
7430
{
 
7431
 *  SpriteMediaGetActionVariable()
 
7432
 *  
 
7433
 *  Availability:
 
7434
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7435
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7436
 *    Mac OS X:         in version 10.0 and later
 
7437
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7438
 }
 
7439
function SpriteMediaGetActionVariable(mh: MediaHandler; variableID: QTAtomID; var value: Float32): ComponentResult; external name '_SpriteMediaGetActionVariable';
 
7440
{
 
7441
 *  SpriteMediaGetIndImageProperty()
 
7442
 *  
 
7443
 *  Availability:
 
7444
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
7445
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7446
 *    Mac OS X:         in version 10.0 and later
 
7447
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7448
 }
 
7449
function SpriteMediaGetIndImageProperty(mh: MediaHandler; imageIndex: SInt16; imagePropertyType: SInt32; imagePropertyValue: UnivPtr): ComponentResult; external name '_SpriteMediaGetIndImageProperty';
 
7450
{
 
7451
 *  SpriteMediaNewSprite()
 
7452
 *  
 
7453
 *  Availability:
 
7454
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7455
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7456
 *    Mac OS X:         in version 10.0 and later
 
7457
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7458
 }
 
7459
function SpriteMediaNewSprite(mh: MediaHandler; newSpriteDesc: QTRuntimeSpriteDescPtr): ComponentResult; external name '_SpriteMediaNewSprite';
 
7460
{
 
7461
 *  SpriteMediaDisposeSprite()
 
7462
 *  
 
7463
 *  Availability:
 
7464
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7465
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7466
 *    Mac OS X:         in version 10.0 and later
 
7467
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7468
 }
 
7469
function SpriteMediaDisposeSprite(mh: MediaHandler; spriteID: QTAtomID): ComponentResult; external name '_SpriteMediaDisposeSprite';
 
7470
{
 
7471
 *  SpriteMediaSetActionVariableToString()
 
7472
 *  
 
7473
 *  Availability:
 
7474
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7475
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7476
 *    Mac OS X:         in version 10.0 and later
 
7477
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7478
 }
 
7479
function SpriteMediaSetActionVariableToString(mh: MediaHandler; variableID: QTAtomID; theCString: Ptr): ComponentResult; external name '_SpriteMediaSetActionVariableToString';
 
7480
{
 
7481
 *  SpriteMediaGetActionVariableAsString()
 
7482
 *  
 
7483
 *  Availability:
 
7484
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7485
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7486
 *    Mac OS X:         in version 10.0 and later
 
7487
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7488
 }
 
7489
function SpriteMediaGetActionVariableAsString(mh: MediaHandler; variableID: QTAtomID; var theCString: Handle): ComponentResult; external name '_SpriteMediaGetActionVariableAsString';
 
7490
{
 
7491
 *  SpriteMediaNewImage()
 
7492
 *  
 
7493
 *  Availability:
 
7494
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
7495
 *    CarbonLib:        in CarbonLib 1.6 and later
 
7496
 *    Mac OS X:         in version 10.2 and later
 
7497
 *    Windows:          in qtmlClient.lib 6.0 and later
 
7498
 }
 
7499
function SpriteMediaNewImage(mh: MediaHandler; dataRef: Handle; dataRefType: OSType; desiredID: QTAtomID): ComponentResult; external name '_SpriteMediaNewImage';
 
7500
{
 
7501
 *  SpriteMediaDisposeImage()
 
7502
 *  
 
7503
 *  Availability:
 
7504
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
7505
 *    CarbonLib:        in CarbonLib 1.6 and later
 
7506
 *    Mac OS X:         in version 10.2 and later
 
7507
 *    Windows:          in qtmlClient.lib 6.0 and later
 
7508
 }
 
7509
function SpriteMediaDisposeImage(mh: MediaHandler; imageIndex: SInt16): ComponentResult; external name '_SpriteMediaDisposeImage';
 
7510
{
 
7511
 *  SpriteMediaImageIndexToID()
 
7512
 *  
 
7513
 *  Availability:
 
7514
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
7515
 *    CarbonLib:        in CarbonLib 1.6 and later
 
7516
 *    Mac OS X:         in version 10.2 and later
 
7517
 *    Windows:          in qtmlClient.lib 6.0 and later
 
7518
 }
 
7519
function SpriteMediaImageIndexToID(mh: MediaHandler; imageIndex: SInt16; var imageID: QTAtomID): ComponentResult; external name '_SpriteMediaImageIndexToID';
 
7520
{
 
7521
 *  SpriteMediaImageIDToIndex()
 
7522
 *  
 
7523
 *  Availability:
 
7524
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
7525
 *    CarbonLib:        in CarbonLib 1.6 and later
 
7526
 *    Mac OS X:         in version 10.2 and later
 
7527
 *    Windows:          in qtmlClient.lib 6.0 and later
 
7528
 }
 
7529
function SpriteMediaImageIDToIndex(mh: MediaHandler; imageID: QTAtomID; var imageIndex: SInt16): ComponentResult; external name '_SpriteMediaImageIDToIndex';
 
7530
{************************
 
7531
* Flash Media routines
 
7532
*************************}
 
7533
 
 
7534
{
 
7535
 *  FlashMediaSetPan()
 
7536
 *  
 
7537
 *  Availability:
 
7538
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7539
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7540
 *    Mac OS X:         in version 10.0 and later
 
7541
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7542
 }
 
7543
function FlashMediaSetPan(mh: MediaHandler; xPercent: SInt16; yPercent: SInt16): ComponentResult; external name '_FlashMediaSetPan';
 
7544
{
 
7545
 *  FlashMediaSetZoom()
 
7546
 *  
 
7547
 *  Availability:
 
7548
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7549
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7550
 *    Mac OS X:         in version 10.0 and later
 
7551
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7552
 }
 
7553
function FlashMediaSetZoom(mh: MediaHandler; factor: SInt16): ComponentResult; external name '_FlashMediaSetZoom';
 
7554
{
 
7555
 *  FlashMediaSetZoomRect()
 
7556
 *  
 
7557
 *  Availability:
 
7558
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7559
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7560
 *    Mac OS X:         in version 10.0 and later
 
7561
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7562
 }
 
7563
function FlashMediaSetZoomRect(mh: MediaHandler; left: SInt32; top: SInt32; right: SInt32; bottom: SInt32): ComponentResult; external name '_FlashMediaSetZoomRect';
 
7564
{
 
7565
 *  FlashMediaGetRefConBounds()
 
7566
 *  
 
7567
 *  Availability:
 
7568
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7569
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7570
 *    Mac OS X:         in version 10.0 and later
 
7571
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7572
 }
 
7573
function FlashMediaGetRefConBounds(mh: MediaHandler; refCon: SInt32; var left: SInt32; var top: SInt32; var right: SInt32; var bottom: SInt32): ComponentResult; external name '_FlashMediaGetRefConBounds';
 
7574
{
 
7575
 *  FlashMediaGetRefConID()
 
7576
 *  
 
7577
 *  Availability:
 
7578
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7579
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7580
 *    Mac OS X:         in version 10.0 and later
 
7581
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7582
 }
 
7583
function FlashMediaGetRefConID(mh: MediaHandler; refCon: SInt32; var refConID: SInt32): ComponentResult; external name '_FlashMediaGetRefConID';
 
7584
{
 
7585
 *  FlashMediaIDToRefCon()
 
7586
 *  
 
7587
 *  Availability:
 
7588
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7589
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7590
 *    Mac OS X:         in version 10.0 and later
 
7591
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7592
 }
 
7593
function FlashMediaIDToRefCon(mh: MediaHandler; refConID: SInt32; var refCon: SInt32): ComponentResult; external name '_FlashMediaIDToRefCon';
 
7594
{
 
7595
 *  FlashMediaGetDisplayedFrameNumber()
 
7596
 *  
 
7597
 *  Availability:
 
7598
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7599
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7600
 *    Mac OS X:         in version 10.0 and later
 
7601
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7602
 }
 
7603
function FlashMediaGetDisplayedFrameNumber(mh: MediaHandler; var flashFrameNumber: SInt32): ComponentResult; external name '_FlashMediaGetDisplayedFrameNumber';
 
7604
{
 
7605
 *  FlashMediaFrameNumberToMovieTime()
 
7606
 *  
 
7607
 *  Availability:
 
7608
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7609
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7610
 *    Mac OS X:         in version 10.0 and later
 
7611
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7612
 }
 
7613
function FlashMediaFrameNumberToMovieTime(mh: MediaHandler; flashFrameNumber: SInt32; var movieTime: TimeValue): ComponentResult; external name '_FlashMediaFrameNumberToMovieTime';
 
7614
{
 
7615
 *  FlashMediaFrameLabelToMovieTime()
 
7616
 *  
 
7617
 *  Availability:
 
7618
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7619
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7620
 *    Mac OS X:         in version 10.0 and later
 
7621
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7622
 }
 
7623
function FlashMediaFrameLabelToMovieTime(mh: MediaHandler; theLabel: Ptr; var movieTime: TimeValue): ComponentResult; external name '_FlashMediaFrameLabelToMovieTime';
 
7624
{
 
7625
 *  FlashMediaGetFlashVariable()
 
7626
 *  
 
7627
 *  Availability:
 
7628
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
7629
 *    CarbonLib:        in CarbonLib 1.3 and later
 
7630
 *    Mac OS X:         in version 10.0 and later
 
7631
 *    Windows:          in qtmlClient.lib 5.0 and later
 
7632
 }
 
7633
function FlashMediaGetFlashVariable(mh: MediaHandler; path: CStringPtr; name: CStringPtr; var theVariableCStringOut: Handle): ComponentResult; external name '_FlashMediaGetFlashVariable';
 
7634
{
 
7635
 *  FlashMediaSetFlashVariable()
 
7636
 *  
 
7637
 *  Availability:
 
7638
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
7639
 *    CarbonLib:        in CarbonLib 1.3 and later
 
7640
 *    Mac OS X:         in version 10.0 and later
 
7641
 *    Windows:          in qtmlClient.lib 5.0 and later
 
7642
 }
 
7643
function FlashMediaSetFlashVariable(mh: MediaHandler; path: CStringPtr; name: CStringPtr; value: CStringPtr; updateFocus: boolean): ComponentResult; external name '_FlashMediaSetFlashVariable';
 
7644
{
 
7645
 *  FlashMediaDoButtonActions()
 
7646
 *  
 
7647
 *  Availability:
 
7648
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
7649
 *    CarbonLib:        in CarbonLib 1.3 and later
 
7650
 *    Mac OS X:         in version 10.0 and later
 
7651
 *    Windows:          in qtmlClient.lib 5.0 and later
 
7652
 }
 
7653
function FlashMediaDoButtonActions(mh: MediaHandler; path: CStringPtr; buttonID: SInt32; transition: SInt32): ComponentResult; external name '_FlashMediaDoButtonActions';
 
7654
{
 
7655
 *  FlashMediaGetSupportedSwfVersion()
 
7656
 *  
 
7657
 *  Availability:
 
7658
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
7659
 *    CarbonLib:        in CarbonLib 1.3 and later
 
7660
 *    Mac OS X:         in version 10.0 and later
 
7661
 *    Windows:          in qtmlClient.lib 5.0 and later
 
7662
 }
 
7663
function FlashMediaGetSupportedSwfVersion(mh: MediaHandler; var swfVersion: UInt8): ComponentResult; external name '_FlashMediaGetSupportedSwfVersion';
 
7664
{  sample format atoms }
 
7665
 
 
7666
const
 
7667
        kMovieMediaDataReference        = $6D6D6472 (* 'mmdr' *);                                               {  data reference }
 
7668
        kMovieMediaDefaultDataReferenceID = $64647269 (* 'ddri' *);                                     {  atom id }
 
7669
        kMovieMediaSlaveTime            = $736C7469 (* 'slti' *);                                               {  boolean }
 
7670
        kMovieMediaSlaveAudio           = $736C6175 (* 'slau' *);                                               {  boolean }
 
7671
        kMovieMediaSlaveGraphicsMode = $736C6772 (* 'slgr' *);                                          {  boolean }
 
7672
        kMovieMediaAutoPlay                     = $706C6179 (* 'play' *);                                               {  boolean }
 
7673
        kMovieMediaLoop                         = $6C6F6F70 (* 'loop' *);                                               {  UInt8 (0=no loop, 1=loop, 2=palindrome loop) }
 
7674
        kMovieMediaUseMIMEType          = $6D696D65 (* 'mime' *);                                               {  string indicating the MIME type to use for the dataref (usually not required) }
 
7675
        kMovieMediaTitle                        = $7469746C (* 'titl' *);                                               {  string of the media's title (tooltips) }
 
7676
        kMovieMediaAltText                      = $616C7474 (* 'altt' *);                                               {  string of alternate text if media isn't loaded }
 
7677
        kMovieMediaClipBegin            = $636C7062 (* 'clpb' *);                                               {  MovieMediaTimeRecord of start time of embedded media }
 
7678
        kMovieMediaClipDuration         = $636C7064 (* 'clpd' *);                                               {  MovieMediaTimeRecord of duration of embedded media }
 
7679
        kMovieMediaRegionAtom           = $72656769 (* 'regi' *);                                               {  contains subatoms that describe layout }
 
7680
        kMovieMediaSlaveTrackDuration = $736C7472 (* 'sltr' *);                                         {  Boolean indicating that media handler should adjust track and media based on actual embedded movie duration }
 
7681
        kMovieMediaEnableFrameStepping = $656E6673 (* 'enfs' *);                                        {  boolean. if true stepping on external movie steps frames within embedded movie. }
 
7682
        kMovieMediaBackgroundColor      = $626B636C (* 'bkcl' *);                                               {  RGBColor. }
 
7683
        kMovieMediaPrerollTime          = $70726572 (* 'prer' *);                                               {  SInt32 indicating preroll time }
 
7684
 
 
7685
        {  fit types }
 
7686
        kMovieMediaFitNone                      = 0;
 
7687
        kMovieMediaFitScroll            = $7363726F (* 'scro' *);
 
7688
        kMovieMediaFitClipIfNecessary = $68696464 (* 'hidd' *);
 
7689
        kMovieMediaFitFill                      = $66696C6C (* 'fill' *);
 
7690
        kMovieMediaFitMeet                      = $6D656574 (* 'meet' *);
 
7691
        kMovieMediaFitSlice                     = $736C6963 (* 'slic' *);
 
7692
 
 
7693
        {  sub atoms for region atom }
 
7694
        kMovieMediaSpatialAdjustment = $66697420 (* 'fit ' *);                                          {  OSType from kMovieMediaFit* }
 
7695
        kMovieMediaRectangleAtom        = $72656374 (* 'rect' *);
 
7696
        kMovieMediaTop                          = $746F7020 (* 'top ' *);
 
7697
        kMovieMediaLeft                         = $6C656674 (* 'left' *);
 
7698
        kMovieMediaWidth                        = $77642020 (* 'wd  ' *);
 
7699
        kMovieMediaHeight                       = $68742020 (* 'ht  ' *);
 
7700
 
 
7701
        {  contained movie properties }
 
7702
        kMoviePropertyDuration          = $64757261 (* 'dura' *);                                               {  TimeValue * }
 
7703
        kMoviePropertyTimeScale         = $74696D73 (* 'tims' *);                                               {  TimeValue * }
 
7704
        kMoviePropertyTime                      = $74696D76 (* 'timv' *);                                               {  TimeValue * }
 
7705
        kMoviePropertyNaturalBounds     = $6E617462 (* 'natb' *);                                               {  Rect * }
 
7706
        kMoviePropertyMatrix            = $6D747278 (* 'mtrx' *);                                               {  Matrix * }
 
7707
        kMoviePropertyTrackList         = $746C7374 (* 'tlst' *);                                               {  long *** }
 
7708
 
 
7709
 
 
7710
        kTrackPropertyMediaType         = $6D747970 (* 'mtyp' *);                                               {  OSType }
 
7711
        kTrackPropertyInstantiation     = $696E7374 (* 'inst' *);                                               {  MovieMediaInstantiationInfoRecord }
 
7712
 
 
7713
 
 
7714
type
 
7715
        MovieMediaTimeRecordPtr = ^MovieMediaTimeRecord;
 
7716
        MovieMediaTimeRecord = record
 
7717
                time:                                   wide;
 
7718
                scale:                                  TimeScale;
 
7719
        end;
 
7720
 
 
7721
        MovieMediaInstantiationInfoRecordPtr = ^MovieMediaInstantiationInfoRecord;
 
7722
        MovieMediaInstantiationInfoRecord = record
 
7723
                immediately:                    boolean;
 
7724
                pad:                                    boolean;
 
7725
                bitRate:                                SInt32;
 
7726
        end;
 
7727
 
 
7728
        {       ************************
 
7729
        * Movie Media routines
 
7730
        *************************       }
 
7731
 
 
7732
 
 
7733
        {
 
7734
         *  MovieMediaGetChildDoMCActionCallback()
 
7735
         *  
 
7736
         *  Availability:
 
7737
         *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7738
         *    CarbonLib:        in CarbonLib 1.1 and later
 
7739
         *    Mac OS X:         in version 10.0 and later
 
7740
         *    Windows:          in qtmlClient.lib 4.1 and later
 
7741
                }
 
7742
function MovieMediaGetChildDoMCActionCallback(mh: MediaHandler; var doMCActionCallbackProc: DoMCActionUPP; var refcon: SInt32): ComponentResult; external name '_MovieMediaGetChildDoMCActionCallback';
 
7743
{
 
7744
 *  MovieMediaGetDoMCActionCallback()
 
7745
 *  
 
7746
 *  Availability:
 
7747
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7748
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7749
 *    Mac OS X:         in version 10.0 and later
 
7750
 *    Windows:          in qtmlClient.lib 4.1 and later
 
7751
 }
 
7752
function MovieMediaGetDoMCActionCallback(mh: MediaHandler; var doMCActionCallbackProc: DoMCActionUPP; var refcon: SInt32): ComponentResult; external name '_MovieMediaGetDoMCActionCallback';
 
7753
{
 
7754
 *  MovieMediaGetCurrentMovieProperty()
 
7755
 *  
 
7756
 *  Availability:
 
7757
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7758
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7759
 *    Mac OS X:         in version 10.0 and later
 
7760
 *    Windows:          in qtmlClient.lib 4.1 and later
 
7761
 }
 
7762
function MovieMediaGetCurrentMovieProperty(mh: MediaHandler; whichProperty: OSType; value: UnivPtr): ComponentResult; external name '_MovieMediaGetCurrentMovieProperty';
 
7763
{
 
7764
 *  MovieMediaGetCurrentTrackProperty()
 
7765
 *  
 
7766
 *  Availability:
 
7767
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7768
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7769
 *    Mac OS X:         in version 10.0 and later
 
7770
 *    Windows:          in qtmlClient.lib 4.1 and later
 
7771
 }
 
7772
function MovieMediaGetCurrentTrackProperty(mh: MediaHandler; trackID: SInt32; whichProperty: OSType; value: UnivPtr): ComponentResult; external name '_MovieMediaGetCurrentTrackProperty';
 
7773
{
 
7774
 *  MovieMediaGetChildMovieDataReference()
 
7775
 *  
 
7776
 *  Availability:
 
7777
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7778
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7779
 *    Mac OS X:         in version 10.0 and later
 
7780
 *    Windows:          in qtmlClient.lib 4.1 and later
 
7781
 }
 
7782
function MovieMediaGetChildMovieDataReference(mh: MediaHandler; dataRefID: QTAtomID; dataRefIndex: SInt16; var dataRefType: OSType; var dataRef: Handle; var dataRefIDOut: QTAtomID; var dataRefIndexOut: SInt16): ComponentResult; external name '_MovieMediaGetChildMovieDataReference';
 
7783
{
 
7784
 *  MovieMediaSetChildMovieDataReference()
 
7785
 *  
 
7786
 *  Availability:
 
7787
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7788
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7789
 *    Mac OS X:         in version 10.0 and later
 
7790
 *    Windows:          in qtmlClient.lib 4.1 and later
 
7791
 }
 
7792
function MovieMediaSetChildMovieDataReference(mh: MediaHandler; dataRefID: QTAtomID; dataRefType: OSType; dataRef: Handle): ComponentResult; external name '_MovieMediaSetChildMovieDataReference';
 
7793
{
 
7794
 *  MovieMediaLoadChildMovieFromDataReference()
 
7795
 *  
 
7796
 *  Availability:
 
7797
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7798
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7799
 *    Mac OS X:         in version 10.0 and later
 
7800
 *    Windows:          in qtmlClient.lib 4.1 and later
 
7801
 }
 
7802
function MovieMediaLoadChildMovieFromDataReference(mh: MediaHandler; dataRefID: QTAtomID): ComponentResult; external name '_MovieMediaLoadChildMovieFromDataReference';
 
7803
{************************
 
7804
* 3D Media routines
 
7805
*************************}
 
7806
{
 
7807
 *  Media3DGetNamedObjectList()
 
7808
 *  
 
7809
 *  Availability:
 
7810
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7811
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7812
 *    Mac OS X:         in version 10.0 and later
 
7813
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7814
 }
 
7815
function Media3DGetNamedObjectList(mh: MediaHandler; var objectList: QTAtomContainer): ComponentResult; external name '_Media3DGetNamedObjectList';
 
7816
{
 
7817
 *  Media3DGetRendererList()
 
7818
 *  
 
7819
 *  Availability:
 
7820
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
7821
 *    CarbonLib:        in CarbonLib 1.0 and later
 
7822
 *    Mac OS X:         in version 10.0 and later
 
7823
 *    Windows:          in qtmlClient.lib 3.0 and later
 
7824
 }
 
7825
function Media3DGetRendererList(mh: MediaHandler; var rendererList: QTAtomContainer): ComponentResult; external name '_Media3DGetRendererList';
 
7826
{
 
7827
 *  Media3DGetCurrentGroup()
 
7828
 *  
 
7829
 *  Availability:
 
7830
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7831
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7832
 *    Mac OS X:         in version 10.0 and later
 
7833
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7834
 }
 
7835
function Media3DGetCurrentGroup(mh: MediaHandler; group: UnivPtr): ComponentResult; external name '_Media3DGetCurrentGroup';
 
7836
{
 
7837
 *  Media3DTranslateNamedObjectTo()
 
7838
 *  
 
7839
 *  Availability:
 
7840
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7841
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7842
 *    Mac OS X:         in version 10.0 and later
 
7843
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7844
 }
 
7845
function Media3DTranslateNamedObjectTo(mh: MediaHandler; objectName: CStringPtr; x: Fixed; y: Fixed; z: Fixed): ComponentResult; external name '_Media3DTranslateNamedObjectTo';
 
7846
{
 
7847
 *  Media3DScaleNamedObjectTo()
 
7848
 *  
 
7849
 *  Availability:
 
7850
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7851
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7852
 *    Mac OS X:         in version 10.0 and later
 
7853
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7854
 }
 
7855
function Media3DScaleNamedObjectTo(mh: MediaHandler; objectName: CStringPtr; xScale: Fixed; yScale: Fixed; zScale: Fixed): ComponentResult; external name '_Media3DScaleNamedObjectTo';
 
7856
{
 
7857
 *  Media3DRotateNamedObjectTo()
 
7858
 *  
 
7859
 *  Availability:
 
7860
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7861
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7862
 *    Mac OS X:         in version 10.0 and later
 
7863
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7864
 }
 
7865
function Media3DRotateNamedObjectTo(mh: MediaHandler; objectName: CStringPtr; xDegrees: Fixed; yDegrees: Fixed; zDegrees: Fixed): ComponentResult; external name '_Media3DRotateNamedObjectTo';
 
7866
{
 
7867
 *  Media3DSetCameraData()
 
7868
 *  
 
7869
 *  Availability:
 
7870
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7871
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7872
 *    Mac OS X:         in version 10.0 and later
 
7873
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7874
 }
 
7875
function Media3DSetCameraData(mh: MediaHandler; cameraData: UnivPtr): ComponentResult; external name '_Media3DSetCameraData';
 
7876
{
 
7877
 *  Media3DGetCameraData()
 
7878
 *  
 
7879
 *  Availability:
 
7880
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7881
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7882
 *    Mac OS X:         in version 10.0 and later
 
7883
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7884
 }
 
7885
function Media3DGetCameraData(mh: MediaHandler; cameraData: UnivPtr): ComponentResult; external name '_Media3DGetCameraData';
 
7886
{
 
7887
 *  Media3DSetCameraAngleAspect()
 
7888
 *  
 
7889
 *  Availability:
 
7890
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7891
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7892
 *    Mac OS X:         in version 10.0 and later
 
7893
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7894
 }
 
7895
function Media3DSetCameraAngleAspect(mh: MediaHandler; fov: QTFloatSingle; aspectRatioXToY: QTFloatSingle): ComponentResult; external name '_Media3DSetCameraAngleAspect';
 
7896
{
 
7897
 *  Media3DGetCameraAngleAspect()
 
7898
 *  
 
7899
 *  Availability:
 
7900
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7901
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7902
 *    Mac OS X:         in version 10.0 and later
 
7903
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7904
 }
 
7905
function Media3DGetCameraAngleAspect(mh: MediaHandler; var fov: QTFloatSingle; var aspectRatioXToY: QTFloatSingle): ComponentResult; external name '_Media3DGetCameraAngleAspect';
 
7906
{
 
7907
 *  Media3DSetCameraRange()
 
7908
 *  
 
7909
 *  Availability:
 
7910
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7911
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7912
 *    Mac OS X:         in version 10.0 and later
 
7913
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7914
 }
 
7915
function Media3DSetCameraRange(mh: MediaHandler; tQ3CameraRange: UnivPtr): ComponentResult; external name '_Media3DSetCameraRange';
 
7916
{
 
7917
 *  Media3DGetCameraRange()
 
7918
 *  
 
7919
 *  Availability:
 
7920
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
7921
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
7922
 *    Mac OS X:         in version 10.0 and later
 
7923
 *    Windows:          in qtmlClient.lib 4.0 and later
 
7924
 }
 
7925
function Media3DGetCameraRange(mh: MediaHandler; tQ3CameraRange: UnivPtr): ComponentResult; external name '_Media3DGetCameraRange';
 
7926
{
 
7927
 *  Media3DGetViewObject()
 
7928
 *  
 
7929
 *  Availability:
 
7930
 *    Non-Carbon CFM:   in QuickTimeLib 4.1 and later
 
7931
 *    CarbonLib:        in CarbonLib 1.1 and later
 
7932
 *    Mac OS X:         in version 10.0 and later
 
7933
 *    Windows:          in qtmlClient.lib 4.1 and later
 
7934
 }
 
7935
function Media3DGetViewObject(mh: MediaHandler; tq3viewObject: UnivPtr): ComponentResult; external name '_Media3DGetViewObject';
 
7936
{***************************************
 
7937
*                                       *
 
7938
*   M O V I E   C O N T R O L L E R     *
 
7939
*                                       *
 
7940
***************************************}
 
7941
 
 
7942
const
 
7943
        MovieControllerComponentType = $706C6179 (* 'play' *);
 
7944
 
 
7945
 
 
7946
        kMovieControllerQTVRFlag        = $01;
 
7947
        kMovieControllerDontDisplayToUser = $02;
 
7948
 
 
7949
 
 
7950
type
 
7951
        MovieController                                         = ComponentInstance;
 
7952
        MovieControllerPtr                                      = ^MovieController;
 
7953
 
 
7954
const
 
7955
        mcActionIdle                            = 1;                                                    {  no param }
 
7956
        mcActionDraw                            = 2;                                                    {  param is WindowRef }
 
7957
        mcActionActivate                        = 3;                                                    {  no param }
 
7958
        mcActionDeactivate                      = 4;                                                    {  no param }
 
7959
        mcActionMouseDown                       = 5;                                                    {  param is pointer to EventRecord }
 
7960
        mcActionKey                                     = 6;                                                    {  param is pointer to EventRecord }
 
7961
        mcActionPlay                            = 8;                                                    {  param is Fixed, play rate }
 
7962
        mcActionGoToTime                        = 12;                                                   {  param is TimeRecord }
 
7963
        mcActionSetVolume                       = 14;                                                   {  param is a short }
 
7964
        mcActionGetVolume                       = 15;                                                   {  param is pointer to a short }
 
7965
        mcActionStep                            = 18;                                                   {  param is number of steps (short) }
 
7966
        mcActionSetLooping                      = 21;                                                   {  param is Boolean }
 
7967
        mcActionGetLooping                      = 22;                                                   {  param is pointer to a Boolean }
 
7968
        mcActionSetLoopIsPalindrome     = 23;                                                   {  param is Boolean }
 
7969
        mcActionGetLoopIsPalindrome     = 24;                                                   {  param is pointer to a Boolean }
 
7970
        mcActionSetGrowBoxBounds        = 25;                                                   {  param is a Rect }
 
7971
        mcActionControllerSizeChanged = 26;                                                     {  no param }
 
7972
        mcActionSetSelectionBegin       = 29;                                                   {  param is TimeRecord }
 
7973
        mcActionSetSelectionDuration = 30;                                                      {  param is TimeRecord, action only taken on set-duration }
 
7974
        mcActionSetKeysEnabled          = 32;                                                   {  param is Boolean }
 
7975
        mcActionGetKeysEnabled          = 33;                                                   {  param is pointer to Boolean }
 
7976
        mcActionSetPlaySelection        = 34;                                                   {  param is Boolean }
 
7977
        mcActionGetPlaySelection        = 35;                                                   {  param is pointer to Boolean }
 
7978
        mcActionSetUseBadge                     = 36;                                                   {  param is Boolean }
 
7979
        mcActionGetUseBadge                     = 37;                                                   {  param is pointer to Boolean }
 
7980
        mcActionSetFlags                        = 38;                                                   {  param is long of flags }
 
7981
        mcActionGetFlags                        = 39;                                                   {  param is pointer to a long of flags }
 
7982
        mcActionSetPlayEveryFrame       = 40;                                                   {  param is Boolean }
 
7983
        mcActionGetPlayEveryFrame       = 41;                                                   {  param is pointer to Boolean }
 
7984
        mcActionGetPlayRate                     = 42;                                                   {  param is pointer to Fixed }
 
7985
        mcActionShowBalloon                     = 43;                                                   {  param is a pointer to a boolean. set to false to stop balloon }
 
7986
        mcActionBadgeClick                      = 44;                                                   {  param is pointer to Boolean. set to false to ignore click }
 
7987
        mcActionMovieClick                      = 45;                                                   {  param is pointer to event record. change "what" to nullEvt to kill click }
 
7988
        mcActionSuspend                         = 46;                                                   {  no param }
 
7989
        mcActionResume                          = 47;                                                   {  no param }
 
7990
        mcActionSetControllerKeysEnabled = 48;                                          {  param is Boolean }
 
7991
        mcActionGetTimeSliderRect       = 49;                                                   {  param is pointer to rect }
 
7992
        mcActionMovieEdited                     = 50;                                                   {  no param }
 
7993
        mcActionGetDragEnabled          = 51;                                                   {  param is pointer to Boolean }
 
7994
        mcActionSetDragEnabled          = 52;                                                   {  param is Boolean }
 
7995
        mcActionGetSelectionBegin       = 53;                                                   {  param is TimeRecord }
 
7996
        mcActionGetSelectionDuration = 54;                                                      {  param is TimeRecord }
 
7997
        mcActionPrerollAndPlay          = 55;                                                   {  param is Fixed, play rate }
 
7998
        mcActionGetCursorSettingEnabled = 56;                                           {  param is pointer to Boolean }
 
7999
        mcActionSetCursorSettingEnabled = 57;                                           {  param is Boolean }
 
8000
        mcActionSetColorTable           = 58;                                                   {  param is CTabHandle }
 
8001
        mcActionLinkToURL                       = 59;                                                   {  param is Handle to URL }
 
8002
        mcActionCustomButtonClick       = 60;                                                   {  param is pointer to EventRecord }
 
8003
        mcActionForceTimeTableUpdate = 61;                                                      {  no param }
 
8004
        mcActionSetControllerTimeLimits = 62;                                           {  param is pointer to 2 time values min/max. do no send this message to controller. used internally only. }
 
8005
        mcActionExecuteAllActionsForQTEvent = 63;                                       {  param is ResolvedQTEventSpecPtr }
 
8006
        mcActionExecuteOneActionForQTEvent = 64;                                        {  param is ResolvedQTEventSpecPtr }
 
8007
        mcActionAdjustCursor            = 65;                                                   {  param is pointer to EventRecord (WindowRef is in message parameter) }
 
8008
        mcActionUseTrackForTimeTable = 66;                                                      {  param is pointer to (long trackID; Boolean useIt). do not send this message to controller.  }
 
8009
        mcActionClickAndHoldPoint       = 67;                                                   {  param is point (local coordinates). return true if point has click & hold action (e.g., VR object movie autorotate spot) }
 
8010
        mcActionShowMessageString       = 68;                                                   {  param is a StringPtr }
 
8011
        mcActionShowStatusString        = 69;                                                   {  param is a QTStatusStringPtr }
 
8012
        mcActionGetExternalMovie        = 70;                                                   {  param is a QTGetExternalMoviePtr }
 
8013
        mcActionGetChapterTime          = 71;                                                   {  param is a QTGetChapterTimePtr }
 
8014
        mcActionPerformActionList       = 72;                                                   {  param is a QTAtomSpecPtr }
 
8015
        mcActionEvaluateExpression      = 73;                                                   {  param is a QTEvaluateExpressionPtr }
 
8016
        mcActionFetchParameterAs        = 74;                                                   {  param is a QTFetchParameterAsPtr }
 
8017
        mcActionGetCursorByID           = 75;                                                   {  param is a QTGetCursorByIDPtr }
 
8018
        mcActionGetNextURL                      = 76;                                                   {  param is a Handle to URL }
 
8019
        mcActionMovieChanged            = 77;
 
8020
        mcActionDoScript                        = 78;                                                   {  param is QTDoScriptPtr }
 
8021
        mcActionRestartAtTime           = 79;                                                   {  param is QTResartAtTimePtr }
 
8022
        mcActionGetIndChapter           = 80;                                                   {  param is QTChapterInfoPtr }
 
8023
        mcActionLinkToURLExtended       = 81;                                                   {  param is QTAtomContainer as used by QTParseHREF }
 
8024
        mcActionSetVolumeStep           = 82;                                                   {  param is short containing amount to step volume via arrow keys - default = 64 }
 
8025
        mcActionAutoPlay                        = 83;                                                   {  param is Fixed, play rate }
 
8026
        mcActionPauseToBuffer           = 84;                                                   {  param is Fixed, play rate on restart }
 
8027
        mcActionAppMessageReceived      = 85;                                                   {  param is a long, application message }
 
8028
        mcActionEvaluateExpressionWithType = 89;                                        {  param is a QTEvaluateExpressionWithTypePtr }
 
8029
        mcActionGetMovieName            = 90;                                                   {  param is a p String Handle }
 
8030
        mcActionGetMovieID                      = 91;                                                   {  param is pointer to long }
 
8031
        mcActionGetMovieActive          = 92;                                                   {  param is pointer to Boolean }
 
8032
 
 
8033
 
 
8034
type
 
8035
        mcAction                                                        = SInt16;
 
8036
 
 
8037
const
 
8038
        mcFlagSuppressMovieFrame        = $01;
 
8039
        mcFlagSuppressStepButtons       = $02;
 
8040
        mcFlagSuppressSpeakerButton     = $04;
 
8041
        mcFlagsUseWindowPalette         = $08;
 
8042
        mcFlagsDontInvalidate           = $10;
 
8043
        mcFlagsUseCustomButton          = $20;
 
8044
 
 
8045
 
 
8046
        mcPositionDontInvalidate        = $20;
 
8047
 
 
8048
 
 
8049
type
 
8050
        mcFlags                                                         = UInt32;
 
8051
 
 
8052
const
 
8053
        kMCIEEnabledButtonPicture       = 1;
 
8054
        kMCIEDisabledButtonPicture      = 2;
 
8055
        kMCIEDepressedButtonPicture     = 3;
 
8056
        kMCIEEnabledSizeBoxPicture      = 4;
 
8057
        kMCIEDisabledSizeBoxPicture     = 5;
 
8058
        kMCIEEnabledUnavailableButtonPicture = 6;
 
8059
        kMCIEDisabledUnavailableButtonPicture = 7;
 
8060
        kMCIESoundSlider                        = 128;
 
8061
        kMCIESoundThumb                         = 129;
 
8062
        kMCIEColorTable                         = 256;
 
8063
        kMCIEIsFlatAppearance           = 257;
 
8064
        kMCIEDoButtonIconsDropOnDepress = 258;
 
8065
 
 
8066
 
 
8067
type
 
8068
        MCInterfaceElement                                      = UInt32;
 
8069
{$ifc TYPED_FUNCTION_POINTERS}
 
8070
        MCActionFilterProcPtr = function(mc: MovieController; var action: SInt16; params: UnivPtr): boolean;
 
8071
{$elsec}
 
8072
        MCActionFilterProcPtr = ProcPtr;
 
8073
{$endc}
 
8074
 
 
8075
{$ifc TYPED_FUNCTION_POINTERS}
 
8076
        MCActionFilterWithRefConProcPtr = function(mc: MovieController; action: SInt16; params: UnivPtr; refCon: SInt32): boolean;
 
8077
{$elsec}
 
8078
        MCActionFilterWithRefConProcPtr = ProcPtr;
 
8079
{$endc}
 
8080
 
 
8081
{$ifc OPAQUE_UPP_TYPES}
 
8082
        MCActionFilterUPP = ^SInt32; { an opaque UPP }
 
8083
{$elsec}
 
8084
        MCActionFilterUPP = UniversalProcPtr;
 
8085
{$endc} 
 
8086
{$ifc OPAQUE_UPP_TYPES}
 
8087
        MCActionFilterWithRefConUPP = ^SInt32; { an opaque UPP }
 
8088
{$elsec}
 
8089
        MCActionFilterWithRefConUPP = UniversalProcPtr;
 
8090
{$endc} 
 
8091
        {       
 
8092
            menu related stuff
 
8093
                }
 
8094
 
 
8095
const
 
8096
        mcInfoUndoAvailable                     = $01;
 
8097
        mcInfoCutAvailable                      = $02;
 
8098
        mcInfoCopyAvailable                     = $04;
 
8099
        mcInfoPasteAvailable            = $08;
 
8100
        mcInfoClearAvailable            = $10;
 
8101
        mcInfoHasSound                          = $20;
 
8102
        mcInfoIsPlaying                         = $40;
 
8103
        mcInfoIsLooping                         = $80;
 
8104
        mcInfoIsInPalindrome            = $0100;
 
8105
        mcInfoEditingEnabled            = $0200;
 
8106
        mcInfoMovieIsInteractive        = $0400;
 
8107
 
 
8108
        {  menu item codes }
 
8109
        mcMenuUndo                                      = 1;
 
8110
        mcMenuCut                                       = 3;
 
8111
        mcMenuCopy                                      = 4;
 
8112
        mcMenuPaste                                     = 5;
 
8113
        mcMenuClear                                     = 6;
 
8114
 
 
8115
        {  messages to the application via mcActionAppMessageReceived }
 
8116
        kQTAppMessageSoftwareChanged = 1;                                                       {  notification to app that installed QuickTime software has been updated }
 
8117
        kQTAppMessageWindowCloseRequested = 3;                                          {  request for app to close window containing movie controller }
 
8118
        kQTAppMessageExitFullScreenRequested = 4;                                       {  request for app to turn off full screen mode if active }
 
8119
        kQTAppMessageDisplayChannels = 5;                                                       {  request for app to display the channel UI }
 
8120
        kQTAppMessageEnterFullScreenRequested = 6;                                      {  request for app to turn on full screen mode }
 
8121
 
 
8122
        {  structures used as mcActionFilterProc params }
 
8123
 
 
8124
type
 
8125
        QTStatusStringRecordPtr = ^QTStatusStringRecord;
 
8126
        QTStatusStringRecord = record
 
8127
                stringTypeFlags:                SInt32;
 
8128
                statusString:                   CStringPtr;
 
8129
        end;
 
8130
 
 
8131
        QTStatusStringPtr                                       = ^QTStatusStringRecord;
 
8132
        QTGetExternalMovieRecordPtr = ^QTGetExternalMovieRecord;
 
8133
        QTGetExternalMovieRecord = record
 
8134
                targetType:                             SInt32;                                                         {  set to kTargetMovieName or kTargetMovieID }
 
8135
                movieName:                              StringPtr;
 
8136
                movieID:                                SInt32;
 
8137
                theMovie:                               MoviePtr;
 
8138
                theController:                  MovieControllerPtr;
 
8139
        end;
 
8140
 
 
8141
        QTGetExternalMoviePtr                           = ^QTGetExternalMovieRecord;
 
8142
        QTGetChapterTimeRecordPtr = ^QTGetChapterTimeRecord;
 
8143
        QTGetChapterTimeRecord = record
 
8144
                chapterName:                    StringPtr;
 
8145
                chapterTime:                    TimeRecord;
 
8146
        end;
 
8147
 
 
8148
        QTGetChapterTimePtr                                     = ^QTGetChapterTimeRecord;
 
8149
        QTChapterInfoRecordPtr = ^QTChapterInfoRecord;
 
8150
        QTChapterInfoRecord = record
 
8151
                index:                                  SInt32;                                                         {  first chapter has index of 1 }
 
8152
                time:                                   TimeValue;                                                              {  -1 if no more chapters available }
 
8153
                name:                                   Str255;
 
8154
        end;
 
8155
 
 
8156
        QTChapterInfoPtr                                        = ^QTChapterInfoRecord;
 
8157
        QTEvaluateExpressionRecordPtr = ^QTEvaluateExpressionRecord;
 
8158
        QTEvaluateExpressionRecord = record
 
8159
                expressionSpec:                 QTAtomSpec;
 
8160
                expressionResult:               Float32Ptr;
 
8161
        end;
 
8162
 
 
8163
        QTEvaluateExpressionPtr                         = ^QTEvaluateExpressionRecord;
 
8164
        QTEvaluateExpressionWithTypeRecordPtr = ^QTEvaluateExpressionWithTypeRecord;
 
8165
        QTEvaluateExpressionWithTypeRecord = record
 
8166
                recordSize:                             SInt32;                                                         {  Size of structure (fill in at allocation)  }
 
8167
                expressionSpec:                 QTAtomSpec;
 
8168
                expressionResult:               Float32Ptr;
 
8169
                fetchAsType:                    SInt32;
 
8170
                nonNumericResult:               Handle;
 
8171
                                                                                                                                                {  Current size is 24  }
 
8172
        end;
 
8173
 
 
8174
        QTEvaluateExpressionWithTypePtr         = ^QTEvaluateExpressionWithTypeRecord;
 
8175
        QTFetchParameterAsRecordPtr = ^QTFetchParameterAsRecord;
 
8176
        QTFetchParameterAsRecord = record
 
8177
                paramListSpec:                  QTAtomSpec;
 
8178
                paramIndex:                             SInt32;
 
8179
                paramType:                              SInt32;
 
8180
                allowedFlags:                   SInt32;
 
8181
                min:                                    Ptr;
 
8182
                max:                                    Ptr;
 
8183
                currentValue:                   Ptr;
 
8184
                newValue:                               Ptr;
 
8185
                isUnsignedValue:                boolean;
 
8186
        end;
 
8187
 
 
8188
        QTFetchParameterAsPtr                           = ^QTFetchParameterAsRecord;
 
8189
        QTGetCursorByIDRecordPtr = ^QTGetCursorByIDRecord;
 
8190
        QTGetCursorByIDRecord = record
 
8191
                cursorID:                               SInt16;
 
8192
                colorCursorData:                Handle;
 
8193
                reserved1:                              SInt32;
 
8194
        end;
 
8195
 
 
8196
        QTGetCursorByIDPtr                                      = ^QTGetCursorByIDRecord;
 
8197
        QTDoScriptRecordPtr = ^QTDoScriptRecord;
 
8198
        QTDoScriptRecord = record
 
8199
                scriptTypeFlags:                SInt32;
 
8200
                command:                                CStringPtr;
 
8201
                arguments:                              CStringPtr;
 
8202
        end;
 
8203
 
 
8204
        QTDoScriptPtr                                           = ^QTDoScriptRecord;
 
8205
        QTRestartAtTimeRecordPtr = ^QTRestartAtTimeRecord;
 
8206
        QTRestartAtTimeRecord = record
 
8207
                startTime:                              TimeValue;                                                              {  time scale is the movie timescale }
 
8208
                rate:                                   Fixed;                                                                  {  if rate is zero, the movie's current rate is maintained }
 
8209
        end;
 
8210
 
 
8211
        QTRestartAtTimePtr                                      = ^QTRestartAtTimeRecord;
 
8212
        {  values for paramType field of QTFetchParameterAsRecord }
 
8213
 
 
8214
const
 
8215
        kFetchAsBooleanPtr                      = 1;
 
8216
        kFetchAsShortPtr                        = 2;
 
8217
        kFetchAsLongPtr                         = 3;
 
8218
        kFetchAsMatrixRecordPtr         = 4;
 
8219
        kFetchAsModifierTrackGraphicsModeRecord = 5;
 
8220
        kFetchAsHandle                          = 6;
 
8221
        kFetchAsStr255                          = 7;
 
8222
        kFetchAsFloatPtr                        = 8;
 
8223
        kFetchAsPointPtr                        = 9;
 
8224
        kFetchAsNewAtomContainer        = 10;
 
8225
        kFetchAsQTEventRecordPtr        = 11;
 
8226
        kFetchAsFixedPtr                        = 12;
 
8227
        kFetchAsSetControllerValuePtr = 13;
 
8228
        kFetchAsRgnHandle                       = 14;                                                   {  flipped to native }
 
8229
        kFetchAsComponentDescriptionPtr = 15;
 
8230
        kFetchAsCString                         = 16;
 
8231
 
 
8232
        kQTCursorOpenHand                       = -19183;
 
8233
        kQTCursorClosedHand                     = -19182;
 
8234
        kQTCursorPointingHand           = -19181;
 
8235
        kQTCursorRightArrow                     = -19180;
 
8236
        kQTCursorLeftArrow                      = -19179;
 
8237
        kQTCursorDownArrow                      = -19178;
 
8238
        kQTCursorUpArrow                        = -19177;
 
8239
        kQTCursorIBeam                          = -19176;
 
8240
 
 
8241
 
 
8242
        {        target management      }
 
8243
        {
 
8244
         *  MCSetMovie()
 
8245
         *  
 
8246
         *  Availability:
 
8247
         *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8248
         *    CarbonLib:        in CarbonLib 1.0 and later
 
8249
         *    Mac OS X:         in version 10.0 and later
 
8250
         *    Windows:          in qtmlClient.lib 3.0 and later
 
8251
                }
 
8252
function MCSetMovie(mc: MovieController; theMovie: Movie; movieWindow: WindowRef; where: Point): ComponentResult; external name '_MCSetMovie';
 
8253
{
 
8254
 *  MCGetIndMovie()
 
8255
 *  
 
8256
 *  Availability:
 
8257
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8258
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8259
 *    Mac OS X:         in version 10.0 and later
 
8260
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8261
 }
 
8262
function MCGetIndMovie(mc: MovieController; index: SInt16): Movie; external name '_MCGetIndMovie';
 
8263
{
 
8264
 *  MCRemoveAllMovies()
 
8265
 *  
 
8266
 *  Availability:
 
8267
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8268
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8269
 *    Mac OS X:         in version 10.0 and later
 
8270
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8271
 }
 
8272
function MCRemoveAllMovies(mc: MovieController): ComponentResult; external name '_MCRemoveAllMovies';
 
8273
{
 
8274
 *  MCRemoveAMovie()
 
8275
 *  
 
8276
 *  Availability:
 
8277
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8278
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8279
 *    Mac OS X:         in version 10.0 and later
 
8280
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8281
 }
 
8282
function MCRemoveAMovie(mc: MovieController; m: Movie): ComponentResult; external name '_MCRemoveAMovie';
 
8283
{
 
8284
 *  MCRemoveMovie()
 
8285
 *  
 
8286
 *  Availability:
 
8287
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8288
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8289
 *    Mac OS X:         in version 10.0 and later
 
8290
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8291
 }
 
8292
function MCRemoveMovie(mc: MovieController): ComponentResult; external name '_MCRemoveMovie';
 
8293
{ event handling etc. }
 
8294
{
 
8295
 *  MCIsPlayerEvent()
 
8296
 *  
 
8297
 *  Availability:
 
8298
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8299
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8300
 *    Mac OS X:         in version 10.0 and later
 
8301
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8302
 }
 
8303
function MCIsPlayerEvent(mc: MovieController; const (*var*) e: EventRecord): ComponentResult; external name '_MCIsPlayerEvent';
 
8304
{ obsolete. use MCSetActionFilterWithRefCon instead. }
 
8305
{
 
8306
 *  MCSetActionFilter()
 
8307
 *  
 
8308
 *  Availability:
 
8309
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8310
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8311
 *    Mac OS X:         in version 10.0 and later
 
8312
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8313
 }
 
8314
function MCSetActionFilter(mc: MovieController; blob: MCActionFilterUPP): ComponentResult; external name '_MCSetActionFilter';
 
8315
{
 
8316
    proc is of the form:
 
8317
        Boolean userPlayerFilter(MovieController mc, short *action, void *params) =
 
8318
    proc returns TRUE if it handles the action, FALSE if not
 
8319
    action is passed as a var so that it could be changed by filter
 
8320
    this is consistent with the current dialog manager stuff
 
8321
    params is any potential parameters that go with the action
 
8322
        such as set playback rate to xxx.
 
8323
}
 
8324
{
 
8325
 *  MCDoAction()
 
8326
 *  
 
8327
 *  Availability:
 
8328
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8329
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8330
 *    Mac OS X:         in version 10.0 and later
 
8331
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8332
 }
 
8333
function MCDoAction(mc: MovieController; action: SInt16; params: UnivPtr): ComponentResult; external name '_MCDoAction';
 
8334
{ state type things }
 
8335
{
 
8336
 *  MCSetControllerAttached()
 
8337
 *  
 
8338
 *  Availability:
 
8339
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8340
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8341
 *    Mac OS X:         in version 10.0 and later
 
8342
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8343
 }
 
8344
function MCSetControllerAttached(mc: MovieController; attach: boolean): ComponentResult; external name '_MCSetControllerAttached';
 
8345
{
 
8346
 *  MCIsControllerAttached()
 
8347
 *  
 
8348
 *  Availability:
 
8349
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8350
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8351
 *    Mac OS X:         in version 10.0 and later
 
8352
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8353
 }
 
8354
function MCIsControllerAttached(mc: MovieController): ComponentResult; external name '_MCIsControllerAttached';
 
8355
{
 
8356
 *  MCSetControllerPort()
 
8357
 *  
 
8358
 *  Availability:
 
8359
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8360
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8361
 *    Mac OS X:         in version 10.0 and later
 
8362
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8363
 }
 
8364
function MCSetControllerPort(mc: MovieController; gp: CGrafPtr): ComponentResult; external name '_MCSetControllerPort';
 
8365
{
 
8366
 *  MCGetControllerPort()
 
8367
 *  
 
8368
 *  Availability:
 
8369
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8370
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8371
 *    Mac OS X:         in version 10.0 and later
 
8372
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8373
 }
 
8374
function MCGetControllerPort(mc: MovieController): CGrafPtr; external name '_MCGetControllerPort';
 
8375
{
 
8376
 *  MCSetVisible()
 
8377
 *  
 
8378
 *  Availability:
 
8379
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8380
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8381
 *    Mac OS X:         in version 10.0 and later
 
8382
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8383
 }
 
8384
function MCSetVisible(mc: MovieController; visible: boolean): ComponentResult; external name '_MCSetVisible';
 
8385
{
 
8386
 *  MCGetVisible()
 
8387
 *  
 
8388
 *  Availability:
 
8389
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8390
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8391
 *    Mac OS X:         in version 10.0 and later
 
8392
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8393
 }
 
8394
function MCGetVisible(mc: MovieController): ComponentResult; external name '_MCGetVisible';
 
8395
{
 
8396
 *  MCGetControllerBoundsRect()
 
8397
 *  
 
8398
 *  Availability:
 
8399
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8400
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8401
 *    Mac OS X:         in version 10.0 and later
 
8402
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8403
 }
 
8404
function MCGetControllerBoundsRect(mc: MovieController; var bounds: Rect): ComponentResult; external name '_MCGetControllerBoundsRect';
 
8405
{
 
8406
 *  MCSetControllerBoundsRect()
 
8407
 *  
 
8408
 *  Availability:
 
8409
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8410
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8411
 *    Mac OS X:         in version 10.0 and later
 
8412
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8413
 }
 
8414
function MCSetControllerBoundsRect(mc: MovieController; const (*var*) bounds: Rect): ComponentResult; external name '_MCSetControllerBoundsRect';
 
8415
{
 
8416
 *  MCGetControllerBoundsRgn()
 
8417
 *  
 
8418
 *  Availability:
 
8419
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8420
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8421
 *    Mac OS X:         in version 10.0 and later
 
8422
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8423
 }
 
8424
function MCGetControllerBoundsRgn(mc: MovieController): RgnHandle; external name '_MCGetControllerBoundsRgn';
 
8425
{
 
8426
 *  MCGetWindowRgn()
 
8427
 *  
 
8428
 *  Availability:
 
8429
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8430
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8431
 *    Mac OS X:         in version 10.0 and later
 
8432
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8433
 }
 
8434
function MCGetWindowRgn(mc: MovieController; w: WindowRef): RgnHandle; external name '_MCGetWindowRgn';
 
8435
{ other stuff }
 
8436
{
 
8437
 *  MCMovieChanged()
 
8438
 *  
 
8439
 *  Availability:
 
8440
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8441
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8442
 *    Mac OS X:         in version 10.0 and later
 
8443
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8444
 }
 
8445
function MCMovieChanged(mc: MovieController; m: Movie): ComponentResult; external name '_MCMovieChanged';
 
8446
{
 
8447
    called when the app has changed thing about the movie (like bounding rect) or rate. So that we
 
8448
        can update our graphical (and internal) state accordingly.
 
8449
}
 
8450
{
 
8451
 *  MCSetDuration()
 
8452
 *  
 
8453
 *  Availability:
 
8454
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8455
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8456
 *    Mac OS X:         in version 10.0 and later
 
8457
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8458
 }
 
8459
function MCSetDuration(mc: MovieController; duration: TimeValue): ComponentResult; external name '_MCSetDuration';
 
8460
{
 
8461
    duration to use for time slider -- will be reset next time MCMovieChanged is called
 
8462
        or MCSetMovie is called
 
8463
}
 
8464
{
 
8465
 *  MCGetCurrentTime()
 
8466
 *  
 
8467
 *  Availability:
 
8468
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8469
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8470
 *    Mac OS X:         in version 10.0 and later
 
8471
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8472
 }
 
8473
function MCGetCurrentTime(mc: MovieController; var scale: TimeScale): TimeValue; external name '_MCGetCurrentTime';
 
8474
{
 
8475
    returns the time value and the time scale it is on. if there are no movies, the
 
8476
        time scale is passed back as 0. scale is an optional parameter
 
8477
 
 
8478
}
 
8479
{
 
8480
 *  MCNewAttachedController()
 
8481
 *  
 
8482
 *  Availability:
 
8483
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8484
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8485
 *    Mac OS X:         in version 10.0 and later
 
8486
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8487
 }
 
8488
function MCNewAttachedController(mc: MovieController; theMovie: Movie; w: WindowRef; where: Point): ComponentResult; external name '_MCNewAttachedController';
 
8489
{
 
8490
    makes theMovie the only movie attached to the controller. makes the controller visible.
 
8491
    the window and where parameters are passed a long to MCSetMovie and behave as
 
8492
    described there
 
8493
}
 
8494
{
 
8495
 *  MCDraw()
 
8496
 *  
 
8497
 *  Availability:
 
8498
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8499
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8500
 *    Mac OS X:         in version 10.0 and later
 
8501
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8502
 }
 
8503
function MCDraw(mc: MovieController; w: WindowRef): ComponentResult; external name '_MCDraw';
 
8504
{
 
8505
 *  MCActivate()
 
8506
 *  
 
8507
 *  Availability:
 
8508
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8509
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8510
 *    Mac OS X:         in version 10.0 and later
 
8511
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8512
 }
 
8513
function MCActivate(mc: MovieController; w: WindowRef; activate: boolean): ComponentResult; external name '_MCActivate';
 
8514
{
 
8515
 *  MCIdle()
 
8516
 *  
 
8517
 *  Availability:
 
8518
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8519
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8520
 *    Mac OS X:         in version 10.0 and later
 
8521
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8522
 }
 
8523
function MCIdle(mc: MovieController): ComponentResult; external name '_MCIdle';
 
8524
{
 
8525
 *  MCKey()
 
8526
 *  
 
8527
 *  Availability:
 
8528
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8529
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8530
 *    Mac OS X:         in version 10.0 and later
 
8531
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8532
 }
 
8533
function MCKey(mc: MovieController; key: SInt8; modifiers: SInt32): ComponentResult; external name '_MCKey';
 
8534
{
 
8535
 *  MCClick()
 
8536
 *  
 
8537
 *  Availability:
 
8538
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8539
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8540
 *    Mac OS X:         in version 10.0 and later
 
8541
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8542
 }
 
8543
function MCClick(mc: MovieController; w: WindowRef; where: Point; when: SInt32; modifiers: SInt32): ComponentResult; external name '_MCClick';
 
8544
{
 
8545
    calls for editing
 
8546
}
 
8547
{
 
8548
 *  MCEnableEditing()
 
8549
 *  
 
8550
 *  Availability:
 
8551
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8552
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8553
 *    Mac OS X:         in version 10.0 and later
 
8554
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8555
 }
 
8556
function MCEnableEditing(mc: MovieController; enabled: boolean): ComponentResult; external name '_MCEnableEditing';
 
8557
{
 
8558
 *  MCIsEditingEnabled()
 
8559
 *  
 
8560
 *  Availability:
 
8561
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8562
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8563
 *    Mac OS X:         in version 10.0 and later
 
8564
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8565
 }
 
8566
function MCIsEditingEnabled(mc: MovieController): SInt32; external name '_MCIsEditingEnabled';
 
8567
{
 
8568
 *  MCCopy()
 
8569
 *  
 
8570
 *  Availability:
 
8571
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8572
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8573
 *    Mac OS X:         in version 10.0 and later
 
8574
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8575
 }
 
8576
function MCCopy(mc: MovieController): Movie; external name '_MCCopy';
 
8577
{
 
8578
 *  MCCut()
 
8579
 *  
 
8580
 *  Availability:
 
8581
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8582
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8583
 *    Mac OS X:         in version 10.0 and later
 
8584
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8585
 }
 
8586
function MCCut(mc: MovieController): Movie; external name '_MCCut';
 
8587
{
 
8588
 *  MCPaste()
 
8589
 *  
 
8590
 *  Availability:
 
8591
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8592
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8593
 *    Mac OS X:         in version 10.0 and later
 
8594
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8595
 }
 
8596
function MCPaste(mc: MovieController; srcMovie: Movie): ComponentResult; external name '_MCPaste';
 
8597
{
 
8598
 *  MCClear()
 
8599
 *  
 
8600
 *  Availability:
 
8601
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8602
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8603
 *    Mac OS X:         in version 10.0 and later
 
8604
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8605
 }
 
8606
function MCClear(mc: MovieController): ComponentResult; external name '_MCClear';
 
8607
{
 
8608
 *  MCUndo()
 
8609
 *  
 
8610
 *  Availability:
 
8611
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8612
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8613
 *    Mac OS X:         in version 10.0 and later
 
8614
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8615
 }
 
8616
function MCUndo(mc: MovieController): ComponentResult; external name '_MCUndo';
 
8617
{
 
8618
 *  somewhat special stuff
 
8619
 }
 
8620
{
 
8621
 *  MCPositionController()
 
8622
 *  
 
8623
 *  Availability:
 
8624
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8625
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8626
 *    Mac OS X:         in version 10.0 and later
 
8627
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8628
 }
 
8629
function MCPositionController(mc: MovieController; const (*var*) movieRect: Rect; const (*var*) controllerRect: Rect; someFlags: SInt32): ComponentResult; external name '_MCPositionController';
 
8630
{
 
8631
 *  MCGetControllerInfo()
 
8632
 *  
 
8633
 *  Availability:
 
8634
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8635
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8636
 *    Mac OS X:         in version 10.0 and later
 
8637
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8638
 }
 
8639
function MCGetControllerInfo(mc: MovieController; var someFlags: SInt32): ComponentResult; external name '_MCGetControllerInfo';
 
8640
{
 
8641
 *  MCSetClip()
 
8642
 *  
 
8643
 *  Availability:
 
8644
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8645
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8646
 *    Mac OS X:         in version 10.0 and later
 
8647
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8648
 }
 
8649
function MCSetClip(mc: MovieController; theClip: RgnHandle; movieClip: RgnHandle): ComponentResult; external name '_MCSetClip';
 
8650
{
 
8651
 *  MCGetClip()
 
8652
 *  
 
8653
 *  Availability:
 
8654
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8655
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8656
 *    Mac OS X:         in version 10.0 and later
 
8657
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8658
 }
 
8659
function MCGetClip(mc: MovieController; var theClip: RgnHandle; var movieClip: RgnHandle): ComponentResult; external name '_MCGetClip';
 
8660
{
 
8661
 *  MCDrawBadge()
 
8662
 *  
 
8663
 *  Availability:
 
8664
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8665
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8666
 *    Mac OS X:         in version 10.0 and later
 
8667
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8668
 }
 
8669
function MCDrawBadge(mc: MovieController; movieRgn: RgnHandle; var badgeRgn: RgnHandle): ComponentResult; external name '_MCDrawBadge';
 
8670
{
 
8671
 *  MCSetUpEditMenu()
 
8672
 *  
 
8673
 *  Availability:
 
8674
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8675
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8676
 *    Mac OS X:         in version 10.0 and later
 
8677
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8678
 }
 
8679
function MCSetUpEditMenu(mc: MovieController; modifiers: SInt32; mh: MenuRef): ComponentResult; external name '_MCSetUpEditMenu';
 
8680
{
 
8681
 *  MCGetMenuString()
 
8682
 *  
 
8683
 *  Availability:
 
8684
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8685
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8686
 *    Mac OS X:         in version 10.0 and later
 
8687
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8688
 }
 
8689
function MCGetMenuString(mc: MovieController; modifiers: SInt32; item: SInt16; var aString: Str255): ComponentResult; external name '_MCGetMenuString';
 
8690
{
 
8691
 *  MCSetActionFilterWithRefCon()
 
8692
 *  
 
8693
 *  Availability:
 
8694
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8695
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8696
 *    Mac OS X:         in version 10.0 and later
 
8697
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8698
 }
 
8699
function MCSetActionFilterWithRefCon(mc: MovieController; blob: MCActionFilterWithRefConUPP; refCon: SInt32): ComponentResult; external name '_MCSetActionFilterWithRefCon';
 
8700
{
 
8701
 *  MCPtInController()
 
8702
 *  
 
8703
 *  Availability:
 
8704
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8705
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8706
 *    Mac OS X:         in version 10.0 and later
 
8707
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8708
 }
 
8709
function MCPtInController(mc: MovieController; thePt: Point; var inController: boolean): ComponentResult; external name '_MCPtInController';
 
8710
{
 
8711
 *  MCInvalidate()
 
8712
 *  
 
8713
 *  Availability:
 
8714
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8715
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8716
 *    Mac OS X:         in version 10.0 and later
 
8717
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8718
 }
 
8719
function MCInvalidate(mc: MovieController; w: WindowRef; invalidRgn: RgnHandle): ComponentResult; external name '_MCInvalidate';
 
8720
{
 
8721
 *  MCAdjustCursor()
 
8722
 *  
 
8723
 *  Availability:
 
8724
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
8725
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8726
 *    Mac OS X:         in version 10.0 and later
 
8727
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8728
 }
 
8729
function MCAdjustCursor(mc: MovieController; w: WindowRef; where: Point; modifiers: SInt32): ComponentResult; external name '_MCAdjustCursor';
 
8730
{
 
8731
 *  MCGetInterfaceElement()
 
8732
 *  
 
8733
 *  Availability:
 
8734
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
8735
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8736
 *    Mac OS X:         in version 10.0 and later
 
8737
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8738
 }
 
8739
function MCGetInterfaceElement(mc: MovieController; whichElement: MCInterfaceElement; element: UnivPtr): ComponentResult; external name '_MCGetInterfaceElement';
 
8740
{
 
8741
 *  MCGetDoActionsProc()
 
8742
 *  
 
8743
 *  Availability:
 
8744
 *    Non-Carbon CFM:   in QuickTimeLib 4.0 and later
 
8745
 *    CarbonLib:        in CarbonLib 1.0.2 and later
 
8746
 *    Mac OS X:         in version 10.0 and later
 
8747
 *    Windows:          in qtmlClient.lib 4.0 and later
 
8748
 }
 
8749
function MCGetDoActionsProc(mc: MovieController; var doMCActionProc: DoMCActionUPP; var doMCActionRefCon: SInt32): ComponentResult; external name '_MCGetDoActionsProc';
 
8750
{
 
8751
 *  MCAddMovieSegment()
 
8752
 *  
 
8753
 *  Availability:
 
8754
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
8755
 *    CarbonLib:        in CarbonLib 1.3 and later
 
8756
 *    Mac OS X:         in version 10.0 and later
 
8757
 *    Windows:          in qtmlClient.lib 5.0 and later
 
8758
 }
 
8759
function MCAddMovieSegment(mc: MovieController; srcMovie: Movie; scaled: boolean): ComponentResult; external name '_MCAddMovieSegment';
 
8760
{
 
8761
 *  MCTrimMovieSegment()
 
8762
 *  
 
8763
 *  Availability:
 
8764
 *    Non-Carbon CFM:   in QuickTimeLib 5.0 and later
 
8765
 *    CarbonLib:        in CarbonLib 1.3 and later
 
8766
 *    Mac OS X:         in version 10.0 and later
 
8767
 *    Windows:          in qtmlClient.lib 5.0 and later
 
8768
 }
 
8769
function MCTrimMovieSegment(mc: MovieController): ComponentResult; external name '_MCTrimMovieSegment';
 
8770
{
 
8771
 *  MCSetIdleManager()
 
8772
 *  
 
8773
 *  Availability:
 
8774
 *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
8775
 *    CarbonLib:        in CarbonLib 1.6 and later
 
8776
 *    Mac OS X:         in version 10.2 and later
 
8777
 *    Windows:          in qtmlClient.lib 6.0 and later
 
8778
 }
 
8779
function MCSetIdleManager(mc: MovieController; im: IdleManager): ComponentResult; external name '_MCSetIdleManager';
 
8780
{ Called (but not implemented) by controllers that derive from the standard movie controller.
 
8781
   All controllers except standard movie controller must delegate this call. }
 
8782
 
 
8783
const
 
8784
        kControllerUnderstandsIdleManagers = $01;
 
8785
 
 
8786
        {
 
8787
         *  MCSetControllerCapabilities()
 
8788
         *  
 
8789
         *  Availability:
 
8790
         *    Non-Carbon CFM:   in QuickTimeLib 6.0 and later
 
8791
         *    CarbonLib:        in CarbonLib 1.6 and later
 
8792
         *    Mac OS X:         in version 10.2 and later
 
8793
         *    Windows:          in qtmlClient.lib 6.0 and later
 
8794
                }
 
8795
function MCSetControllerCapabilities(mc: MovieController; flags: SInt32; flagsMask: SInt32): ComponentResult; external name '_MCSetControllerCapabilities';
 
8796
{***************************************
 
8797
*                                       *
 
8798
*       T  I  M  E  B  A  S  E          *
 
8799
*                                       *
 
8800
***************************************}
 
8801
{
 
8802
 *  NewTimeBase()
 
8803
 *  
 
8804
 *  Availability:
 
8805
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8806
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8807
 *    Mac OS X:         in version 10.0 and later
 
8808
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8809
 }
 
8810
function NewTimeBase: TimeBase; external name '_NewTimeBase';
 
8811
{
 
8812
 *  DisposeTimeBase()
 
8813
 *  
 
8814
 *  Availability:
 
8815
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8816
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8817
 *    Mac OS X:         in version 10.0 and later
 
8818
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8819
 }
 
8820
procedure DisposeTimeBase(tb: TimeBase); external name '_DisposeTimeBase';
 
8821
{
 
8822
 *  GetTimeBaseTime()
 
8823
 *  
 
8824
 *  Availability:
 
8825
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8826
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8827
 *    Mac OS X:         in version 10.0 and later
 
8828
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8829
 }
 
8830
function GetTimeBaseTime(tb: TimeBase; s: TimeScale; var tr: TimeRecord): TimeValue; external name '_GetTimeBaseTime';
 
8831
{
 
8832
 *  SetTimeBaseTime()
 
8833
 *  
 
8834
 *  Availability:
 
8835
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8836
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8837
 *    Mac OS X:         in version 10.0 and later
 
8838
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8839
 }
 
8840
procedure SetTimeBaseTime(tb: TimeBase; const (*var*) tr: TimeRecord); external name '_SetTimeBaseTime';
 
8841
{
 
8842
 *  SetTimeBaseValue()
 
8843
 *  
 
8844
 *  Availability:
 
8845
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8846
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8847
 *    Mac OS X:         in version 10.0 and later
 
8848
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8849
 }
 
8850
procedure SetTimeBaseValue(tb: TimeBase; t: TimeValue; s: TimeScale); external name '_SetTimeBaseValue';
 
8851
{
 
8852
 *  GetTimeBaseRate()
 
8853
 *  
 
8854
 *  Availability:
 
8855
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8856
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8857
 *    Mac OS X:         in version 10.0 and later
 
8858
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8859
 }
 
8860
function GetTimeBaseRate(tb: TimeBase): Fixed; external name '_GetTimeBaseRate';
 
8861
{
 
8862
 *  SetTimeBaseRate()
 
8863
 *  
 
8864
 *  Availability:
 
8865
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8866
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8867
 *    Mac OS X:         in version 10.0 and later
 
8868
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8869
 }
 
8870
procedure SetTimeBaseRate(tb: TimeBase; r: Fixed); external name '_SetTimeBaseRate';
 
8871
{
 
8872
 *  GetTimeBaseStartTime()
 
8873
 *  
 
8874
 *  Availability:
 
8875
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8876
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8877
 *    Mac OS X:         in version 10.0 and later
 
8878
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8879
 }
 
8880
function GetTimeBaseStartTime(tb: TimeBase; s: TimeScale; var tr: TimeRecord): TimeValue; external name '_GetTimeBaseStartTime';
 
8881
{
 
8882
 *  SetTimeBaseStartTime()
 
8883
 *  
 
8884
 *  Availability:
 
8885
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8886
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8887
 *    Mac OS X:         in version 10.0 and later
 
8888
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8889
 }
 
8890
procedure SetTimeBaseStartTime(tb: TimeBase; const (*var*) tr: TimeRecord); external name '_SetTimeBaseStartTime';
 
8891
{
 
8892
 *  GetTimeBaseStopTime()
 
8893
 *  
 
8894
 *  Availability:
 
8895
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8896
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8897
 *    Mac OS X:         in version 10.0 and later
 
8898
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8899
 }
 
8900
function GetTimeBaseStopTime(tb: TimeBase; s: TimeScale; var tr: TimeRecord): TimeValue; external name '_GetTimeBaseStopTime';
 
8901
{
 
8902
 *  SetTimeBaseStopTime()
 
8903
 *  
 
8904
 *  Availability:
 
8905
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8906
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8907
 *    Mac OS X:         in version 10.0 and later
 
8908
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8909
 }
 
8910
procedure SetTimeBaseStopTime(tb: TimeBase; const (*var*) tr: TimeRecord); external name '_SetTimeBaseStopTime';
 
8911
{
 
8912
 *  GetTimeBaseFlags()
 
8913
 *  
 
8914
 *  Availability:
 
8915
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8916
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8917
 *    Mac OS X:         in version 10.0 and later
 
8918
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8919
 }
 
8920
function GetTimeBaseFlags(tb: TimeBase): SInt32; external name '_GetTimeBaseFlags';
 
8921
{
 
8922
 *  SetTimeBaseFlags()
 
8923
 *  
 
8924
 *  Availability:
 
8925
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8926
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8927
 *    Mac OS X:         in version 10.0 and later
 
8928
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8929
 }
 
8930
procedure SetTimeBaseFlags(tb: TimeBase; timeBaseFlags: SInt32); external name '_SetTimeBaseFlags';
 
8931
{
 
8932
 *  SetTimeBaseMasterTimeBase()
 
8933
 *  
 
8934
 *  Availability:
 
8935
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8936
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8937
 *    Mac OS X:         in version 10.0 and later
 
8938
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8939
 }
 
8940
procedure SetTimeBaseMasterTimeBase(slave: TimeBase; master: TimeBase; const (*var*) slaveZero: TimeRecord); external name '_SetTimeBaseMasterTimeBase';
 
8941
{
 
8942
 *  GetTimeBaseMasterTimeBase()
 
8943
 *  
 
8944
 *  Availability:
 
8945
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8946
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8947
 *    Mac OS X:         in version 10.0 and later
 
8948
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8949
 }
 
8950
function GetTimeBaseMasterTimeBase(tb: TimeBase): TimeBase; external name '_GetTimeBaseMasterTimeBase';
 
8951
{
 
8952
 *  SetTimeBaseMasterClock()
 
8953
 *  
 
8954
 *  Availability:
 
8955
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8956
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8957
 *    Mac OS X:         in version 10.0 and later
 
8958
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8959
 }
 
8960
procedure SetTimeBaseMasterClock(slave: TimeBase; clockMeister: Component; const (*var*) slaveZero: TimeRecord); external name '_SetTimeBaseMasterClock';
 
8961
{
 
8962
 *  GetTimeBaseMasterClock()
 
8963
 *  
 
8964
 *  Availability:
 
8965
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8966
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8967
 *    Mac OS X:         in version 10.0 and later
 
8968
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8969
 }
 
8970
function GetTimeBaseMasterClock(tb: TimeBase): ComponentInstance; external name '_GetTimeBaseMasterClock';
 
8971
{
 
8972
 *  ConvertTime()
 
8973
 *  
 
8974
 *  Availability:
 
8975
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8976
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8977
 *    Mac OS X:         in version 10.0 and later
 
8978
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8979
 }
 
8980
procedure ConvertTime(var theTime: TimeRecord; newBase: TimeBase); external name '_ConvertTime';
 
8981
{
 
8982
 *  ConvertTimeScale()
 
8983
 *  
 
8984
 *  Availability:
 
8985
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8986
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8987
 *    Mac OS X:         in version 10.0 and later
 
8988
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8989
 }
 
8990
procedure ConvertTimeScale(var theTime: TimeRecord; newScale: TimeScale); external name '_ConvertTimeScale';
 
8991
{
 
8992
 *  AddTime()
 
8993
 *  
 
8994
 *  Availability:
 
8995
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
8996
 *    CarbonLib:        in CarbonLib 1.0 and later
 
8997
 *    Mac OS X:         in version 10.0 and later
 
8998
 *    Windows:          in qtmlClient.lib 3.0 and later
 
8999
 }
 
9000
procedure AddTime(var dst: TimeRecord; const (*var*) src: TimeRecord); external name '_AddTime';
 
9001
{
 
9002
 *  SubtractTime()
 
9003
 *  
 
9004
 *  Availability:
 
9005
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9006
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9007
 *    Mac OS X:         in version 10.0 and later
 
9008
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9009
 }
 
9010
procedure SubtractTime(var dst: TimeRecord; const (*var*) src: TimeRecord); external name '_SubtractTime';
 
9011
{
 
9012
 *  GetTimeBaseStatus()
 
9013
 *  
 
9014
 *  Availability:
 
9015
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9016
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9017
 *    Mac OS X:         in version 10.0 and later
 
9018
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9019
 }
 
9020
function GetTimeBaseStatus(tb: TimeBase; var unpinnedTime: TimeRecord): SInt32; external name '_GetTimeBaseStatus';
 
9021
{
 
9022
 *  SetTimeBaseZero()
 
9023
 *  
 
9024
 *  Availability:
 
9025
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9026
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9027
 *    Mac OS X:         in version 10.0 and later
 
9028
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9029
 }
 
9030
procedure SetTimeBaseZero(tb: TimeBase; var zero: TimeRecord); external name '_SetTimeBaseZero';
 
9031
{
 
9032
 *  GetTimeBaseEffectiveRate()
 
9033
 *  
 
9034
 *  Availability:
 
9035
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9036
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9037
 *    Mac OS X:         in version 10.0 and later
 
9038
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9039
 }
 
9040
function GetTimeBaseEffectiveRate(tb: TimeBase): Fixed; external name '_GetTimeBaseEffectiveRate';
 
9041
{***************************************
 
9042
*                                       *
 
9043
*       C  A  L  L  B  A  C  K          *
 
9044
*                                       *
 
9045
***************************************}
 
9046
{
 
9047
 *  NewCallBack()
 
9048
 *  
 
9049
 *  Availability:
 
9050
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9051
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9052
 *    Mac OS X:         in version 10.0 and later
 
9053
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9054
 }
 
9055
function NewCallBack(tb: TimeBase; cbType: SInt16): QTCallBack; external name '_NewCallBack';
 
9056
{
 
9057
 *  DisposeCallBack()
 
9058
 *  
 
9059
 *  Availability:
 
9060
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9061
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9062
 *    Mac OS X:         in version 10.0 and later
 
9063
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9064
 }
 
9065
procedure DisposeCallBack(cb: QTCallBack); external name '_DisposeCallBack';
 
9066
{
 
9067
 *  GetCallBackType()
 
9068
 *  
 
9069
 *  Availability:
 
9070
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9071
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9072
 *    Mac OS X:         in version 10.0 and later
 
9073
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9074
 }
 
9075
function GetCallBackType(cb: QTCallBack): SInt16; external name '_GetCallBackType';
 
9076
{
 
9077
 *  GetCallBackTimeBase()
 
9078
 *  
 
9079
 *  Availability:
 
9080
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9081
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9082
 *    Mac OS X:         in version 10.0 and later
 
9083
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9084
 }
 
9085
function GetCallBackTimeBase(cb: QTCallBack): TimeBase; external name '_GetCallBackTimeBase';
 
9086
{
 
9087
 *  CallMeWhen()
 
9088
 *  
 
9089
 *  Availability:
 
9090
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9091
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9092
 *    Mac OS X:         in version 10.0 and later
 
9093
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9094
 }
 
9095
function CallMeWhen(cb: QTCallBack; callBackProc: QTCallBackUPP; refCon: SInt32; param1: SInt32; param2: SInt32; param3: SInt32): OSErr; external name '_CallMeWhen';
 
9096
{
 
9097
 *  CancelCallBack()
 
9098
 *  
 
9099
 *  Availability:
 
9100
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9101
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9102
 *    Mac OS X:         in version 10.0 and later
 
9103
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9104
 }
 
9105
procedure CancelCallBack(cb: QTCallBack); external name '_CancelCallBack';
 
9106
{***************************************
 
9107
*                                       *
 
9108
*       C L O C K   C A L L B A C K     *
 
9109
*             S U P P O R T             *
 
9110
*                                       *
 
9111
***************************************}
 
9112
{
 
9113
 *  AddCallBackToTimeBase()
 
9114
 *  
 
9115
 *  Availability:
 
9116
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9117
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9118
 *    Mac OS X:         in version 10.0 and later
 
9119
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9120
 }
 
9121
function AddCallBackToTimeBase(cb: QTCallBack): OSErr; external name '_AddCallBackToTimeBase';
 
9122
{
 
9123
 *  RemoveCallBackFromTimeBase()
 
9124
 *  
 
9125
 *  Availability:
 
9126
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9127
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9128
 *    Mac OS X:         in version 10.0 and later
 
9129
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9130
 }
 
9131
function RemoveCallBackFromTimeBase(cb: QTCallBack): OSErr; external name '_RemoveCallBackFromTimeBase';
 
9132
{
 
9133
 *  GetFirstCallBack()
 
9134
 *  
 
9135
 *  Availability:
 
9136
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9137
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9138
 *    Mac OS X:         in version 10.0 and later
 
9139
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9140
 }
 
9141
function GetFirstCallBack(tb: TimeBase): QTCallBack; external name '_GetFirstCallBack';
 
9142
{
 
9143
 *  GetNextCallBack()
 
9144
 *  
 
9145
 *  Availability:
 
9146
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9147
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9148
 *    Mac OS X:         in version 10.0 and later
 
9149
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9150
 }
 
9151
function GetNextCallBack(cb: QTCallBack): QTCallBack; external name '_GetNextCallBack';
 
9152
{
 
9153
 *  ExecuteCallBack()
 
9154
 *  
 
9155
 *  Availability:
 
9156
 *    Non-Carbon CFM:   in QuickTimeLib 2.5 and later
 
9157
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9158
 *    Mac OS X:         in version 10.0 and later
 
9159
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9160
 }
 
9161
procedure ExecuteCallBack(cb: QTCallBack); external name '_ExecuteCallBack';
 
9162
{
 
9163
 *  MusicMediaGetIndexedTunePlayer()
 
9164
 *  
 
9165
 *  Availability:
 
9166
 *    Non-Carbon CFM:   in QuickTimeLib 3.0 and later
 
9167
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9168
 *    Mac OS X:         in version 10.0 and later
 
9169
 *    Windows:          in qtmlClient.lib 3.0 and later
 
9170
 }
 
9171
function MusicMediaGetIndexedTunePlayer(ti: ComponentInstance; sampleDescIndex: SInt32; var tp: ComponentInstance): ComponentResult; external name '_MusicMediaGetIndexedTunePlayer';
 
9172
{ UPP call backs }
 
9173
 
 
9174
const
 
9175
        uppMCActionFilterProcInfo = $00000FD0;
 
9176
        uppMCActionFilterWithRefConProcInfo = $00003ED0;
 
9177
        {
 
9178
         *  NewMCActionFilterUPP()
 
9179
         *  
 
9180
         *  Availability:
 
9181
         *    Non-Carbon CFM:   available as macro/inline
 
9182
         *    CarbonLib:        in CarbonLib 1.0 and later
 
9183
         *    Mac OS X:         in version 10.0 and later
 
9184
                }
 
9185
function NewMCActionFilterUPP(userRoutine: MCActionFilterProcPtr): MCActionFilterUPP; external name '_NewMCActionFilterUPP'; { old name was NewMCActionFilterProc }
 
9186
{
 
9187
 *  NewMCActionFilterWithRefConUPP()
 
9188
 *  
 
9189
 *  Availability:
 
9190
 *    Non-Carbon CFM:   available as macro/inline
 
9191
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9192
 *    Mac OS X:         in version 10.0 and later
 
9193
 }
 
9194
function NewMCActionFilterWithRefConUPP(userRoutine: MCActionFilterWithRefConProcPtr): MCActionFilterWithRefConUPP; external name '_NewMCActionFilterWithRefConUPP'; { old name was NewMCActionFilterWithRefConProc }
 
9195
{
 
9196
 *  DisposeMCActionFilterUPP()
 
9197
 *  
 
9198
 *  Availability:
 
9199
 *    Non-Carbon CFM:   available as macro/inline
 
9200
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9201
 *    Mac OS X:         in version 10.0 and later
 
9202
 }
 
9203
procedure DisposeMCActionFilterUPP(userUPP: MCActionFilterUPP); external name '_DisposeMCActionFilterUPP';
 
9204
{
 
9205
 *  DisposeMCActionFilterWithRefConUPP()
 
9206
 *  
 
9207
 *  Availability:
 
9208
 *    Non-Carbon CFM:   available as macro/inline
 
9209
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9210
 *    Mac OS X:         in version 10.0 and later
 
9211
 }
 
9212
procedure DisposeMCActionFilterWithRefConUPP(userUPP: MCActionFilterWithRefConUPP); external name '_DisposeMCActionFilterWithRefConUPP';
 
9213
{
 
9214
 *  InvokeMCActionFilterUPP()
 
9215
 *  
 
9216
 *  Availability:
 
9217
 *    Non-Carbon CFM:   available as macro/inline
 
9218
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9219
 *    Mac OS X:         in version 10.0 and later
 
9220
 }
 
9221
function InvokeMCActionFilterUPP(mc: MovieController; var action: SInt16; params: UnivPtr; userRoutine: MCActionFilterUPP): boolean; external name '_InvokeMCActionFilterUPP'; { old name was CallMCActionFilterProc }
 
9222
{
 
9223
 *  InvokeMCActionFilterWithRefConUPP()
 
9224
 *  
 
9225
 *  Availability:
 
9226
 *    Non-Carbon CFM:   available as macro/inline
 
9227
 *    CarbonLib:        in CarbonLib 1.0 and later
 
9228
 *    Mac OS X:         in version 10.0 and later
 
9229
 }
 
9230
function InvokeMCActionFilterWithRefConUPP(mc: MovieController; action: SInt16; params: UnivPtr; refCon: SInt32; userRoutine: MCActionFilterWithRefConUPP): boolean; external name '_InvokeMCActionFilterWithRefConUPP'; { old name was CallMCActionFilterWithRefConProc }
 
9231
{$ALIGN MAC68K}
 
9232
 
 
9233
 
 
9234
end.