JUCE
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
PluginHostType Class Reference

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
 
PluginHostTypeoperator= (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

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 ( )

References operator=().

◆ PluginHostType() [2/2]

PluginHostType::PluginHostType ( const PluginHostType other)
default

Member Function Documentation

◆ operator=()

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

Referenced by PluginHostType().

◆ isAbletonLive()

bool PluginHostType::isAbletonLive ( ) const
noexcept

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

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

◆ isAdobeAudition()

bool PluginHostType::isAdobeAudition ( ) const
noexcept

Returns true if the host is Adobe Audition.

References AdobeAudition.

◆ isArdour()

bool PluginHostType::isArdour ( ) const
noexcept

Returns true if the host is Ardour.

References Ardour.

◆ isBitwigStudio()

bool PluginHostType::isBitwigStudio ( ) const
noexcept

Returns true if the host is Bitwig Studio.

References BitwigStudio.

◆ isCubase()

bool PluginHostType::isCubase ( ) const
noexcept

◆ isCubase7orLater()

bool PluginHostType::isCubase7orLater ( ) const
noexcept

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

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

◆ isCubaseBridged()

bool PluginHostType::isCubaseBridged ( ) const
noexcept

Returns true if the host is Steinberg Cubase 5 Bridged.

References SteinbergCubase5Bridged.

◆ isDaVinciResolve()

bool PluginHostType::isDaVinciResolve ( ) const
noexcept

Returns true if the host is DaVinci Resolve.

References DaVinciResolve.

◆ isDigitalPerformer()

bool PluginHostType::isDigitalPerformer ( ) const
noexcept

Returns true if the host is Digital Performer.

References DigitalPerformer.

◆ isFinalCut()

bool PluginHostType::isFinalCut ( ) const
noexcept

Returns true if the host is Apple Final Cut Pro.

References FinalCut.

◆ isFruityLoops()

bool PluginHostType::isFruityLoops ( ) const
noexcept

Returns true if the host is Fruity Loops.

References FruityLoops.

◆ isGarageBand()

bool PluginHostType::isGarageBand ( ) const
noexcept

Returns true if the host is Apple GarageBand.

References AppleGarageBand.

◆ isJUCEPluginHost()

bool PluginHostType::isJUCEPluginHost ( ) const
noexcept

Returns true if the host is the JUCE AudioPluginHost.

References JUCEPluginHost.

◆ isLogic()

bool PluginHostType::isLogic ( ) const
noexcept

Returns true if the host is Apple Logic Pro.

References AppleLogic.

◆ isMainStage()

bool PluginHostType::isMainStage ( ) const
noexcept

Returns true if the host is Apple MainStage.

References AppleMainStage.

◆ isNuendo()

bool PluginHostType::isNuendo ( ) const
noexcept

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

References SteinbergNuendo3, SteinbergNuendo4, SteinbergNuendo5, and SteinbergNuendoGeneric.

Referenced by isSteinberg().

◆ isPluginval()

bool PluginHostType::isPluginval ( ) const
noexcept

Returns true if the host is pluginval.

References pluginval.

◆ isPremiere()

bool PluginHostType::isPremiere ( ) const
noexcept

Returns true if the host is Adobe Premiere Pro.

References AdobePremierePro.

◆ isProTools()

bool PluginHostType::isProTools ( ) const
noexcept

Returns true if the host is Avid Pro Tools.

References AvidProTools.

◆ isPyramix()

bool PluginHostType::isPyramix ( ) const
noexcept

Returns true if the host is Merging Pyramix.

References MergingPyramix.

◆ isReceptor()

bool PluginHostType::isReceptor ( ) const
noexcept

Returns true if the host is Muse Receptor.

References MuseReceptorGeneric.

◆ isReaper()

bool PluginHostType::isReaper ( ) const
noexcept

Returns true if the host is Cockos Reaper.

References Reaper.

◆ isReason()

bool PluginHostType::isReason ( ) const
noexcept

Returns true if the host is Reason.

References Reason.

◆ isRenoise()

bool PluginHostType::isRenoise ( ) const
noexcept

Returns true if the host is Renoise.

References Renoise.

◆ isSADiE()

bool PluginHostType::isSADiE ( ) const
noexcept

Returns true if the host is SADiE.

References SADiE.

◆ isSamplitude()

bool PluginHostType::isSamplitude ( ) const
noexcept

Returns true if the host is Magix Samplitude.

References MagixSamplitude.

◆ isSequoia()

bool PluginHostType::isSequoia ( ) const
noexcept

Returns true if the host is Magix Sequoia.

References MagixSequoia.

◆ isSonar()

bool PluginHostType::isSonar ( ) const
noexcept

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

References CakewalkByBandlab, CakewalkSonar8, and CakewalkSonarGeneric.

◆ isSteinbergTestHost()

bool PluginHostType::isSteinbergTestHost ( ) const
noexcept

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

References SteinbergTestHost.

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.

◆ isTracktion()

bool PluginHostType::isTracktion ( ) const
noexcept

Returns true if the host is any version of Tracktion.

References isTracktionWaveform(), Tracktion3, and TracktionGeneric.

◆ isTracktionWaveform()

bool PluginHostType::isTracktionWaveform ( ) const
noexcept

Returns true if the host is Tracktion Waveform.

References TracktionWaveform.

Referenced by isTracktion().

◆ isVBVSTScanner()

bool PluginHostType::isVBVSTScanner ( ) const
noexcept

Returns true if the host is VB Audio VST Scanner.

References VBVSTScanner.

◆ isViennaEnsemblePro()

bool PluginHostType::isViennaEnsemblePro ( ) const
noexcept

Returns true if the host is Vienna Ensemble Pro.

References ViennaEnsemblePro.

◆ isWaveBurner()

bool PluginHostType::isWaveBurner ( ) const
noexcept

Returns true if the host is Apple WaveBurner.

References WaveBurner.

◆ isWavelab()

bool PluginHostType::isWavelab ( ) const
noexcept

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

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

Referenced by isSteinberg().

◆ isWavelabLegacy()

bool PluginHostType::isWavelabLegacy ( ) const
noexcept

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

References SteinbergWavelab5, and SteinbergWavelab6.

Referenced by isWavelab().

◆ getHostDescription()

const char* PluginHostType::getHostDescription ( ) const
noexcept

◆ isInterAppAudioConnected()

bool PluginHostType::isInterAppAudioConnected ( ) const

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

Referenced by getHostDescription().

◆ switchToHostApplication()

void PluginHostType::switchToHostApplication ( ) const

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

Referenced by getHostDescription().

◆ getHostPath()

static String PluginHostType::getHostPath ( )
static

Returns the complete absolute path of the host application executable.

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

Referenced by getPluginLoadedAs().

◆ getPluginLoadedAs()

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

◆ isInAAXAudioSuite()

static bool PluginHostType::isInAAXAudioSuite ( AudioProcessor )
static

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

Referenced by getPluginLoadedAs().

Member Data Documentation

◆ type

HostType PluginHostType::type

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