iPlug2 - C++ Audio Plug-in Framework
Loading...
Searching...
No Matches
IPlugPaths.h
Go to the documentation of this file.
1/*
2 ==============================================================================
3
4 This file is part of the iPlug 2 library. Copyright (C) the iPlug 2 developers.
5
6 See LICENSE.txt for more info.
7
8 ==============================================================================
9*/
10
11#pragma once
12
18#include "IPlugUtilities.h"
19
20BEGIN_IPLUG_NAMESPACE
21
22#if defined OS_MAC || defined OS_IOS
23using PluginIDType = const char *;
24#elif defined OS_WIN
25using PluginIDType = HMODULE;
26#else
27using PluginIDType = void *;
28#endif
29
32extern void HostPath(WDL_String& path, const char* bundleID = 0);
33
37extern void PluginPath(WDL_String& path, PluginIDType pExtra);
38
47extern void BundleResourcePath(WDL_String& path, PluginIDType pExtra = 0);
48
50extern void DesktopPath(WDL_String& path);
51
53extern void UserHomePath(WDL_String& path);
54
57extern void AppSupportPath(WDL_String& path, bool isSystem = false);
58
63extern void VST3PresetsPath(WDL_String& path, const char* mfrName, const char* pluginName, bool isSystem = true);
64
68extern void INIPath(WDL_String& path, const char* pluginName);
69
71extern void WebViewCachePath(WDL_String& path);
72
86extern EResourceLocation LocateResource(const char* fileNameOrResID, const char* type, WDL_String& result, const char* bundleID, void* pHInstance, const char* sharedResourcesSubPath);
87
91extern const void* LoadWinResource(const char* resID, const char* type, int& sizeInBytes, void* pHInstance);
92
93#if defined OS_MAC || defined OS_IOS
94
96extern bool AppIsSandboxed();
97
99extern void AppGroupContainerPath(WDL_String& path, const char* appGroupID);
100
102extern void SharedMusicPath(WDL_String& path);
103
105extern bool IsXPCAuHost();
106
108extern bool IsOOPAuv3AppExtension();
109
111extern bool IsAUv3AppExtensionBundleID(const char* bundleID);
112
113#endif
114
115END_IPLUG_NAMESPACE
116
const void * LoadWinResource(const char *resID, const char *type, int &sizeInBytes, void *pHInstance)
Load a resource from the binary (windows only).
void UserHomePath(WDL_String &path)
EResourceLocation LocateResource(const char *fileNameOrResID, const char *type, WDL_String &result, const char *bundleID, void *pHInstance, const char *sharedResourcesSubPath)
Find the absolute path of a resource based on it's file name (e.g.
void VST3PresetsPath(WDL_String &path, const char *mfrName, const char *pluginName, bool isSystem=true)
void PluginPath(WDL_String &path, PluginIDType pExtra)
Get the path to the plug-in binary.
void DesktopPath(WDL_String &path)
void HostPath(WDL_String &path, const char *bundleID=0)
Get the path to the host binary.
void AppSupportPath(WDL_String &path, bool isSystem=false)
void BundleResourcePath(WDL_String &path, PluginIDType pExtra=0)
Get the path to the plug-in bundle resource path.
void INIPath(WDL_String &path, const char *pluginName)
Get the path to the folder where the App's settings.ini file is stored.
void WebViewCachePath(WDL_String &path)
Get the path to the folder where the Plug-in's ICoreWebView2 userdata folder should be (Windows WebVi...
Utility functions and macros.