QT atom container description key
Build QT atom container-based data structures.
Overview
Because QT atom container–based data structures are widely used in QuickTime, a description key is presented here. Its usage is illustrated in the following sections, Sprite media handler track properties QT atom container format and Sprite media handler sample QT atom container formats.
[(QTAtomFormatName)] =
atomType_1, id, index
data
atomType_n, id, index
dataThe atoms may be required or optional:
// optional atom
// required atom
<atomType>
atomTypeThe atom ID may be a number if it is required to be a constant, or it may be a list of valid atom IDs, indicating that multiple atoms of this type are allowed.
3 // one atom with id of 3
(1..3) // three atoms with id's of 1, 2, and 3
(1, 5, 7) // three atoms with id's of 1, 5, and 7
(anyUniqueIDs) // multiple atoms each with a unique idThe atom index may be a 1 if only one atom of this type is allowed, or it may be a range from 1 to some constant or variable.
1 // one atom of this type is allowed, index is always 1
(1..3) // three atoms with indexes 1, 2, and 3
(1..numAtoms) // numAtoms atoms with indexes of 1 to numAtomsThe data may be leaf data in which its data type is listed inside of brackets [], or it may be a nested tree of atoms.
[theDataType] // leaf data of type theDataType
childAtoms // a nested tree of atomsNested QTAtom format definitions [(AtomFormatName)] may appear in a definition.
See Also
Media data atom types
Sprite mediaSprite track propertiesSprite track media formatSprite media atom and data typesSprite button behaviorsSprite media handler track properties QT atom container formatSprite media handler sample QT atom container formatsWired action grammarTween media3D mediaVR mediaNode parent atomNode location atom structure ('nloc')Custom cursor atomNode information atom container