Mema
Memory Matrix — multi-channel audio matrix monitor and router
Loading...
Searching...
No Matches
Mema::MemaClientControlComponentBase Class Referenceabstract

Abstract base for all Mema.Re client control panels. More...

#include <MemaClientControlComponentBase.h>

+ Inheritance diagram for Mema::MemaClientControlComponentBase:
+ Collaboration diagram for Mema::MemaClientControlComponentBase:

Public Types

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 Member Functions

 MemaClientControlComponentBase ()
 
virtual ~MemaClientControlComponentBase ()
 
virtual void paint (Graphics &)=0
 
virtual void resized ()=0
 
virtual void resetCtrl ()=0
 
virtual void setControlsSize (const ControlsSize &ctrlsSize)
 
const ControlsSizegetControlsSize ()
 
virtual void setIOCount (const std::pair< int, int > &ioCount)
 
const std::pair< int, int > & getIOCount ()
 
virtual void setInputMuteStates (const std::map< std::uint16_t, bool > &inputMuteStates)
 
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 ()
 
virtual void setCrosspointStates (const std::map< std::uint16_t, std::map< std::uint16_t, bool > > &crosspointStates)
 
const std::map< std::uint16_t, std::map< std::uint16_t, bool > > & getCrosspointStates ()
 
virtual void setCrosspointValues (const std::map< std::uint16_t, std::map< std::uint16_t, float > > &crosspointValues)
 
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 ()
 

Public Attributes

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

static constexpr int s_gap = 3
 
static constexpr int s_scrollbarsize = 8
 

Protected Attributes

ControlsSize m_controlsSize = ControlsSize::S
 

Detailed Description

Abstract base for all Mema.Re client control panels.

Defines the common interface for receiving Mema server state (IO counts, mute states, crosspoint values) and propagating user interactions back to the network layer.

Definition at line 34 of file MemaClientControlComponentBase.h.

Member Enumeration Documentation

◆ ControlDirection

Direction of a control strip within the panel layout.

Enumerator
None 

No directional context.

Input 

Strip controls input channels.

Output 

Strip controls output channels.

Definition at line 38 of file MemaClientControlComponentBase.h.

◆ ControlsSize

Size category for rendered control elements.

Enumerator

Small — suited for desktop with many channels.

Medium.

Large — suited for touch screens.

Definition at line 45 of file MemaClientControlComponentBase.h.

Constructor & Destructor Documentation

◆ MemaClientControlComponentBase()

Mema::MemaClientControlComponentBase::MemaClientControlComponentBase ( )

Definition at line 28 of file MemaClientControlComponentBase.cpp.

◆ ~MemaClientControlComponentBase()

Mema::MemaClientControlComponentBase::~MemaClientControlComponentBase ( )
virtual

Definition at line 33 of file MemaClientControlComponentBase.cpp.

Member Function Documentation

◆ addCrosspointStates()

void Mema::MemaClientControlComponentBase::addCrosspointStates ( const std::map< std::uint16_t, std::map< std::uint16_t, bool > > &  crosspointStates)
virtual

◆ addCrosspointValues()

void Mema::MemaClientControlComponentBase::addCrosspointValues ( const std::map< std::uint16_t, std::map< std::uint16_t, float > > &  crosspointValues)
virtual

◆ getClientControlParametersAsString()

const juce::String Mema::MemaClientControlComponentBase::getClientControlParametersAsString ( )

◆ getControlsSize()

const MemaClientControlComponentBase::ControlsSize & Mema::MemaClientControlComponentBase::getControlsSize ( )

◆ getCrosspointParametersAsString()

const juce::String Mema::MemaClientControlComponentBase::getCrosspointParametersAsString ( )

◆ getCrosspointStates()

const std::map< std::uint16_t, std::map< std::uint16_t, bool > > & Mema::MemaClientControlComponentBase::getCrosspointStates ( )

◆ getCrosspointValues()

const std::map< std::uint16_t, std::map< std::uint16_t, float > > & Mema::MemaClientControlComponentBase::getCrosspointValues ( )

◆ getInputMuteParametersAsString()

const juce::String Mema::MemaClientControlComponentBase::getInputMuteParametersAsString ( )

◆ getInputMuteStates()

const std::map< std::uint16_t, bool > & Mema::MemaClientControlComponentBase::getInputMuteStates ( )

◆ getIOCount()

◆ getIOCountParametersAsString()

const juce::String Mema::MemaClientControlComponentBase::getIOCountParametersAsString ( )

Definition at line 160 of file MemaClientControlComponentBase.cpp.

References getIOCount().

Referenced by getClientControlParametersAsString().

◆ getOutputMuteParametersAsString()

const juce::String Mema::MemaClientControlComponentBase::getOutputMuteParametersAsString ( )

◆ getOutputMuteStates()

const std::map< std::uint16_t, bool > & Mema::MemaClientControlComponentBase::getOutputMuteStates ( )

◆ paint()

virtual void Mema::MemaClientControlComponentBase::paint ( Graphics &  )
pure virtual

◆ resetCtrl()

virtual void Mema::MemaClientControlComponentBase::resetCtrl ( )
pure virtual

◆ resized()

virtual void Mema::MemaClientControlComponentBase::resized ( )
pure virtual

◆ setControlsSize()

◆ setCrosspointStates()

void Mema::MemaClientControlComponentBase::setCrosspointStates ( const std::map< std::uint16_t, std::map< std::uint16_t, bool > > &  crosspointStates)
virtual

◆ setCrosspointValues()

void Mema::MemaClientControlComponentBase::setCrosspointValues ( const std::map< std::uint16_t, std::map< std::uint16_t, float > > &  crosspointValues)
virtual

◆ setInputMuteStates()

void Mema::MemaClientControlComponentBase::setInputMuteStates ( const std::map< std::uint16_t, bool > &  inputMuteStates)
virtual

◆ setIOCount()

void Mema::MemaClientControlComponentBase::setIOCount ( const std::pair< int, int > &  ioCount)
virtual

◆ setOutputMuteStates()

void Mema::MemaClientControlComponentBase::setOutputMuteStates ( const std::map< std::uint16_t, bool > &  outputMuteStates)
virtual

Member Data Documentation

◆ m_controlsSize

◆ onCrosspointStatesChanged

std::function<void(const std::map<std::uint16_t, std::map<std::uint16_t, bool>>&)> Mema::MemaClientControlComponentBase::onCrosspointStatesChanged

◆ onCrosspointValuesChanged

std::function<void(const std::map<std::uint16_t, std::map<std::uint16_t, float>>&)> Mema::MemaClientControlComponentBase::onCrosspointValuesChanged

◆ onInputMutesChanged

std::function<void(const std::map<std::uint16_t, bool>&)> Mema::MemaClientControlComponentBase::onInputMutesChanged

◆ onOutputMutesChanged

std::function<void(const std::map<std::uint16_t, bool>&)> Mema::MemaClientControlComponentBase::onOutputMutesChanged

◆ s_gap

◆ s_scrollbarsize

constexpr int Mema::MemaClientControlComponentBase::s_scrollbarsize = 8
staticconstexpr

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