PluginHostType Class Reference
juce_audio_plugin_client » utility

A useful utility class to determine the host or DAW in which your plugin is loaded. More...

## Public Types

enum

HostType {
UnknownHost, AbletonLive6, AbletonLive7, AbletonLive8,
AbletonLive9, AbletonLive10, AbletonLiveGeneric, AdobeAudition,
AdobePremierePro, AppleGarageBand, AppleLogic, AppleMainStage,
Ardour, AvidProTools, BitwigStudio, CakewalkSonar8,
CakewalkSonarGeneric, CakewalkByBandlab, DaVinciResolve, DigitalPerformer,
FinalCut, FruityLoops, JUCEPluginHost, MagixSamplitude,
MagixSequoia, MergingPyramix, MuseReceptorGeneric, pluginval,
Reaper, Reason, Renoise, SADiE,
SteinbergCubase4, SteinbergCubase5, SteinbergCubase5Bridged, SteinbergCubase6,
SteinbergCubase7, SteinbergCubase8, SteinbergCubase8_5, SteinbergCubase9,
SteinbergCubase9_5, SteinbergCubase10, SteinbergCubase10_5, SteinbergCubaseGeneric,
SteinbergNuendo3, SteinbergNuendo4, SteinbergNuendo5, SteinbergNuendoGeneric,
SteinbergWavelab5, SteinbergWavelab6, SteinbergWavelab7, SteinbergWavelab8,
SteinbergWavelabGeneric, SteinbergTestHost, StudioOne, Tracktion3,
TracktionGeneric, TracktionWaveform, VBVSTScanner, ViennaEnsemblePro,
WaveBurner
}

| Represents the host type and also its version for some hosts. More...

## Public Member Functions

| PluginHostType ()
| PluginHostType (const PluginHostType &other)=default
PluginHostType & | operator= (const PluginHostType &other)=default
bool | isAbletonLive () const noexcept
| Returns true if the host is any version of Ableton Live. More...
bool | isAdobeAudition () const noexcept
| Returns true if the host is Adobe Audition. More...
bool | isArdour () const noexcept
| Returns true if the host is Ardour. More...
bool | isBitwigStudio () const noexcept
| Returns true if the host is Bitwig Studio. More...
bool | isCubase () const noexcept
| Returns true if the host is any version of Steinberg Cubase. More...
bool | isCubase7orLater () const noexcept
| Returns true if the host is Steinberg Cubase 7 or later. More...
bool | isCubaseBridged () const noexcept
| Returns true if the host is Steinberg Cubase 5 Bridged. More...
bool | isDaVinciResolve () const noexcept
| Returns true if the host is DaVinci Resolve. More...
bool | isDigitalPerformer () const noexcept
| Returns true if the host is Digital Performer. More...
bool | isFinalCut () const noexcept
| Returns true if the host is Apple Final Cut Pro. More...
bool | isFruityLoops () const noexcept
| Returns true if the host is Fruity Loops. More...
bool | isGarageBand () const noexcept
| Returns true if the host is Apple GarageBand. More...
bool | isJUCEPluginHost () const noexcept
| Returns true if the host is the JUCE AudioPluginHost. More...
bool | isLogic () const noexcept
| Returns true if the host is Apple Logic Pro. More...
bool | isMainStage () const noexcept
| Returns true if the host is Apple MainStage. More...
bool | isNuendo () const noexcept
| Returns true if the host is any version of Steinberg Nuendo. More...
bool | isPluginval () const noexcept
| Returns true if the host is pluginval. More...
bool | isPremiere () const noexcept
| Returns true if the host is Adobe Premiere Pro. More...
bool | isProTools () const noexcept
| Returns true if the host is Avid Pro Tools. More...
bool | isPyramix () const noexcept
| Returns true if the host is Merging Pyramix. More...
bool | isReceptor () const noexcept
| Returns true if the host is Muse Receptor. More...
bool | isReaper () const noexcept
| Returns true if the host is Cockos Reaper. More...
bool | isReason () const noexcept
| Returns true if the host is Reason. More...
bool | isRenoise () const noexcept
| Returns true if the host is Renoise. More...
bool | isSADiE () const noexcept
| Returns true if the host is SADiE. More...
bool | isSamplitude () const noexcept
| Returns true if the host is Magix Samplitude. More...
bool | isSequoia () const noexcept
| Returns true if the host is Magix Sequoia. More...
bool | isSonar () const noexcept
| Returns true if the host is any version of Cakewalk Sonar. More...
bool | isSteinbergTestHost () const noexcept
| Returns true if the host is Steinberg's VST3 Test Host. More...
bool | isSteinberg () const noexcept
| Returns true if the host is any product from Steinberg. More...
bool | isStudioOne () const noexcept
| Returns true if the host is PreSonus Studio One. More...
bool | isTracktion () const noexcept
| Returns true if the host is any version of Tracktion. More...
bool | isTracktionWaveform () const noexcept
| Returns true if the host is Tracktion Waveform. More...
bool | isVBVSTScanner () const noexcept
| Returns true if the host is VB Audio VST Scanner. More...
bool | isViennaEnsemblePro () const noexcept
| Returns true if the host is Vienna Ensemble Pro. More...
bool | isWaveBurner () const noexcept
| Returns true if the host is Apple WaveBurner. More...
bool | isWavelab () const noexcept
| Returns true if the host is any version of Steinberg WaveLab. More...
bool | isWavelabLegacy () const noexcept
| Returns true if the host is Steinberg WaveLab 6 or below. More...
const char * | getHostDescription () const noexcept
| Returns a human-readable description of the host. More...
bool | isInterAppAudioConnected () const
| Returns true if the plugin is connected with Inter-App Audio on iOS. More...
void | switchToHostApplication () const
| Switches to the host application when Inter-App Audio is used on iOS. More...

