31class ARADocumentController;
33class ARAMusicalContext;
34class ARARegionSequence;
36class ARAAudioModification;
37class ARAPlaybackRegion;
43template <
class ListenerType>
64 template <
typename Callback>
150 template <typename Fn>
184 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN
223 ARA::PlugIn::PropertiesPtr<ARA::ARADocumentProperties> newProperties)
324 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_END
337 using PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARADocumentProperties>;
340 using ARA::PlugIn::Document::Document;
348 template <
typename AudioSource_t = ARAAudioSource>
351 return ARA::PlugIn::Document::getAudioSources<AudioSource_t>();
360 template <
typename MusicalContext_t = ARAMusicalContext>
363 return ARA::PlugIn::Document::getMusicalContexts<MusicalContext_t>();
372 template <
typename RegionSequence_t = ARARegionSequence>
375 return ARA::PlugIn::Document::getRegionSequences<RegionSequence_t>();
398 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN
405 ARA::PlugIn::PropertiesPtr<ARA::ARAMusicalContextProperties> newProperties)
423 ARAContentUpdateScopes scopeFlags)
468 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_END
481 using PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARAMusicalContextProperties>;
484 using ARA::PlugIn::MusicalContext::MusicalContext;
492 template <
typename Document_t = ARADocument>
495 return ARA::PlugIn::MusicalContext::getDocument<Document_t>();
504 template <
typename RegionSequence_t = ARARegionSequence>
507 return ARA::PlugIn::MusicalContext::getRegionSequences<RegionSequence_t>();
531 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN
538 ARA::PlugIn::PropertiesPtr<ARA::ARAPlaybackRegionProperties> newProperties)
556 ARAContentUpdateScopes scopeFlags)
569 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_END
582 using PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARAPlaybackRegionProperties>;
585 using ARA::PlugIn::PlaybackRegion::PlaybackRegion;
593 template <
typename AudioModification_t = ARAAudioModification>
596 return ARA::PlugIn::PlaybackRegion::getAudioModification<AudioModification_t>();
605 template <
typename RegionSequence_t = ARARegionSequence>
608 return ARA::PlugIn::PlaybackRegion::getRegionSequence<RegionSequence_t>();
627 Range<double> getTimeRange (IncludeHeadAndTail includeHeadAndTail = IncludeHeadAndTail::no)
const;
635 Range<int64> getSampleRange (
double sampleRate, IncludeHeadAndTail includeHeadAndTail = IncludeHeadAndTail::no)
const;
638 double getHeadTime()
const;
641 double getTailTime()
const;
653 void notifyContentChanged (ARAContentUpdateScopes scopeFlags,
bool notifyARAHost);
668 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN
675 ARA::PlugIn::PropertiesPtr<ARA::ARARegionSequenceProperties> newProperties)
716 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_END
729 using PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARARegionSequenceProperties>;
732 using ARA::PlugIn::RegionSequence::RegionSequence;
740 template <
typename Document_t = ARADocument>
743 return ARA::PlugIn::RegionSequence::getDocument<Document_t>();
752 template <
typename MusicalContext_t = ARAMusicalContext>
755 return ARA::PlugIn::RegionSequence::getMusicalContext<MusicalContext_t>();
764 template <
typename PlaybackRegion_t = ARAPlaybackRegion>
767 return ARA::PlugIn::RegionSequence::getPlaybackRegions<PlaybackRegion_t>();
788 double getCommonSampleRate()
const;
803 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN
810 ARA::PlugIn::PropertiesPtr<ARA::ARAAudioSourceProperties> newProperties)
838 ARA::ARAAnalysisProgressState state,
908 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_END
921 using PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARAAudioSourceProperties>;
925 using ARA::PlugIn::AudioSource::AudioSource;
933 template <
typename Document_t = ARADocument>
936 return ARA::PlugIn::AudioSource::getDocument<Document_t>();
946 template <
typename AudioModification_t = ARAAudioModification>
949 return ARA::PlugIn::AudioSource::getAudioModifications<AudioModification_t>();
966 void notifyAnalysisProgressStarted();
971 void notifyAnalysisProgressUpdated (
float progress);
975 void notifyAnalysisProgressCompleted();
988 void notifyContentChanged (ARAContentUpdateScopes scopeFlags,
bool notifyARAHost);
1007 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN
1014 ARA::PlugIn::PropertiesPtr<ARA::ARAAudioModificationProperties> newProperties)
1082 ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_END
1095 using PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARAAudioModificationProperties>;
1098 using ARA::PlugIn::AudioModification::AudioModification;
1106 template <
typename AudioSource_t = ARAAudioSource>
1109 return ARA::PlugIn::AudioModification::getAudioSource<AudioSource_t>();
1118 template <
typename PlaybackRegion_t = ARAPlaybackRegion>
1121 return ARA::PlugIn::AudioModification::getPlaybackRegions<PlaybackRegion_t>();
1142 void notifyContentChanged (ARAContentUpdateScopes scopeFlags,
bool notifyARAHost);
#define noexcept
Definition DistrhoDefines.h:72
#define override
Definition DistrhoDefines.h:73
static void deactivate(LV2_Handle instance)
Definition bindings_test_plugin.c:128
Definition juce_ARAModelObjects.h:1093
const std::vector< PlaybackRegion_t * > & getPlaybackRegions() const noexcept
Definition juce_ARAModelObjects.h:1119
void visit(ARAObjectVisitor &visitor) override
Definition juce_ARAModelObjects.h:1130
AudioSource_t * getAudioSource() const noexcept
Definition juce_ARAModelObjects.h:1107
ARA::PlugIn::PropertiesPtr< ARA::ARAAudioModificationProperties > PropertiesPtr
Definition juce_ARAModelObjects.h:1095
ARAAudioModificationListener Listener
Definition juce_ARAModelObjects.h:1096
ARAObject * getParent() override
Definition juce_ARAModelObjects.h:1128
Definition juce_ARAModelObjects.h:1002
virtual void willDestroyAudioModification(ARAAudioModification *audioModification)
Definition juce_ARAModelObjects.h:1077
virtual void didAddPlaybackRegionToAudioModification(ARAAudioModification *audioModification, ARAPlaybackRegion *playbackRegion)
Definition juce_ARAModelObjects.h:1058
virtual void didUpdateAudioModificationProperties(ARAAudioModification *audioModification)
Definition juce_ARAModelObjects.h:1022
virtual void didUpdateAudioModificationContent(ARAAudioModification *audioModification, ARAContentUpdateScopes scopeFlags)
Definition juce_ARAModelObjects.h:1031
virtual void didDeactivateAudioModificationForUndoHistory(ARAAudioModification *audioModification, bool deactivate)
Definition juce_ARAModelObjects.h:1049
virtual void willDeactivateAudioModificationForUndoHistory(ARAAudioModification *audioModification, bool deactivate)
Definition juce_ARAModelObjects.h:1040
virtual ~ARAAudioModificationListener()=default
virtual void willRemovePlaybackRegionFromAudioModification(ARAAudioModification *audioModification, ARAPlaybackRegion *playbackRegion)
Definition juce_ARAModelObjects.h:1068
virtual ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN void willUpdateAudioModificationProperties(ARAAudioModification *audioModification, ARA::PlugIn::PropertiesPtr< ARA::ARAAudioModificationProperties > newProperties)
Definition juce_ARAModelObjects.h:1013
Definition juce_ARAModelObjects.h:919
ARA::ARAAnalysisProgressState ARAAnalysisProgressState
Definition juce_ARAModelObjects.h:922
const std::vector< AudioModification_t * > & getAudioModifications() const noexcept
Definition juce_ARAModelObjects.h:947
Document_t * getDocument() const noexcept
Definition juce_ARAModelObjects.h:934
ARA::PlugIn::AnalysisProgressTracker internalAnalysisProgressTracker
Definition juce_ARAModelObjects.h:992
void visit(ARAObjectVisitor &visitor) override
Definition juce_ARAModelObjects.h:958
ARAAudioSourceListener Listener
Definition juce_ARAModelObjects.h:923
ARAObject * getParent() override
Definition juce_ARAModelObjects.h:956
friend ARADocumentController
Definition juce_ARAModelObjects.h:991
ARA::PlugIn::PropertiesPtr< ARA::ARAAudioSourceProperties > PropertiesPtr
Definition juce_ARAModelObjects.h:921
Definition juce_ARAModelObjects.h:798
virtual void willEnableAudioSourceSamplesAccess(ARAAudioSource *audioSource, bool enable)
Definition juce_ARAModelObjects.h:848
virtual void willDeactivateAudioSourceForUndoHistory(ARAAudioSource *audioSource, bool deactivate)
Definition juce_ARAModelObjects.h:866
virtual void didUpdateAudioSourceAnalysisProgress(ARAAudioSource *audioSource, ARA::ARAAnalysisProgressState state, float progress)
Definition juce_ARAModelObjects.h:837
virtual void willRemoveAudioModificationFromAudioSource(ARAAudioSource *audioSource, ARAAudioModification *audioModification)
Definition juce_ARAModelObjects.h:894
virtual void willDestroyAudioSource(ARAAudioSource *audioSource)
Definition juce_ARAModelObjects.h:903
virtual void didEnableAudioSourceSamplesAccess(ARAAudioSource *audioSource, bool enable)
Definition juce_ARAModelObjects.h:857
virtual ~ARAAudioSourceListener()=default
virtual void didUpdateAudioSourceProperties(ARAAudioSource *audioSource)
Definition juce_ARAModelObjects.h:818
virtual void didAddAudioModificationToAudioSource(ARAAudioSource *audioSource, ARAAudioModification *audioModification)
Definition juce_ARAModelObjects.h:884
virtual ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN void willUpdateAudioSourceProperties(ARAAudioSource *audioSource, ARA::PlugIn::PropertiesPtr< ARA::ARAAudioSourceProperties > newProperties)
Definition juce_ARAModelObjects.h:809
virtual void doUpdateAudioSourceContent(ARAAudioSource *audioSource, ARAContentUpdateScopes scopeFlags)
Definition juce_ARAModelObjects.h:827
virtual void didDeactivateAudioSourceForUndoHistory(ARAAudioSource *audioSource, bool deactivate)
Definition juce_ARAModelObjects.h:875
Definition juce_ARAModelObjects.h:335
ARAObject * getParent() override
Definition juce_ARAModelObjects.h:382
const std::vector< MusicalContext_t * > & getMusicalContexts() const noexcept
Definition juce_ARAModelObjects.h:361
const std::vector< RegionSequence_t * > & getRegionSequences() const noexcept
Definition juce_ARAModelObjects.h:373
const std::vector< AudioSource_t * > & getAudioSources() const noexcept
Definition juce_ARAModelObjects.h:349
void visit(ARAObjectVisitor &visitor) override
Definition juce_ARAModelObjects.h:384
ARADocumentListener Listener
Definition juce_ARAModelObjects.h:338
ARA::PlugIn::PropertiesPtr< ARA::ARADocumentProperties > PropertiesPtr
Definition juce_ARAModelObjects.h:337
Definition juce_ARAModelObjects.h:179
virtual void willRemoveAudioSourceFromDocument(ARADocument *document, ARAAudioSource *audioSource)
Definition juce_ARAModelObjects.h:311
virtual void didAddAudioSourceToDocument(ARADocument *document, ARAAudioSource *audioSource)
Definition juce_ARAModelObjects.h:302
virtual void didAddMusicalContextToDocument(ARADocument *document, ARAMusicalContext *musicalContext)
Definition juce_ARAModelObjects.h:240
virtual void willUpdateDocumentProperties(ARADocument *document, ARA::PlugIn::PropertiesPtr< ARA::ARADocumentProperties > newProperties)
Definition juce_ARAModelObjects.h:222
virtual void didReorderMusicalContextsInDocument(ARADocument *document)
Definition juce_ARAModelObjects.h:262
virtual void willNotifyModelUpdates(ARADocument *document)
Definition juce_ARAModelObjects.h:205
virtual void didAddRegionSequenceToDocument(ARADocument *document, ARARegionSequence *regionSequence)
Definition juce_ARAModelObjects.h:271
virtual void willDestroyDocument(ARADocument *document)
Definition juce_ARAModelObjects.h:319
virtual ~ARADocumentListener()=default
virtual void didUpdateDocumentProperties(ARADocument *document)
Definition juce_ARAModelObjects.h:231
virtual void didNotifyModelUpdates(ARADocument *document)
Definition juce_ARAModelObjects.h:213
virtual void willRemoveMusicalContextFromDocument(ARADocument *document, ARAMusicalContext *musicalContext)
Definition juce_ARAModelObjects.h:249
virtual void didReorderRegionSequencesInDocument(ARADocument *document)
Definition juce_ARAModelObjects.h:293
virtual void didEndEditing(ARADocument *document)
Definition juce_ARAModelObjects.h:197
virtual void willRemoveRegionSequenceFromDocument(ARADocument *document, ARARegionSequence *regionSequence)
Definition juce_ARAModelObjects.h:280
virtual ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN void willBeginEditing(ARADocument *document)
Definition juce_ARAModelObjects.h:189
void addListener(ListenerType *l)
Definition juce_ARAModelObjects.h:56
void removeListener(ListenerType *l)
Definition juce_ARAModelObjects.h:61
virtual ~ARAListenableModelClass()=default
ListenerList< ListenerType > listeners
Definition juce_ARAModelObjects.h:71
ARAListenableModelClass()=default
void notifyListeners(Callback &&callback)
Definition juce_ARAModelObjects.h:65
Definition juce_ARAModelObjects.h:479
const std::vector< RegionSequence_t * > & getRegionSequences() const noexcept
Definition juce_ARAModelObjects.h:505
size_t getNumChildren() const noexcept override
Definition juce_ARAModelObjects.h:510
ARAObject * getParent() override
Definition juce_ARAModelObjects.h:514
void visit(ARAObjectVisitor &visitor) override
Definition juce_ARAModelObjects.h:516
ARAMusicalContextListener Listener
Definition juce_ARAModelObjects.h:482
ARAObject * getChild(size_t) override
Definition juce_ARAModelObjects.h:512
ARA::PlugIn::PropertiesPtr< ARA::ARAMusicalContextProperties > PropertiesPtr
Definition juce_ARAModelObjects.h:481
Document_t * getDocument() const noexcept
Definition juce_ARAModelObjects.h:493
Definition juce_ARAModelObjects.h:394
virtual void didAddRegionSequenceToMusicalContext(ARAMusicalContext *musicalContext, ARARegionSequence *regionSequence)
Definition juce_ARAModelObjects.h:432
virtual ~ARAMusicalContextListener()=default
virtual void didReorderRegionSequencesInMusicalContext(ARAMusicalContext *musicalContext)
Definition juce_ARAModelObjects.h:455
virtual ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN void willUpdateMusicalContextProperties(ARAMusicalContext *musicalContext, ARA::PlugIn::PropertiesPtr< ARA::ARAMusicalContextProperties > newProperties)
Definition juce_ARAModelObjects.h:404
virtual void doUpdateMusicalContextContent(ARAMusicalContext *musicalContext, ARAContentUpdateScopes scopeFlags)
Definition juce_ARAModelObjects.h:422
virtual void willRemoveRegionSequenceFromMusicalContext(ARAMusicalContext *musicalContext, ARARegionSequence *regionSequence)
Definition juce_ARAModelObjects.h:442
virtual void didUpdateMusicalContextProperties(ARAMusicalContext *musicalContext)
Definition juce_ARAModelObjects.h:413
virtual void willDestroyMusicalContext(ARAMusicalContext *musicalContext)
Definition juce_ARAModelObjects.h:463
Definition juce_ARAModelObjects.h:118
virtual ARAObject * getChild(size_t index)=0
virtual size_t getNumChildren() const noexcept=0
virtual ARAObject * getParent()=0
void traverse(Fn &&fn)
Definition juce_ARAModelObjects.h:151
virtual void visit(ARAObjectVisitor &visitor)=0
virtual ~ARAObject()=default
Definition juce_ARAModelObjects.h:88
virtual void visitAudioSource(juce::ARAAudioSource &)
Definition juce_ARAModelObjects.h:109
virtual void visitMusicalContext(juce::ARAMusicalContext &)
Definition juce_ARAModelObjects.h:97
virtual void visitDocument(juce::ARADocument &)
Definition juce_ARAModelObjects.h:94
virtual void visitRegionSequence(juce::ARARegionSequence &)
Definition juce_ARAModelObjects.h:100
virtual void visitAudioModification(juce::ARAAudioModification &)
Definition juce_ARAModelObjects.h:106
virtual void visitPlaybackRegion(juce::ARAPlaybackRegion &)
Definition juce_ARAModelObjects.h:103
virtual ~ARAObjectVisitor()=default
Definition juce_ARAModelObjects.h:580
IncludeHeadAndTail
Definition juce_ARAModelObjects.h:621
@ no
Definition juce_ARAModelObjects.h:621
void visit(ARAObjectVisitor &visitor) override
Definition juce_ARAModelObjects.h:617
ARAPlaybackRegionListener Listener
Definition juce_ARAModelObjects.h:583
RegionSequence_t * getRegionSequence() const noexcept
Definition juce_ARAModelObjects.h:606
AudioModification_t * getAudioModification() const noexcept
Definition juce_ARAModelObjects.h:594
ARA::PlugIn::PropertiesPtr< ARA::ARAPlaybackRegionProperties > PropertiesPtr
Definition juce_ARAModelObjects.h:582
size_t getNumChildren() const noexcept override
Definition juce_ARAModelObjects.h:611
ARAObject * getChild(size_t) override
Definition juce_ARAModelObjects.h:613
Definition juce_ARAModelObjects.h:526
virtual void didUpdatePlaybackRegionContent(ARAPlaybackRegion *playbackRegion, ARAContentUpdateScopes scopeFlags)
Definition juce_ARAModelObjects.h:555
virtual ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN void willUpdatePlaybackRegionProperties(ARAPlaybackRegion *playbackRegion, ARA::PlugIn::PropertiesPtr< ARA::ARAPlaybackRegionProperties > newProperties)
Definition juce_ARAModelObjects.h:537
virtual ~ARAPlaybackRegionListener()=default
virtual void willDestroyPlaybackRegion(ARAPlaybackRegion *playbackRegion)
Definition juce_ARAModelObjects.h:564
virtual void didUpdatePlaybackRegionProperties(ARAPlaybackRegion *playbackRegion)
Definition juce_ARAModelObjects.h:546
Definition juce_ARAModelObjects.h:727
ARARegionSequenceListener Listener
Definition juce_ARAModelObjects.h:730
ARA::PlugIn::PropertiesPtr< ARA::ARARegionSequenceProperties > PropertiesPtr
Definition juce_ARAModelObjects.h:729
Document_t * getDocument() const noexcept
Definition juce_ARAModelObjects.h:741
const std::vector< PlaybackRegion_t * > & getPlaybackRegions() const noexcept
Definition juce_ARAModelObjects.h:765
void visit(ARAObjectVisitor &visitor) override
Definition juce_ARAModelObjects.h:776
MusicalContext_t * getMusicalContext() const noexcept
Definition juce_ARAModelObjects.h:753
ARAObject * getParent() override
Definition juce_ARAModelObjects.h:774
Definition juce_ARAModelObjects.h:663
virtual void didUpdateRegionSequenceProperties(ARARegionSequence *regionSequence)
Definition juce_ARAModelObjects.h:683
virtual void didAddPlaybackRegionToRegionSequence(ARARegionSequence *regionSequence, ARAPlaybackRegion *playbackRegion)
Definition juce_ARAModelObjects.h:702
virtual void willDestroyRegionSequence(ARARegionSequence *regionSequence)
Definition juce_ARAModelObjects.h:711
virtual ARA_DISABLE_UNREFERENCED_PARAMETER_WARNING_BEGIN void willUpdateRegionSequenceProperties(ARARegionSequence *regionSequence, ARA::PlugIn::PropertiesPtr< ARA::ARARegionSequenceProperties > newProperties)
Definition juce_ARAModelObjects.h:674
virtual ~ARARegionSequenceListener()=default
virtual void willRemovePlaybackRegionFromRegionSequence(ARARegionSequence *regionSequence, ARAPlaybackRegion *playbackRegion)
Definition juce_ARAModelObjects.h:692
Definition juce_ListenerList.h:70
Definition juce_Range.h:40
int * l
Definition inflate.c:1579
register unsigned i
Definition inflate.c:1575
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition carla_juce.cpp:31
@ no
Definition juce_AlertWindow.cpp:567
@ yes
Definition juce_AlertWindow.cpp:567
void ignoreUnused(Types &&...) noexcept
Definition juce_MathsFunctions.h:333
const char const char const char const char char * fn
Definition swell-functions.h:168
RECT const char void(* callback)(const char *droppath))) SWELL_API_DEFINE(BOOL
Definition swell-functions.h:1004
#define const
Definition zconf.h:137