![]() |
Mema
Memory Matrix — multi-channel audio matrix monitor and router
|
2-D spatial panning remote control for Mema.Re. More...
#include <PanningControlComponent.h>
Inheritance diagram for Mema::PanningControlComponent:
Collaboration diagram for Mema::PanningControlComponent:Public Member Functions | |
| PanningControlComponent () | |
| virtual | ~PanningControlComponent () |
| void | paint (Graphics &) override |
| void | resized () override |
| void | lookAndFeelChanged () override |
| void | resetCtrl () override |
| void | setControlsSize (const ControlsSize &ctrlsSize) override |
| void | setIOCount (const std::pair< int, int > &ioCount) override |
| void | setInputMuteStates (const std::map< std::uint16_t, bool > &inputMuteStates) override |
| void | setCrosspointStates (const std::map< std::uint16_t, std::map< std::uint16_t, bool > > &crosspointStates) override |
| void | setCrosspointValues (const std::map< std::uint16_t, std::map< std::uint16_t, float > > &crosspointValues) override |
| void | setChannelConfig (const juce::AudioChannelSet &channelConfiguration) |
| const juce::AudioChannelSet & | getChannelConfig () |
| void | setExternalControlSettings (int ADMOSCPort, const juce::IPAddress &ADMOSCControllerIP, int ADMOSCControllerPort) |
| void | handleExternalControlParameter (int objNum, std::uint16_t objType, void *sender=nullptr) |
Public Member Functions inherited from Mema::MemaClientControlComponentBase | |
| MemaClientControlComponentBase () | |
| virtual | ~MemaClientControlComponentBase () |
| const ControlsSize & | getControlsSize () |
| const std::pair< int, int > & | getIOCount () |
| const std::map< std::uint16_t, bool > & | getInputMuteStates () |
| virtual void | setOutputMuteStates (const std::map< std::uint16_t, bool > &outputMuteStates) |
| const std::map< std::uint16_t, bool > & | getOutputMuteStates () |
| const std::map< std::uint16_t, std::map< std::uint16_t, bool > > & | getCrosspointStates () |
| const std::map< std::uint16_t, std::map< std::uint16_t, float > > & | getCrosspointValues () |
| virtual void | addCrosspointStates (const std::map< std::uint16_t, std::map< std::uint16_t, bool > > &crosspointStates) |
| virtual void | addCrosspointValues (const std::map< std::uint16_t, std::map< std::uint16_t, float > > &crosspointValues) |
| const juce::String | getClientControlParametersAsString () |
| const juce::String | getIOCountParametersAsString () |
| const juce::String | getInputMuteParametersAsString () |
| const juce::String | getOutputMuteParametersAsString () |
| const juce::String | getCrosspointParametersAsString () |
Protected Member Functions | |
| void | changeInputPosition (std::uint16_t channel, std::optional< float > xValOpt, std::optional< float > yValOpt, std::optional< float > sharpnessOpt, std::optional< int > layerOpt, juce::NotificationType notification=juce::dontSendNotification) |
| void | processOutputDistances (std::uint16_t channel, const std::map< juce::AudioChannelSet::ChannelType, float > &channelToOutputsDists) |
| void | selectInputChannel (std::uint16_t channel) |
| void | rebuildControls (bool force=false) |
| void | rebuildInputControls (bool force=false) |
Additional Inherited Members | |
Public Types inherited from Mema::MemaClientControlComponentBase | |
| enum | ControlDirection { None = 0 , Input , Output } |
| Direction of a control strip within the panel layout. More... | |
| enum | ControlsSize { S = 35 , M = 50 , L = 65 } |
| Size category for rendered control elements. More... | |
Public Attributes inherited from Mema::MemaClientControlComponentBase | |
| std::function< void(const std::map< std::uint16_t, bool > &)> | onInputMutesChanged |
| std::function< void(const std::map< std::uint16_t, bool > &)> | onOutputMutesChanged |
| std::function< void(const std::map< std::uint16_t, std::map< std::uint16_t, bool > > &)> | onCrosspointStatesChanged |
| std::function< void(const std::map< std::uint16_t, std::map< std::uint16_t, float > > &)> | onCrosspointValuesChanged |
Static Public Attributes inherited from Mema::MemaClientControlComponentBase | |
| static constexpr int | s_gap = 3 |
| static constexpr int | s_scrollbarsize = 8 |
Protected Attributes inherited from Mema::MemaClientControlComponentBase | |
| ControlsSize | m_controlsSize = ControlsSize::S |
2-D spatial panning remote control for Mema.Re.
Hosts a TwoDFieldMultisliderComponent for interactive speaker-layout panning and an ADMOSController for receiving external ADM-OSC position/mute updates. Sends updated ControlParametersMessage payloads back to Mema via the onMessageReadyToSend callback.
Definition at line 49 of file PanningControlComponent.h.
| Mema::PanningControlComponent::PanningControlComponent | ( | ) |
Definition at line 32 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::addCrosspointStates(), Mema::MemaClientControlComponentBase::addCrosspointValues(), changeInputPosition(), Mema::MemaClientControlComponentBase::getCrosspointStates(), Mema::MemaClientControlComponentBase::getCrosspointValues(), handleExternalControlParameter(), Mema::MemaClientControlComponentBase::onCrosspointStatesChanged, Mema::MemaClientControlComponentBase::onCrosspointValuesChanged, processOutputDistances(), Mema::MemaClientControlComponentBase::s_gap, and selectInputChannel().
|
virtual |
Definition at line 79 of file PanningControlComponent.cpp.
|
protected |
Definition at line 403 of file PanningControlComponent.cpp.
References Mema::ADMOSController::External, Mema::ADMOSController::ADMOSCParameterX::getParameterVal(), Mema::ADMOSController::ADMOSCParameterY::getParameterVal(), Mema::ADMOSController::ADMOSCParameterZ::getParameterVal(), Mema::ADMOSController::ADMOSCParameterWidth::getParameterVal(), Mema::ADMOSController::None, Mema::ADMOSController::Width, Mema::ADMOSController::X, Mema::ADMOSController::Y, and Mema::ADMOSController::Z.
Referenced by handleExternalControlParameter(), and PanningControlComponent().
| const juce::AudioChannelSet & Mema::PanningControlComponent::getChannelConfig | ( | ) |
Definition at line 176 of file PanningControlComponent.cpp.
| void Mema::PanningControlComponent::handleExternalControlParameter | ( | int | objNum, |
| std::uint16_t | objType, | ||
| void * | sender = nullptr |
||
| ) |
Definition at line 193 of file PanningControlComponent.cpp.
References changeInputPosition(), Mema::ADMOSController::Empty, Mema::ADMOSController::ADMOSCParameterX::getParameterVal(), Mema::ADMOSController::ADMOSCParameterY::getParameterVal(), Mema::ADMOSController::ADMOSCParameterZ::getParameterVal(), Mema::ADMOSController::ADMOSCParameterWidth::getParameterVal(), Mema::ADMOSController::ADMOSCParameterMute::getParameterVal(), Mema::ADMOSController::ADMOSCParameterXY::getParameterVals(), Mema::ADMOSController::ADMOSCParameterXYZ::getParameterVals(), Mema::ADMOSController::Mute, setInputMuteStates(), Mema::ADMOSController::Width, Mema::ADMOSController::X, Mema::ADMOSController::XY, Mema::ADMOSController::XYZ, Mema::ADMOSController::Y, and Mema::ADMOSController::Z.
Referenced by PanningControlComponent().
|
override |
Definition at line 127 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::getIOCount().
|
overridevirtual |
Implements Mema::MemaClientControlComponentBase.
Definition at line 83 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::m_controlsSize, and Mema::MemaClientControlComponentBase::s_gap.
|
protected |
Definition at line 467 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::addCrosspointStates(), Mema::MemaClientControlComponentBase::addCrosspointValues(), Mema::MemaClientControlComponentBase::onCrosspointStatesChanged, and Mema::MemaClientControlComponentBase::onCrosspointValuesChanged.
Referenced by PanningControlComponent().
|
protected |
Definition at line 181 of file PanningControlComponent.cpp.
References rebuildInputControls(), and resized().
Referenced by selectInputChannel(), setControlsSize(), and setIOCount().
|
protected |
Definition at line 294 of file PanningControlComponent.cpp.
References Mema::ADMOSController::External, Mema::MemaClientControlComponentBase::getInputMuteStates(), Mema::MemaClientControlComponentBase::getIOCount(), Mema::MemaClientControlComponentBase::m_controlsSize, Mema::MemaClientControlComponentBase::onInputMutesChanged, selectInputChannel(), and Mema::MemaClientControlComponentBase::setInputMuteStates().
Referenced by rebuildControls().
|
overridevirtual |
Implements Mema::MemaClientControlComponentBase.
Definition at line 148 of file PanningControlComponent.cpp.
References selectInputChannel(), and setIOCount().
|
overridevirtual |
Implements Mema::MemaClientControlComponentBase.
Definition at line 95 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::m_controlsSize, Mema::MemaClientControlComponentBase::s_gap, and Mema::MemaClientControlComponentBase::s_scrollbarsize.
Referenced by rebuildControls().
|
protected |
Definition at line 384 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::getIOCount(), and rebuildControls().
Referenced by PanningControlComponent(), rebuildInputControls(), resetCtrl(), setControlsSize(), and setIOCount().
| void Mema::PanningControlComponent::setChannelConfig | ( | const juce::AudioChannelSet & | channelConfiguration | ) |
Definition at line 168 of file PanningControlComponent.cpp.
|
overridevirtual |
Reimplemented from Mema::MemaClientControlComponentBase.
Definition at line 137 of file PanningControlComponent.cpp.
References rebuildControls(), selectInputChannel(), and Mema::MemaClientControlComponentBase::setControlsSize().
|
overridevirtual |
Reimplemented from Mema::MemaClientControlComponentBase.
Definition at line 368 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::setCrosspointStates().
|
overridevirtual |
Reimplemented from Mema::MemaClientControlComponentBase.
Definition at line 376 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::setCrosspointValues().
| void Mema::PanningControlComponent::setExternalControlSettings | ( | int | ADMOSCPort, |
| const juce::IPAddress & | ADMOSCControllerIP, | ||
| int | ADMOSCControllerPort | ||
| ) |
Definition at line 187 of file PanningControlComponent.cpp.
|
overridevirtual |
Reimplemented from Mema::MemaClientControlComponentBase.
Definition at line 354 of file PanningControlComponent.cpp.
References Mema::MemaClientControlComponentBase::setInputMuteStates().
Referenced by handleExternalControlParameter().
|
overridevirtual |
Reimplemented from Mema::MemaClientControlComponentBase.
Definition at line 154 of file PanningControlComponent.cpp.
References rebuildControls(), selectInputChannel(), and Mema::MemaClientControlComponentBase::setIOCount().
Referenced by resetCtrl().