Loading...
Searching...
No Matches
juce::ARAMusicalContext Class Reference

## Detailed Description

Base class representing an ARA musical context.

The documentation for this class was generated from the following file:

- juce_audio_processors_headless/utilities/ARA/juce_ARAModelObjects.h

Inheritance diagram for juce::ARAMusicalContext:

## Public Types

using | PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARAMusicalContextProperties>
using | Listener = ARAMusicalContextListener

## Public Member Functions

template<typename Document_t = ARADocument>
Document_t * | getDocument () const noexcept
| Returns the result of ARA::PlugIn::MusicalContext::getDocument() with the pointer cast to ARADocument*.
template<typename RegionSequence_t = ARARegionSequence>
const std::vector< RegionSequence_t * > & | getRegionSequences () const noexcept
| Returns the result of ARA::PlugIn::MusicalContext::getRegionSequences() with the pointers within cast to ARARegionSequence*.
size_t | getNumChildren () const noexcept override
| Returns the number of ARA model objects aggregated by this object.
ARAObject * | getChild (size_t) override
| Returns the child object associated with the given index.
ARAObject * | getParent () override
| Returns the ARA model object that aggregates this object.
void | visit (ARAObjectVisitor &visitor) override
| Allows the retrieval of the concrete type of a model object.
Public Member Functions inherited from juce::ARAListenableModelClass< ARAMusicalContextListener >
| ARAListenableModelClass ()=default
| Constructor.
virtual | ~ARAListenableModelClass ()=default
| Destructor.
void | addListener (ARAMusicalContextListener *l)
| Subscribe `l` to notified by changes to the object.
void | removeListener (ARAMusicalContextListener *l)
| Unsubscribe `l` from object notifications.
void | notifyListeners (Callback &&callback)
| Call the provided callback for each of the added listeners.
Public Member Functions inherited from juce::ARAObject
virtual | ~ARAObject ()=default
| Destructor.
template<typename Fn>
void | traverse (Fn &&fn)
| Implements a depth first traversal of the ARA model graph starting from the current object, and visiting its children recursively.

## Member Typedef Documentation

## PropertiesPtr

using juce::ARAMusicalContext::PropertiesPtr = ARA::PlugIn::PropertiesPtr<ARA::ARAMusicalContextProperties>

## Listener

using juce::ARAMusicalContext::Listener = ARAMusicalContextListener

## Member Functions

## getDocument()

template<typename Document_t = ARADocument>

Document_t * juce::ARAMusicalContext::getDocument | ( |  | ) | const

inline noexcept

Returns the result of ARA::PlugIn::MusicalContext::getDocument() with the pointer cast to ARADocument*.

If you have overridden ARADocumentControllerSpecialisation::doCreateDocument(), then you can use the template parameter to cast the pointers to your subclass of ARADocument.

Referenced by getParent().

## getRegionSequences()

template<typename RegionSequence_t = ARARegionSequence>

const std::vector< RegionSequence_t * > & juce::ARAMusicalContext::getRegionSequences | ( |  | ) | const

inline noexcept

Returns the result of ARA::PlugIn::MusicalContext::getRegionSequences() with the pointers within cast to ARARegionSequence*.

If you have overridden ARADocumentControllerSpecialisation::doCreateRegionSequence(), then you can use the template parameter to cast the pointers to your subclass of ARARegionSequence.

## getNumChildren()

size_t juce::ARAMusicalContext::getNumChildren | ( |  | ) | const

inline override virtual noexcept

Returns the number of ARA model objects aggregated by this object.

Objects that are merely referred to, but not aggregated by the current object are not included in this count, e.g. a referenced RegionSequence does not count as a child of the referring PlaybackRegion.

See the ARA documentation's ARA Model Graph Overview for more details.

Implements juce::ARAObject.

## getChild()

ARAObject * juce::ARAMusicalContext::getChild | ( | size_t | index | ) |

inline override virtual

Returns the child object associated with the given index.

The index should be smaller than the value returned by getNumChildren().

Note that the index of a particular object may change when the ARA model graph is edited.

Implements juce::ARAObject.

## getParent()

ARAObject * juce::ARAMusicalContext::getParent | ( |  | ) |

inline override virtual

Returns the ARA model object that aggregates this object.

Returns nullptr for the ARADocument root object.

Implements juce::ARAObject.

References getDocument().

## visit()

void juce::ARAMusicalContext::visit | ( | ARAObjectVisitor & | visitor | ) |

inline override virtual

Allows the retrieval of the concrete type of a model object.

To use this, create a new class derived from ARAObjectVisitor and override its functions depending on which concrete types you are interested in.

Calling this function inside the function passed to ARAObject::traverse() allows you to map the entire ARA model graph.

Implements juce::ARAObject.

References juce::ARAObjectVisitor::visitMusicalContext().

### Purchase

Get JUCE

### Discover

What's New in JUCE Features

### Learn

Documentaion Tutorials Made with JUCE Resources

### Support

JUCE Forum Newsletter Archive

### About

Contact Us JUCE Legal JUCE Licensing FAQ

### Events

Audio Developer Conference
© Raw Material Software Limited