2.8.15 ExtTimeNodeContainer

Referenced by: ParaBuildLevel, PP10SlideBinaryTagExtension

A container record that specifies a time node. This time node is used to store all information necessary to cause a time-based or an action-based effect to occur during a slide show. Each time node effect has a corresponding object to which the effect applies.

At most one of the following fields MUST exist: timeAnimateBehavior, timeColorBehavior, timeEffectBehavior, timeMotionBehavior, timeRotationBehavior, timeScaleBehavior, timeSetBehavior, or timeCommandBehavior.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

rh

...

timeNodeAtom (40 bytes)

...

...

timePropertyList (variable)

...

timeAnimateBehavior (variable)

...

timeColorBehavior (variable)

...

timeEffectBehavior (variable)

...

timeMotionBehavior (variable)

...

timeRotationBehavior (variable)

...

timeScaleBehavior (variable)

...

timeSetBehavior (variable)

...

timeCommandBehavior (variable)

...

clientVisualElement (variable)

...

timeIterateDataAtom (28 bytes, optional)

...

...

timeSequenceDataAtom (28 bytes, optional)

...

...

rgBeginTimeCondition (variable)

...

rgEndTimeCondition (variable)

...

timeEndSyncTimeCondition (variable)

...

rgTimeModifierAtom (variable)

...

rgSubEffect (variable)

...

rgExtTimeNodeChildren (variable)

...

rh (8 bytes): A RecordHeader structure (section 2.3.1) that specifies the header for this record. Subfields are further specified in the following table.

Field

Meaning

rh.recVer

MUST be 0xF.

rh.recInstance

MUST be 0x001.

rh.recType

MUST be an RT_TimeExtTimeNodeContainer.

timeNodeAtom (40 bytes): A TimeNodeAtom record that specifies time-based attributes of this time node.

timePropertyList (variable): An optional TimePropertyList4TimeNodeContainer record (section 2.8.18) that specifies a list of attributes of the time node.

timeAnimateBehavior (variable): An optional TimeAnimateBehaviorContainer record (section 2.8.29) that specifies a generic animation behavior that can animate any property of an object. It MUST exist only if timeNodeAtom.type is TL_TNT_Behavior.

timeColorBehavior (variable): An optional TimeColorBehaviorContainer record (section 2.8.52) that specifies a color animation behavior that changes the color of an object. It MUST exist only if timeNodeAtom.type is TL_TNT_Behavior.

timeEffectBehavior (variable): An optional TimeEffectBehaviorContainer record (section 2.8.61) that specifies an effect-animation behavior that transforms the image of an object. It MUST exist only if timeNodeAtom.type is TL_TNT_Behavior.

timeMotionBehavior (variable): An optional TimeMotionBehaviorContainer record (section 2.8.63) that specifies a motion-animation behavior that moves a positioned object along a path. It MUST exist only if timeNodeAtom.type is TL_TNT_Behavior.

timeRotationBehavior (variable): An optional TimeRotationBehaviorContainer record (section 2.8.65) that specifies a rotation animation behavior that rotates an object. It MUST exist only if timeNodeAtom.type is TL_TNT_Behavior.

timeScaleBehavior (variable): An optional TimeScaleBehaviorContainer record (section 2.8.67) that specifies a scale-animation behavior that changes the size of an object. It MUST exist only if timeNodeAtom.type is TL_TNT_Behavior.

timeSetBehavior (variable): An optional TimeSetBehaviorContainer record (section 2.8.69) that specifies a set-animation behavior that assigns a value to a property of an object. It MUST exist if timeNodeAtom.type is TL_TNT_Behavior.

timeCommandBehavior (variable): An optional TimeCommandBehaviorContainer record (section 2.8.71) that specifies a command-animation behavior that performs a command as an animation. It MUST exist only if timeNodeAtom.type field is TL_TNT_Behavior.

clientVisualElement (variable): An optional ClientVisualElementContainer record (section 2.8.44) that specifies a media file to be played. It MUST exist only if timeNodeAtom.type is TL_TNT_Media.

timeIterateDataAtom (28 bytes): An optional TimeIterateDataAtom record that specifies how an animation is applied to the subelements of a target object for a repeated effect.

timeSequenceDataAtom (28 bytes): An optional TimeSequenceDataAtom record that specifies sequencing information for the child nodes of this time node. It MUST exist only if timeNodeAtom.type is TL_TNT_Sequential.

rgBeginTimeCondition (variable): An optional array of TimeConditionContainer record (section 2.8.75) that specifies the time conditions that MUST be used in one of the following situations:

§ When the rh.recInstance field of a TimeConditionContainer record is TL_CT_Begin, any of these time conditions determines when this time node will be activated.

§ When the rh.recInstance field of a TimeConditionContainer record is TL_CT_Next and the timeNodeAtom.type field is TL_TNT_Sequential, any of these time conditions determines when the next child time node will be activated.

The array continues while the rh.recType field of the TimeConditionContainer record is equal to RT_TimeConditionContainer and one of the two aforementioned situations applies.

rgEndTimeCondition (variable): An optional array of TimeConditionContainer records (section 2.8.75) that specifies the time conditions that MUST be utilized in one of the following situations:

§ When the rh.recInstance field of a TimeConditionContainer record is TL_CT_End, any of these time conditions determines when this time node will be deactivated.

§ When the rh.recInstance field of a TimeConditionContainer record is TL_CT_Previous and the timeNodeAtom.type field is TL_TNT_Sequential, any of these time conditions determines when the next child time node will be deactivated.

The array continues while the rh.recType field of the TimeConditionContainer record is equal to RT_TimeConditionContainer and one of the two aforementioned situations is applies.

timeEndSyncTimeCondition (variable): An optional TimeConditionContainer record (section 2.8.75) that specifies how to synchronize the stopping of the child nodes of this time node. The timeEndSyncTimeCondition.rh.recInstance sub-field MUST be TL_CT_EndSync.

rgTimeModifierAtom (variable): An optional array of TimeModifierAtom records that specifies the modification records that store the type of data to be modified and the new data value. The array continues while the rh.recType field of the TimeModifierAtom record is equal to RT_TimeModifier.

rgSubEffect (variable): An optional array of SubEffectContainer that specifies the subordinate time nodes whose start time depends on the relation to this time node. The relationship is specified in the TimeMasterRelType record contained in the timePropertyList field of the SubEffectContainer record. The array continues while the rh.recType field of the SubEffectContainer record is equal to RT_TimeSubEffectContainer.

rgExtTimeNodeChildren (variable): An array of ExtTimeNodeContainer that specifies the child time nodes of this time node.