class InterpTrackAkEvent extends InterpTrack native; cpptext { // InterpTrack interface virtual INT GetNumKeyframes() const; virtual void GetTimeRange(FLOAT& StartTime, FLOAT& EndTime) const; virtual FLOAT GetKeyframeTime(INT KeyIndex) const; virtual INT AddKeyframe(FLOAT Time, UInterpTrackInst* TrInst, EInterpCurveMode InitInterpMode); virtual INT SetKeyframeTime(INT KeyIndex, FLOAT NewKeyTime, UBOOL bUpdateOrder=true); virtual void RemoveKeyframe(INT KeyIndex); virtual INT DuplicateKeyframe(INT KeyIndex, FLOAT NewKeyTime); virtual UBOOL GetClosestSnapPosition(FLOAT InPosition, TArray &IgnoreKeys, FLOAT& OutPosition); virtual void PreviewUpdateTrack(FLOAT NewPosition, UInterpTrackInst* TrInst); virtual void UpdateTrack(FLOAT NewPosition, UInterpTrackInst* TrInst, UBOOL bJump); /** Get the name of the class used to help out when adding tracks, keys, etc. in UnrealEd. * @return String name of the helper class.*/ virtual const FString GetEdHelperClassName() const; virtual class UMaterial* GetTrackIcon() const; virtual void DrawTrack( FCanvas* Canvas, UInterpGroup* Group, const FInterpTrackDrawParams& Params ); // InterpTrackAkEvent interface UAkEvent* GetAkEventAtPosition(FLOAT InPosition); } /** Information for one sound in the track. */ struct native AkEventTrackKey { var float Time; var() AkEvent Event; }; /** Array of sounds to play at specific times. */ var array AkEvents; defaultproperties { TrackInstClass=class'AkAudio.InterpTrackInstAkEvent' TrackTitle="AkEvent" }