13
0

Transfer 'ladspa_search_path()' into 'libs/ardour/search_paths.cc'

This commit is contained in:
John Emmas 2014-03-10 14:33:15 +00:00
parent d1fd112bdf
commit ff053653e1
5 changed files with 39 additions and 101 deletions

View File

@ -1,39 +0,0 @@
/*
Copyright (C) 2011 Tim Mayberry
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef ARDOUR_LADSPA_SEARCH_PATH_INCLUDED
#define ARDOUR_LADSPA_SEARCH_PATH_INCLUDED
#include "pbd/search_path.h"
namespace ARDOUR {
/**
* return a Searchpath containing directories in which to look for
* LADSPA plugins.
*
* If LADSPA_PATH is defined then the Searchpath returned
* will contain the directories specified in it as well as the
* user and system directories.
*/
PBD::Searchpath ladspa_search_path ();
} // namespace ARDOUR
#endif

View File

@ -53,6 +53,16 @@ namespace ARDOUR {
*/
LIBARDOUR_API PBD::Searchpath export_formats_search_path ();
/**
* return a Searchpath containing directories in which to look for
* LADSPA plugins.
*
* If LADSPA_PATH is defined then the Searchpath returned
* will contain the directories specified in it as well as the
* user and system directories.
*/
LIBARDOUR_API PBD::Searchpath ladspa_search_path ();
} // namespace ARDOUR
#endif /* __libardour_search_paths_h__ */

View File

@ -1,61 +0,0 @@
/*
Copyright (C) 2011 Tim Mayberry
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#include <glibmm/miscutils.h>
#include "pbd/pathexpand.h"
#include "ardour/ladspa_search_path.h"
#include "ardour/directory_names.h"
#include "ardour/filesystem_paths.h"
namespace {
const char * const ladspa_env_variable_name = "LADSPA_PATH";
} // anonymous
using namespace PBD;
namespace ARDOUR {
Searchpath
ladspa_search_path ()
{
Searchpath spath_env (Glib::getenv(ladspa_env_variable_name));
Searchpath spath (user_config_directory ());
spath += ardour_dll_directory ();
spath.add_subdirectory_to_paths (ladspa_dir_name);
#ifndef PLATFORM_WINDOWS
spath.push_back ("/usr/local/lib64/ladspa");
spath.push_back ("/usr/local/lib/ladspa");
spath.push_back ("/usr/lib64/ladspa");
spath.push_back ("/usr/lib/ladspa");
#endif
#ifdef __APPLE__
spath.push_back (path_expand ("~/Library/Audio/Plug-Ins/LADSPA"));
spath.push_back ("/Library/Audio/Plug-Ins/LADSPA");
#endif
return spath_env + spath;
}
} // namespace ARDOUR

View File

@ -62,7 +62,7 @@
#include "ardour/plugin_manager.h"
#include "ardour/rc_configuration.h"
#include "ardour/ladspa_search_path.h"
#include "ardour/search_paths.h"
#include "ardour/vst_search_path.h"
#ifdef LV2_SUPPORT

View File

@ -20,6 +20,8 @@
#include <glibmm/miscutils.h>
#include "pbd/pathexpand.h"
#include "ardour/search_paths.h"
#include "ardour/directory_names.h"
#include "ardour/filesystem_paths.h"
@ -28,6 +30,7 @@ namespace {
const char * const backend_env_variable_name = "ARDOUR_BACKEND_PATH";
const char * const surfaces_env_variable_name = "ARDOUR_SURFACES_PATH";
const char * const export_env_variable_name = "ARDOUR_EXPORT_FORMATS_PATH";
const char * const ladspa_env_variable_name = "LADSPA_PATH";
} // anonymous
using namespace PBD;
@ -72,4 +75,29 @@ export_formats_search_path ()
return spath;
}
Searchpath
ladspa_search_path ()
{
Searchpath spath_env (Glib::getenv(ladspa_env_variable_name));
Searchpath spath (user_config_directory ());
spath += ardour_dll_directory ();
spath.add_subdirectory_to_paths (ladspa_dir_name);
#ifndef PLATFORM_WINDOWS
spath.push_back ("/usr/local/lib64/ladspa");
spath.push_back ("/usr/local/lib/ladspa");
spath.push_back ("/usr/lib64/ladspa");
spath.push_back ("/usr/lib/ladspa");
#endif
#ifdef __APPLE__
spath.push_back (path_expand ("~/Library/Audio/Plug-Ins/LADSPA"));
spath.push_back ("/Library/Audio/Plug-Ins/LADSPA");
#endif
return spath_env + spath;
}
} // namespace ARDOUR