## Static Public Member Functions

static String | getHostPath ()
| Returns the complete absolute path of the host application executable. More...
static AudioProcessor::WrapperType | getPluginLoadedAs () noexcept
| Returns the plug-in format via which the plug-in file was loaded. More...
static bool | isInAAXAudioSuite (AudioProcessor &)
| Returns true if the AudioProcessor instance is an AAX plug-in running in AudioSuite. More...

## Public Attributes

HostType | type

## Detailed Description

A useful utility class to determine the host or DAW in which your plugin is loaded.

Declare a PluginHostType object in your class to use it.

## Member Enumeration Documentation

## HostType

enum PluginHostType::HostType

Represents the host type and also its version for some hosts.

Enumerator
UnknownHost | Represents an unknown host.
AbletonLive6 | Represents Ableton Live 6.
AbletonLive7 | Represents Ableton Live 7.
AbletonLive8 | Represents Ableton Live 8.
AbletonLive9 | Represents Ableton Live 9.
AbletonLive10 | Represents Ableton Live 10.
AbletonLiveGeneric | Represents Ableton Live.
AdobeAudition | Represents Adobe Audition.
AdobePremierePro | Represents Adobe Premiere Pro.
AppleGarageBand | Represents Apple GarageBand.
AppleLogic | Represents Apple Logic Pro.
AppleMainStage | Represents Apple Main Stage.
Ardour | Represents Ardour.
AvidProTools | Represents Avid Pro Tools.
BitwigStudio | Represents Bitwig Studio.
CakewalkSonar8 | Represents Cakewalk Sonar 8.
CakewalkSonarGeneric | Represents Cakewalk Sonar.
CakewalkByBandlab | Represents Cakewalk by Bandlab.
DaVinciResolve | Represents DaVinci Resolve.
DigitalPerformer | Represents Digital Performer.
FinalCut | Represents Apple Final Cut Pro.
FruityLoops | Represents Fruity Loops.
JUCEPluginHost | Represents the JUCE AudioPluginHost.
MagixSamplitude | Represents Magix Samplitude.
MagixSequoia | Represents Magix Sequoia.
MergingPyramix | Represents Merging Pyramix.
MuseReceptorGeneric | Represents Muse Receptor.
pluginval | Represents pluginval.
Reaper | Represents Cockos Reaper.
Reason | Represents Reason.
Renoise | Represents Renoise.
SADiE | Represents SADiE.
SteinbergCubase4 | Represents Steinberg Cubase 4.
SteinbergCubase5 | Represents Steinberg Cubase 5.
SteinbergCubase5Bridged | Represents Steinberg Cubase 5 Bridged.
SteinbergCubase6 | Represents Steinberg Cubase 6.
SteinbergCubase7 | Represents Steinberg Cubase 7.
SteinbergCubase8 | Represents Steinberg Cubase 8.
SteinbergCubase8_5 | Represents Steinberg Cubase 8.5.
SteinbergCubase9 | Represents Steinberg Cubase 9.
SteinbergCubase9_5 | Represents Steinberg Cubase 9.5.
SteinbergCubase10 | Represents Steinberg Cubase 10.
SteinbergCubase10_5 | Represents Steinberg Cubase 10.5.
SteinbergCubaseGeneric | Represents Steinberg Cubase.
SteinbergNuendo3 | Represents Steinberg Nuendo 3.
SteinbergNuendo4 | Represents Steinberg Nuendo 4.
SteinbergNuendo5 | Represents Steinberg Nuendo 5.
SteinbergNuendoGeneric | Represents Steinberg Nuendo.
SteinbergWavelab5 | Represents Steinberg Wavelab 5.
SteinbergWavelab6 | Represents Steinberg Wavelab 6.
SteinbergWavelab7 | Represents Steinberg Wavelab 7.
SteinbergWavelab8 | Represents Steinberg Wavelab 8.
SteinbergWavelabGeneric | Represents Steinberg Wavelab.
SteinbergTestHost | Represents Steinberg's VST3 Test Host.
StudioOne | Represents PreSonus Studio One.
Tracktion3 | Represents Tracktion 3.
TracktionGeneric | Represents Tracktion.
TracktionWaveform | Represents Tracktion Waveform.
VBVSTScanner | Represents VB Audio VST Scanner.
ViennaEnsemblePro | Represents Vienna Ensemble Pro.
WaveBurner | Represents Apple WaveBurner.

## Constructor & Destructor Documentation

## PluginHostType() [1/2]

PluginHostType::PluginHostType | ( |  | ) |

## PluginHostType() [2/2]

PluginHostType::PluginHostType | ( | const PluginHostType & | other | ) |

default

## Member Function Documentation

## operator=()

PluginHostType& PluginHostType::operator= | ( | const PluginHostType & | other | ) |

default

## isAbletonLive()

bool PluginHostType::isAbletonLive | ( |  | ) | const

noexcept

Returns true if the host is any version of Ableton Live.

References AbletonLive10, AbletonLive6, AbletonLive7, AbletonLive8, AbletonLive9, AbletonLiveGeneric, and type.

## isAdobeAudition()

bool PluginHostType::isAdobeAudition | ( |  | ) | const

noexcept

Returns true if the host is Adobe Audition.

References AdobeAudition, and type.

## isArdour()

bool PluginHostType::isArdour | ( |  | ) | const

noexcept

Returns true if the host is Ardour.

References Ardour, and type.

## isBitwigStudio()

bool PluginHostType::isBitwigStudio | ( |  | ) | const

noexcept

Returns true if the host is Bitwig Studio.

References BitwigStudio, and type.

## isCubase()

bool PluginHostType::isCubase | ( |  | ) | const

noexcept

Returns true if the host is any version of Steinberg Cubase.

References SteinbergCubase10, SteinbergCubase10_5, SteinbergCubase4, SteinbergCubase5, SteinbergCubase5Bridged, SteinbergCubase6, SteinbergCubase7, SteinbergCubase8, SteinbergCubase8_5, SteinbergCubase9, SteinbergCubase9_5, SteinbergCubaseGeneric, and type.

Referenced by isCubase7orLater(), and isSteinberg().

## isCubase7orLater()

bool PluginHostType::isCubase7orLater | ( |  | ) | const

noexcept

Returns true if the host is Steinberg Cubase 7 or later.

References isCubase(), SteinbergCubase4, SteinbergCubase5, SteinbergCubase6, and type.

## isCubaseBridged()

bool PluginHostType::isCubaseBridged | ( |  | ) | const

noexcept

Returns true if the host is Steinberg Cubase 5 Bridged.

References SteinbergCubase5Bridged, and type.

## isDaVinciResolve()

bool PluginHostType::isDaVinciResolve | ( |  | ) | const

noexcept

Returns true if the host is DaVinci Resolve.

References DaVinciResolve, and type.

## isDigitalPerformer()

bool PluginHostType::isDigitalPerformer | ( |  | ) | const

noexcept

Returns true if the host is Digital Performer.

References DigitalPerformer, and type.

## isFinalCut()

bool PluginHostType::isFinalCut | ( |  | ) | const

noexcept

Returns true if the host is Apple Final Cut Pro.

References FinalCut, and type.

## isFruityLoops()

bool PluginHostType::isFruityLoops | ( |  | ) | const

noexcept

Returns true if the host is Fruity Loops.

References FruityLoops, and type.

## isGarageBand()

bool PluginHostType::isGarageBand | ( |  | ) | const

noexcept

Returns true if the host is Apple GarageBand.

References AppleGarageBand, and type.

## isJUCEPluginHost()

bool PluginHostType::isJUCEPluginHost | ( |  | ) | const

noexcept

Returns true if the host is the JUCE AudioPluginHost.

References JUCEPluginHost, and type.

## isLogic()

bool PluginHostType::isLogic | ( |  | ) | const

noexcept

Returns true if the host is Apple Logic Pro.

References AppleLogic, and type.

## isMainStage()

bool PluginHostType::isMainStage | ( |  | ) | const

noexcept

Returns true if the host is Apple MainStage.

References AppleMainStage, and type.

## isNuendo()

bool PluginHostType::isNuendo | ( |  | ) | const

noexcept

Returns true if the host is any version of Steinberg Nuendo.

References SteinbergNuendo3, SteinbergNuendo4, SteinbergNuendo5, SteinbergNuendoGeneric, and type.

Referenced by isSteinberg().

## isPluginval()

bool PluginHostType::isPluginval | ( |  | ) | const

noexcept

Returns true if the host is pluginval.

References pluginval, and type.

## isPremiere()

bool PluginHostType::isPremiere | ( |  | ) | const

noexcept

Returns true if the host is Adobe Premiere Pro.

References AdobePremierePro, and type.

## isProTools()

bool PluginHostType::isProTools | ( |  | ) | const

noexcept

Returns true if the host is Avid Pro Tools.

References AvidProTools, and type.

## isPyramix()

bool PluginHostType::isPyramix | ( |  | ) | const

noexcept

Returns true if the host is Merging Pyramix.

References MergingPyramix, and type.

## isReceptor()

bool PluginHostType::isReceptor | ( |  | ) | const

noexcept

Returns true if the host is Muse Receptor.

References MuseReceptorGeneric, and type.

## isReaper()

bool PluginHostType::isReaper | ( |  | ) | const

noexcept

Returns true if the host is Cockos Reaper.

References Reaper, and type.

## isReason()

bool PluginHostType::isReason | ( |  | ) | const

noexcept

Returns true if the host is Reason.

References Reason, and type.

## isRenoise()

bool PluginHostType::isRenoise | ( |  | ) | const

noexcept

Returns true if the host is Renoise.

References Renoise, and type.

## isSADiE()

bool PluginHostType::isSADiE | ( |  | ) | const

noexcept

Returns true if the host is SADiE.

References SADiE, and type.

## isSamplitude()

bool PluginHostType::isSamplitude | ( |  | ) | const

noexcept

Returns true if the host is Magix Samplitude.

References MagixSamplitude, and type.

## isSequoia()

bool PluginHostType::isSequoia | ( |  | ) | const

noexcept

Returns true if the host is Magix Sequoia.

References MagixSequoia, and type.

## isSonar()

bool PluginHostType::isSonar | ( |  | ) | const

noexcept

Returns true if the host is any version of Cakewalk Sonar.

References CakewalkByBandlab, CakewalkSonar8, CakewalkSonarGeneric, and type.

## isSteinbergTestHost()

bool PluginHostType::isSteinbergTestHost | ( |  | ) | const

noexcept

Returns true if the host is Steinberg's VST3 Test Host.

References SteinbergTestHost, and type.

Referenced by isSteinberg().

## isSteinberg()

bool PluginHostType::isSteinberg | ( |  | ) | const

noexcept

Returns true if the host is any product from Steinberg.

References isCubase(), isNuendo(), isSteinbergTestHost(), and isWavelab().

## isStudioOne()

bool PluginHostType::isStudioOne | ( |  | ) | const

noexcept

Returns true if the host is PreSonus Studio One.

References StudioOne, and type.

## isTracktion()

bool PluginHostType::isTracktion | ( |  | ) | const

noexcept

Returns true if the host is any version of Tracktion.

References isTracktionWaveform(), Tracktion3, TracktionGeneric, and type.

## isTracktionWaveform()

bool PluginHostType::isTracktionWaveform | ( |  | ) | const

noexcept

Returns true if the host is Tracktion Waveform.

References TracktionWaveform, and type.

Referenced by isTracktion().

## isVBVSTScanner()

bool PluginHostType::isVBVSTScanner | ( |  | ) | const

noexcept

Returns true if the host is VB Audio VST Scanner.

References type, and VBVSTScanner.

## isViennaEnsemblePro()

bool PluginHostType::isViennaEnsemblePro | ( |  | ) | const

noexcept

Returns true if the host is Vienna Ensemble Pro.

References type, and ViennaEnsemblePro.

## isWaveBurner()

bool PluginHostType::isWaveBurner | ( |  | ) | const

noexcept

Returns true if the host is Apple WaveBurner.

References type, and WaveBurner.

## isWavelab()

bool PluginHostType::isWavelab | ( |  | ) | const

noexcept

Returns true if the host is any version of Steinberg WaveLab.

References isWavelabLegacy(), SteinbergWavelab7, SteinbergWavelab8, SteinbergWavelabGeneric, and type.

Referenced by isSteinberg().

## isWavelabLegacy()

bool PluginHostType::isWavelabLegacy | ( |  | ) | const

noexcept

Returns true if the host is Steinberg WaveLab 6 or below.

References SteinbergWavelab5, SteinbergWavelab6, and type.

Referenced by isWavelab().

## getHostDescription()

const char* PluginHostType::getHostDescription | ( |  | ) | const

noexcept

Returns a human-readable description of the host.

References AbletonLive10, AbletonLive6, AbletonLive7, AbletonLive8, AbletonLive9, AbletonLiveGeneric, AdobeAudition, AdobePremierePro, AppleGarageBand, AppleLogic, AppleMainStage, Ardour, AvidProTools, BitwigStudio, CakewalkByBandlab, CakewalkSonar8, CakewalkSonarGeneric, DaVinciResolve, DigitalPerformer, FinalCut, FruityLoops, JUCEPluginHost, MagixSamplitude, MagixSequoia, MergingPyramix, MuseReceptorGeneric, pluginval, Reaper, Reason, Renoise, SADiE, SteinbergCubase10, SteinbergCubase10_5, SteinbergCubase4, SteinbergCubase5, SteinbergCubase5Bridged, SteinbergCubase6, SteinbergCubase7, SteinbergCubase8, SteinbergCubase8_5, SteinbergCubase9, SteinbergCubase9_5, SteinbergCubaseGeneric, SteinbergNuendo3, SteinbergNuendo4, SteinbergNuendo5, SteinbergNuendoGeneric, SteinbergTestHost, SteinbergWavelab5, SteinbergWavelab6, SteinbergWavelab7, SteinbergWavelab8, SteinbergWavelabGeneric, StudioOne, Tracktion3, TracktionGeneric, TracktionWaveform, type, VBVSTScanner, ViennaEnsemblePro, and WaveBurner.

## isInterAppAudioConnected()

bool PluginHostType::isInterAppAudioConnected | ( |  | ) | const

Returns true if the plugin is connected with Inter-App Audio on iOS.

## switchToHostApplication()

void PluginHostType::switchToHostApplication | ( |  | ) | const

Switches to the host application when Inter-App Audio is used on iOS.

## getHostPath()

static String PluginHostType::getHostPath | ( |  | ) |

static

Returns the complete absolute path of the host application executable.

References File::getFullPathName(), File::getSpecialLocation(), and File::hostApplicationPath.

## getPluginLoadedAs()

static AudioProcessor::WrapperType PluginHostType::getPluginLoadedAs | ( |  | ) |

static noexcept

Returns the plug-in format via which the plug-in file was loaded.

This value is identical to AudioProcessor::wrapperType of the main audio processor of this plug-in. This function is useful for code that does not have access to the plug-in's main audio processor.

See also
  AudioProcessor::wrapperType

Referenced by StandalonePluginHolder::getInstance().

## isInAAXAudioSuite()

static bool PluginHostType::isInAAXAudioSuite | ( | AudioProcessor & |  | ) |

static

Returns true if the AudioProcessor instance is an AAX plug-in running in AudioSuite.

## Member Data Documentation

## type

HostType PluginHostType::type

Referenced by getHostDescription(), isAbletonLive(), isAdobeAudition(), isArdour(), isBitwigStudio(), isCubase(), isCubase7orLater(), isCubaseBridged(), isDaVinciResolve(), isDigitalPerformer(), isFinalCut(), isFruityLoops(), isGarageBand(), isJUCEPluginHost(), isLogic(), isMainStage(), isNuendo(), isPluginval(), isPremiere(), isProTools(), isPyramix(), isReaper(), isReason(), isReceptor(), isRenoise(), isSADiE(), isSamplitude(), isSequoia(), isSonar(), isSteinbergTestHost(), isStudioOne(), isTracktion(), isTracktionWaveform(), isVBVSTScanner(), isViennaEnsemblePro(), isWaveBurner(), isWavelab(), and isWavelabLegacy().

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

- juce_PluginHostType.h