mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-10 16:46:35 +01:00
Add PBD::system_data_directories and PBD::system_config_directories
These two functions are for convenience and wrap the glib functions g_get_system_data_dirs and g_get_system_config_dirs. git-svn-id: svn://localhost/ardour2/trunk@2051 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
b82ecabcbf
commit
fca7e674c1
3 changed files with 98 additions and 0 deletions
|
|
@ -28,6 +28,7 @@ enumwriter.cc
|
|||
dmalloc.cc
|
||||
error.cc
|
||||
filesystem.cc
|
||||
filesystem_paths.cc
|
||||
file_utils.cc
|
||||
fpu.cc
|
||||
id.cc
|
||||
|
|
|
|||
61
libs/pbd/filesystem_paths.cc
Normal file
61
libs/pbd/filesystem_paths.cc
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
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 <glib.h>
|
||||
|
||||
#include <pbd/filesystem_paths.h>
|
||||
|
||||
namespace PBD {
|
||||
|
||||
vector<sys::path>
|
||||
system_data_directories ()
|
||||
{
|
||||
vector<sys::path> tmp;
|
||||
const char * const * dirs;
|
||||
|
||||
dirs = g_get_system_data_dirs ();
|
||||
|
||||
if (dirs == NULL) return tmp;
|
||||
|
||||
for (int i = 0; dirs[i] != NULL; ++i)
|
||||
{
|
||||
tmp.push_back(dirs[i]);
|
||||
}
|
||||
|
||||
return tmp;
|
||||
}
|
||||
|
||||
vector<sys::path>
|
||||
system_config_directories ()
|
||||
{
|
||||
vector<sys::path> tmp;
|
||||
const char * const * dirs;
|
||||
|
||||
dirs = g_get_system_config_dirs ();
|
||||
|
||||
if (dirs == NULL) return tmp;
|
||||
|
||||
for (int i = 0; dirs[i] != NULL; ++i)
|
||||
{
|
||||
tmp.push_back(dirs[i]);
|
||||
}
|
||||
|
||||
return tmp;
|
||||
}
|
||||
|
||||
} // namespace PBD
|
||||
36
libs/pbd/pbd/filesystem_paths.h
Normal file
36
libs/pbd/pbd/filesystem_paths.h
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
/*
|
||||
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 PBD_FILESYSTEM_PATHS_INCLUDED
|
||||
#define PBD_FILESYSTEM_PATHS_INCLUDED
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include <pbd/filesystem.h>
|
||||
|
||||
namespace PBD {
|
||||
|
||||
using std::vector;
|
||||
|
||||
vector<sys::path> system_data_directories ();
|
||||
|
||||
vector<sys::path> system_config_directories ();
|
||||
|
||||
} // namespace PBD
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue