mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 23:05:04 +01:00
Change PBD::find_files_matching_regex and PBD::find_files_matching_filter to take a Searchpath
This commit is contained in:
parent
613162df6b
commit
d9a7d419b2
8 changed files with 17 additions and 23 deletions
|
|
@ -2016,7 +2016,7 @@ LV2World::load_bundled_plugins()
|
||||||
cout << "Scanning folders for bundled LV2s: " << ARDOUR::lv2_bundled_search_path().to_string() << endl;
|
cout << "Scanning folders for bundled LV2s: " << ARDOUR::lv2_bundled_search_path().to_string() << endl;
|
||||||
|
|
||||||
vector<string> plugin_objects;
|
vector<string> plugin_objects;
|
||||||
find_files_matching_filter (plugin_objects, ARDOUR::lv2_bundled_search_path().to_string(), lv2_filter, 0, true, true);
|
find_files_matching_filter (plugin_objects, ARDOUR::lv2_bundled_search_path(), lv2_filter, 0, true, true);
|
||||||
for ( vector<string>::iterator x = plugin_objects.begin(); x != plugin_objects.end (); ++x) {
|
for ( vector<string>::iterator x = plugin_objects.begin(); x != plugin_objects.end (); ++x) {
|
||||||
#ifdef PLATFORM_WINDOWS
|
#ifdef PLATFORM_WINDOWS
|
||||||
string uri = "file:///" + *x + "/";
|
string uri = "file:///" + *x + "/";
|
||||||
|
|
|
||||||
|
|
@ -91,11 +91,10 @@ void
|
||||||
PannerManager::discover_panners ()
|
PannerManager::discover_panners ()
|
||||||
{
|
{
|
||||||
std::vector<std::string> panner_modules;
|
std::vector<std::string> panner_modules;
|
||||||
std::string search_path = panner_search_path().to_string();
|
|
||||||
|
|
||||||
DEBUG_TRACE (DEBUG::Panning, string_compose (_("looking for panners in %1\n"), search_path));
|
DEBUG_TRACE (DEBUG::Panning, string_compose (_("looking for panners in %1\n"), panner_search_path().to_string()));
|
||||||
|
|
||||||
find_files_matching_filter (panner_modules, search_path, panner_filter, 0, false, true, true);
|
find_files_matching_filter (panner_modules, panner_search_path(), panner_filter, 0, false, true, true);
|
||||||
|
|
||||||
for (vector<std::string>::iterator i = panner_modules.begin(); i != panner_modules.end(); ++i) {
|
for (vector<std::string>::iterator i = panner_modules.begin(); i != panner_modules.end(); ++i) {
|
||||||
panner_discover (*i);
|
panner_discover (*i);
|
||||||
|
|
|
||||||
|
|
@ -82,16 +82,15 @@ void
|
||||||
find_session_templates (vector<TemplateInfo>& template_names)
|
find_session_templates (vector<TemplateInfo>& template_names)
|
||||||
{
|
{
|
||||||
vector<string> templates;
|
vector<string> templates;
|
||||||
Searchpath spath (template_search_path());
|
|
||||||
|
|
||||||
find_files_matching_filter (templates, spath.to_string(), template_filter, 0, true, true);
|
find_files_matching_filter (templates, template_search_path(), template_filter, 0, true, true);
|
||||||
|
|
||||||
if (templates.empty()) {
|
if (templates.empty()) {
|
||||||
cerr << "Found nothing along " << spath.to_string() << endl;
|
cerr << "Found nothing along " << template_search_path().to_string() << endl;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
cerr << "Found " << templates.size() << " along " << spath.to_string() << endl;
|
cerr << "Found " << templates.size() << " along " << template_search_path().to_string() << endl;
|
||||||
|
|
||||||
for (vector<string>::iterator i = templates.begin(); i != templates.end(); ++i) {
|
for (vector<string>::iterator i = templates.begin(); i != templates.end(); ++i) {
|
||||||
string file = session_template_dir_to_file (*i);
|
string file = session_template_dir_to_file (*i);
|
||||||
|
|
@ -115,9 +114,8 @@ void
|
||||||
find_route_templates (vector<TemplateInfo>& template_names)
|
find_route_templates (vector<TemplateInfo>& template_names)
|
||||||
{
|
{
|
||||||
vector<string> templates;
|
vector<string> templates;
|
||||||
Searchpath spath (route_template_search_path());
|
|
||||||
|
|
||||||
find_files_matching_filter (templates, spath.to_string(), route_template_filter, 0, false, true);
|
find_files_matching_filter (templates, route_template_search_path(), route_template_filter, 0, false, true);
|
||||||
|
|
||||||
if (templates.empty()) {
|
if (templates.empty()) {
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -203,7 +203,7 @@ regexp_filter (const string& str, void *arg)
|
||||||
|
|
||||||
void
|
void
|
||||||
find_files_matching_regex (vector<string>& result,
|
find_files_matching_regex (vector<string>& result,
|
||||||
const std::string& dirpath,
|
const Searchpath& paths,
|
||||||
const std::string& regexp)
|
const std::string& regexp)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
|
@ -224,7 +224,7 @@ find_files_matching_regex (vector<string>& result,
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
find_files_matching_filter (result, dirpath,
|
find_files_matching_filter (result, paths,
|
||||||
regexp_filter, &compiled_pattern,
|
regexp_filter, &compiled_pattern,
|
||||||
true, true, false);
|
true, true, false);
|
||||||
|
|
||||||
|
|
@ -233,7 +233,7 @@ find_files_matching_regex (vector<string>& result,
|
||||||
|
|
||||||
void
|
void
|
||||||
find_files_matching_filter (vector<string>& result,
|
find_files_matching_filter (vector<string>& result,
|
||||||
const string &dirpath,
|
const Searchpath& paths,
|
||||||
bool (*filter)(const string &, void *),
|
bool (*filter)(const string &, void *),
|
||||||
void *arg,
|
void *arg,
|
||||||
bool match_fullpath, bool return_fullpath,
|
bool match_fullpath, bool return_fullpath,
|
||||||
|
|
@ -241,10 +241,7 @@ find_files_matching_filter (vector<string>& result,
|
||||||
{
|
{
|
||||||
vector<string> all_files;
|
vector<string> all_files;
|
||||||
|
|
||||||
Searchpath spath(dirpath);
|
for (vector<string>::const_iterator i = paths.begin(); i != paths.end(); ++i) {
|
||||||
|
|
||||||
for (vector<string>::iterator i = spath.begin(); i != spath.end(); ++i)
|
|
||||||
{
|
|
||||||
string expanded_path = path_expand (*i);
|
string expanded_path = path_expand (*i);
|
||||||
get_directory_contents (expanded_path, all_files, true, recurse);
|
get_directory_contents (expanded_path, all_files, true, recurse);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -114,15 +114,15 @@ find_file_in_search_path (const Searchpath& search_path,
|
||||||
*/
|
*/
|
||||||
LIBPBD_API void
|
LIBPBD_API void
|
||||||
find_files_matching_regex (std::vector<std::string>& results,
|
find_files_matching_regex (std::vector<std::string>& results,
|
||||||
const std::string& dirpath,
|
const Searchpath& dirpath,
|
||||||
const std::string& regexp);
|
const std::string& regexp);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return files in dirpath that match a supplied filter(functor)
|
* @return files in a Searchpath that match a supplied filter(functor)
|
||||||
*/
|
*/
|
||||||
LIBPBD_API void
|
LIBPBD_API void
|
||||||
find_files_matching_filter (std::vector<std::string>&,
|
find_files_matching_filter (std::vector<std::string>&,
|
||||||
const std::string &dirpath,
|
const Searchpath& paths,
|
||||||
bool (*filter)(const std::string &, void *),
|
bool (*filter)(const std::string &, void *),
|
||||||
void *arg,
|
void *arg,
|
||||||
bool match_fullpath,
|
bool match_fullpath,
|
||||||
|
|
|
||||||
|
|
@ -140,7 +140,7 @@ GenericMidiControlProtocol::reload_maps ()
|
||||||
Searchpath spath (system_midi_map_search_path());
|
Searchpath spath (system_midi_map_search_path());
|
||||||
spath += user_midi_map_directory ();
|
spath += user_midi_map_directory ();
|
||||||
|
|
||||||
find_files_matching_filter (midi_maps, spath.to_string(), midi_map_filter, 0, false, true);
|
find_files_matching_filter (midi_maps, spath, midi_map_filter, 0, false, true);
|
||||||
|
|
||||||
if (midi_maps.empty()) {
|
if (midi_maps.empty()) {
|
||||||
cerr << "No MIDI maps found using " << spath.to_string() << endl;
|
cerr << "No MIDI maps found using " << spath.to_string() << endl;
|
||||||
|
|
|
||||||
|
|
@ -474,7 +474,7 @@ DeviceInfo::reload_device_info ()
|
||||||
vector<string> devinfos;
|
vector<string> devinfos;
|
||||||
Searchpath spath (devinfo_search_path());
|
Searchpath spath (devinfo_search_path());
|
||||||
|
|
||||||
find_files_matching_filter (devinfos, spath.to_string(), devinfo_filter, 0, false, true);
|
find_files_matching_filter (devinfos, spath, devinfo_filter, 0, false, true);
|
||||||
device_info.clear ();
|
device_info.clear ();
|
||||||
|
|
||||||
if (devinfos.empty()) {
|
if (devinfos.empty()) {
|
||||||
|
|
|
||||||
|
|
@ -93,7 +93,7 @@ DeviceProfile::reload_device_profiles ()
|
||||||
vector<string> devprofiles;
|
vector<string> devprofiles;
|
||||||
Searchpath spath (devprofile_search_path());
|
Searchpath spath (devprofile_search_path());
|
||||||
|
|
||||||
find_files_matching_filter (devprofiles, spath.to_string(), devprofile_filter, 0, false, true);
|
find_files_matching_filter (devprofiles, spath, devprofile_filter, 0, false, true);
|
||||||
device_profiles.clear ();
|
device_profiles.clear ();
|
||||||
|
|
||||||
if (devprofiles.empty()) {
|
if (devprofiles.empty()) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue