13
0

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

This commit is contained in:
John Emmas 2014-03-10 14:10:04 +00:00
parent 06fe0a5172
commit 75c55b0aa0
5 changed files with 24 additions and 88 deletions

View File

@ -1,40 +0,0 @@
/*
Copyright (C) 2007 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_CONTROL_PROTOCOL_SEARCH_PATH_INCLUDED
#define ARDOUR_CONTROL_PROTOCOL_SEARCH_PATH_INCLUDED
#include "pbd/search_path.h"
namespace ARDOUR {
/**
* return a Searchpath containing directories in which to look for
* control surface plugins.
*
* If ARDOUR_SURFACES_PATH is defined then the Searchpath returned
* will contain only those directories specified in it, otherwise it will
* contain the user and system directories which may contain control
* surface plugins.
*/
PBD::Searchpath control_protocol_search_path ();
} // namespace ARDOUR
#endif

View File

@ -36,6 +36,17 @@ namespace ARDOUR {
*/
LIBARDOUR_API PBD::Searchpath backend_search_path ();
/**
* return a Searchpath containing directories in which to look for
* control surface plugins.
*
* If ARDOUR_SURFACES_PATH is defined then the Searchpath returned
* will contain only those directories specified in it, otherwise it will
* contain the user and system directories which may contain control
* surface plugins.
*/
LIBARDOUR_API PBD::Searchpath control_protocol_search_path ();
} // namespace ARDOUR
#endif /* __libardour_search_paths_h__ */

View File

@ -30,7 +30,7 @@
#include "ardour/debug.h"
#include "ardour/control_protocol_manager.h"
#include "ardour/control_protocol_search_path.h"
#include "ardour/search_paths.h"
using namespace ARDOUR;

View File

@ -1,47 +0,0 @@
/*
Copyright (C) 2007 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 <iostream>
#include <glibmm/miscutils.h>
#include "ardour/control_protocol_search_path.h"
#include "ardour/directory_names.h"
#include "ardour/filesystem_paths.h"
namespace {
const char * const surfaces_env_variable_name = "ARDOUR_SURFACES_PATH";
} // anonymous
using namespace PBD;
namespace ARDOUR {
Searchpath
control_protocol_search_path ()
{
Searchpath spath(user_config_directory ());
spath += ardour_dll_directory ();
spath.add_subdirectory_to_paths (surfaces_dir_name);
spath += Searchpath(Glib::getenv(surfaces_env_variable_name));
return spath;
}
} // namespace ARDOUR

View File

@ -26,6 +26,7 @@
namespace {
const char * const backend_env_variable_name = "ARDOUR_BACKEND_PATH";
const char * const surfaces_env_variable_name = "ARDOUR_SURFACES_PATH";
} // anonymous
using namespace PBD;
@ -43,4 +44,15 @@ backend_search_path ()
return spath;
}
Searchpath
control_protocol_search_path ()
{
Searchpath spath(user_config_directory ());
spath += ardour_dll_directory ();
spath.add_subdirectory_to_paths (surfaces_dir_name);
spath += Searchpath(Glib::getenv(surfaces_env_variable_name));
return spath;
}
} // namespace ARDOUR