Loading...
Searching...
No Matches
MPEZone Struct Reference

This struct represents an MPE zone. More...

#include <juce_MPEZoneLayout.h>

Public Types

enum class  Type { lower , upper }
 

Public Member Functions

 MPEZone ()=default
 
 MPEZone (Type type, int memberChannels=0, int perNotePitchbend=48, int masterPitchbend=2)
 
bool isLowerZone () const noexcept
 
bool isUpperZone () const noexcept
 
bool isActive () const noexcept
 
int getMasterChannel () const noexcept
 
int getFirstMemberChannel () const noexcept
 
int getLastMemberChannel () const noexcept
 
bool isUsingChannelAsMemberChannel (int channel) const noexcept
 
bool isUsing (int channel) const noexcept
 
bool operator== (const MPEZone &other) const
 
bool operator!= (const MPEZone &other) const
 

Static Public Member Functions

static auto tie (const MPEZone &z)
 

Public Attributes

Type zoneType = Type::lower
 
int numMemberChannels = 0
 
int perNotePitchbendRange = 48
 
int masterPitchbendRange = 2
 

Static Public Attributes

static constexpr int lowerZoneMasterChannel = 1
 
static constexpr int upperZoneMasterChannel = 16
 

Detailed Description

This struct represents an MPE zone.

It can either be a lower or an upper zone, where:

  • A lower zone encompasses master channel 1 and an arbitrary number of ascending MIDI channels, increasing from channel 2.
  • An upper zone encompasses master channel 16 and an arbitrary number of descending MIDI channels, decreasing from channel 15.

It also defines a pitchbend range (in semitones) to be applied for per-note pitchbends and master pitchbends, respectively.

Member Enumeration Documentation

◆ Type

enum class MPEZone::Type
strong
Enumerator
lower 
upper 

Constructor & Destructor Documentation

◆ MPEZone() [1/2]

MPEZone::MPEZone ( )
default

◆ MPEZone() [2/2]

MPEZone::MPEZone ( Type type,
int memberChannels = 0,
int perNotePitchbend = 48,
int masterPitchbend = 2 )

Member Function Documentation

◆ isLowerZone()

bool MPEZone::isLowerZone ( ) const
noexcept

◆ isUpperZone()

bool MPEZone::isUpperZone ( ) const
noexcept

References upper, and zoneType.

◆ isActive()

bool MPEZone::isActive ( ) const
noexcept

References numMemberChannels.

◆ getMasterChannel()

int MPEZone::getMasterChannel ( ) const
noexcept

◆ getFirstMemberChannel()

int MPEZone::getFirstMemberChannel ( ) const
noexcept

◆ getLastMemberChannel()

int MPEZone::getLastMemberChannel ( ) const
noexcept

◆ isUsingChannelAsMemberChannel()

bool MPEZone::isUsingChannelAsMemberChannel ( int channel) const
noexcept

◆ isUsing()

bool MPEZone::isUsing ( int channel) const
noexcept

◆ tie()

static auto MPEZone::tie ( const MPEZone & z)
static

◆ operator==()

bool MPEZone::operator== ( const MPEZone & other) const

References tie().

◆ operator!=()

bool MPEZone::operator!= ( const MPEZone & other) const

References tie().

Member Data Documentation

◆ lowerZoneMasterChannel

int MPEZone::lowerZoneMasterChannel = 1
staticconstexpr

◆ upperZoneMasterChannel

int MPEZone::upperZoneMasterChannel = 16
static

◆ zoneType

Type MPEZone::zoneType = Type::lower

Referenced by isLowerZone(), isUpperZone(), and tie().

◆ numMemberChannels

int MPEZone::numMemberChannels = 0

Referenced by getLastMemberChannel(), isActive(), and tie().

◆ perNotePitchbendRange

int MPEZone::perNotePitchbendRange = 48

Referenced by tie().

◆ masterPitchbendRange

int MPEZone::masterPitchbendRange = 2

Referenced by tie().


The documentation for this struct was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram