![]() |
Audacity 3.2.0
|
Holds multiple objects of the parameter type as a single attachment to Track. More...
#include <ChannelAttachments.h>
Public Member Functions | |
| ~ChannelAttachments () override=default | |
| template<typename F , typename sfinae = std::enable_if_t<std::is_convertible_v< std::invoke_result_t<F, Track&, size_t>, std::shared_ptr<Attachment> >>> | |
| ChannelAttachments (Track &track, F &&f) | |
| Type-erasing constructor. More... | |
Public Member Functions inherited from ChannelAttachmentsBase | |
| ChannelAttachmentsBase (Track &track, Factory factory) | |
| ~ChannelAttachmentsBase () override | |
| ChannelAttachmentsBase (const ChannelAttachmentsBase &)=delete | |
| ChannelAttachmentsBase & | operator= (const ChannelAttachmentsBase &)=delete |
| ChannelAttachmentsBase (ChannelAttachmentsBase &)=delete | |
| ChannelAttachmentsBase & | operator= (ChannelAttachmentsBase &&other) |
| size_t | Size () const |
| void | CopyTo (Track &track) const override |
| Copy state, for undo/redo purposes. More... | |
| void | Reparent (const std::shared_ptr< Track > &parent) override |
| Object may be shared among tracks but hold a special back-pointer to one of them; reassign it. More... | |
| void | WriteXMLAttributes (XMLWriter &writer) const override |
| Serialize persistent attributes. More... | |
| bool | HandleXMLAttribute (const std::string_view &attr, const XMLAttributeValueView &valueView) override |
| Deserialize an attribute, returning true if recognized. More... | |
| void | MakeStereo (const std::shared_ptr< Track > &parent, ChannelAttachmentsBase &&other) |
| void | SwapChannels (const std::shared_ptr< Track > &parent) |
| void | Erase (const std::shared_ptr< Track > &parent, size_t index) |
Public Member Functions inherited from TrackAttachment | |
| virtual | ~TrackAttachment () |
| virtual void | CopyTo (Track &track) const |
| Copy state, for undo/redo purposes. More... | |
| virtual void | Reparent (const std::shared_ptr< Track > &parent) |
| Object may be shared among tracks but hold a special back-pointer to one of them; reassign it. More... | |
| virtual void | WriteXMLAttributes (XMLWriter &) const |
| Serialize persistent attributes. More... | |
| virtual bool | HandleXMLAttribute (const std::string_view &attr, const XMLAttributeValueView &valueView) |
| Deserialize an attribute, returning true if recognized. More... | |
Public Member Functions inherited from ClientData::Base | |
| virtual | ~Base () |
Static Public Member Functions | |
| static Attachment & | Get (const AttachedTrackObjects::RegisteredFactory &key, Track &track, size_t iChannel) |
| static Attachment * | Find (const AttachedTrackObjects::RegisteredFactory &key, Track *pTrack, size_t iChannel) |
Additional Inherited Members | |
Public Types inherited from ChannelAttachmentsBase | |
| using | Factory = std::function< std::shared_ptr< ChannelAttachment >(Track &, size_t)> |
Static Protected Member Functions inherited from ChannelAttachmentsBase | |
| static ChannelAttachment & | Get (const AttachedTrackObjects::RegisteredFactory &key, Track &track, size_t iChannel) |
| static ChannelAttachment * | Find (const AttachedTrackObjects::RegisteredFactory &key, Track *pTrack, size_t iChannel) |
Holds multiple objects of the parameter type as a single attachment to Track.
Definition at line 129 of file ChannelAttachments.h.
|
overridedefault |
|
inlineexplicit |
Type-erasing constructor.
| F | returns a shared pointer to Attachment (or some subtype of it) |
f never returns nullf may assume the precondition that the given channel index is less than the given track's number of channels
Definition at line 170 of file ChannelAttachments.h.
|
inlinestatic |
!pTrack || iChannel < pTrack->NChannels() Definition at line 148 of file ChannelAttachments.h.
References ChannelAttachmentsBase::Find(), anonymous_namespace{StretchingSequenceIntegrationTest.cpp}::iChannel, and key.
Referenced by ChannelView::FindFromChannelGroup().
|
inlinestatic |
iChannel < track.NChannels() Definition at line 138 of file ChannelAttachments.h.
References ChannelAttachmentsBase::Get(), anonymous_namespace{StretchingSequenceIntegrationTest.cpp}::iChannel, and key.
Referenced by TrackPanelResizerCell::GetFromChannelGroup(), and ChannelView::GetFromChannelGroup().