TSequencerChannelInterfaceCommon

Templated channel interface that calls overloaded functions matching the necessary channel types.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Sequencer

Header

/Engine/Source/Editor/Sequencer/Public/SequencerChannelInterface.h

Include

#include "SequencerChannelInterface.h"

Syntax

template<typename ChannelType>
struct TSequencerChannelInterfaceCommon : public ISequencerChannelInterface

Remarks

Templated channel interface that calls overloaded functions matching the necessary channel types. Designed this way to allow for specific customization of key-channel behavior without having to reimplement swathes of boilerplate. This base interface implements common functions that do not require extended editor data.

Behavior can be overridden for any channel type by declaring an overloaded function for the relevant channel type in the same namespace as the channel. For instance, to implement how to retrieve key times from a channel, implement the following function:

void GetKeyTimes(FMyChannelType* InChannel, TArrayView<const FKeyHandle> InHandles, TArrayView<FFrameNumber> OutKeyTimes);

Overridden from ISequencerChannelInterface

Name Description

Public function Virtual Const

bool

 

CanCreateKeyEditor_Raw

(
    const FMovieSceneChannel* InCh...
)

Check whether an editor on the sequencer node tree can be created for the specified channel

Public function Virtual Const

void

 

CopyKeys_Raw

(
    FMovieSceneChannel* InChannel,
    const UMovieSceneSection* Sect...,
    FName KeyAreaName,
    FMovieSceneClipboardBuilder& Clipb...,
    TArrayView< const FKeyHandle > KeyM...
)

Copy all the keys specified in KeyMask to the specified clipboard

Public function Virtual Const

TUniquePtr< ...

 

CreateCurveEditorModel_Raw

(
    const FMovieSceneChannelHandle& In...,
    UMovieSceneSection* OwningSect...,
    TSharedRef< ISequencer > InSequence...
)

Create a new model for this channel that can be used on the curve editor interface

Public function Virtual Const

TSharedRef< ...

 

CreateKeyEditor_Raw

(
    const FMovieSceneChannelHandle& Ch...,
    UMovieSceneSection* Section,
    const FGuid& InObjectBindingID,
    TWeakPtr< FTrackInstancePropertyBin...,
    TWeakPtr< ISequencer > Sequencer
)

Create an editor on the sequencer node tree

Public function Virtual Const

void

 

DrawKeys_Raw

(
    FMovieSceneChannel* InChannel,
    TArrayView< const FKeyHandle > InKe...,
    const UMovieSceneSection* InOw...,
    TArrayView< FKeyDrawParams > OutKey...
)

Gather information on how to draw the specified keys

Public function Virtual Const

void

 

ExtendKeyMenu_Raw

(
    FMenuBuilder& MenuBuilder,
    TArrayView< const FExtendKeyMenuPar...,
    TWeakPtr< ISequencer > InSequencer
)

Extend the key context menu

Public function Virtual Const

void

 

ExtendSectionMenu_Raw

(
    FMenuBuilder& MenuBuilder,
    TArrayView< const FMovieSceneChanne...,
    TArrayView< UMovieSceneSection*...,
    TWeakPtr< ISequencer > InSequencer
)

Extend the section context menu

Public function Virtual Const

TSharedPtr< ...

 

GetKeyStruct_Raw

(
    FMovieSceneChannelHandle InChannel,
    FKeyHandle KeyHandle
)

Get an editable key struct for the specified key

Public function Virtual Const

void

 

PasteKeys_Raw

(
    FMovieSceneChannel* InChannel,
    UMovieSceneSection* Section,
    const FMovieSceneClipboardKeyTrack ...,
    const FMovieSceneClipboardEnvironme...,
    const FSequencerPasteEnvironment& ...,
    TArray< FKeyHandle >& OutPastedKey...
)

Paste the specified key track into the specified channel

Public function Virtual Const

bool

 

SupportsCurveEditorModels_Raw

(
    const FMovieSceneChannelHandle& In...
)

Whether this channel supports curve models

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss