summaryrefslogtreecommitdiff
path: root/libs/pbd/filesystem.cc
diff options
context:
space:
mode:
authorDoug McLain <doug@nostar.net>2008-06-02 05:02:28 +0000
committerDoug McLain <doug@nostar.net>2008-06-02 05:02:28 +0000
commit9c0d7d72d70082a54f823cd44c0ccda5da64bb6f (patch)
tree96ec400b83b8c1c06852b1936f684b5fbcd47a79 /libs/pbd/filesystem.cc
parent2f3f697bb8e185eb43c2c50b4eefc2bcb937f269 (diff)
remove empty sigc++2 directory
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/pbd/filesystem.cc')
-rw-r--r--libs/pbd/filesystem.cc201
1 files changed, 0 insertions, 201 deletions
diff --git a/libs/pbd/filesystem.cc b/libs/pbd/filesystem.cc
deleted file mode 100644
index 84d18cfcd2..0000000000
--- a/libs/pbd/filesystem.cc
+++ /dev/null
@@ -1,201 +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 <sys/stat.h>
-
-#include <glib.h>
-#include <glib/gstdio.h>
-
-#include <cerrno>
-#include <fstream>
-
-#include <glibmm/fileutils.h>
-#include <glibmm/miscutils.h>
-
-#include <pbd/filesystem.h>
-#include <pbd/error.h>
-#include <pbd/compose.h>
-
-#include "i18n.h"
-
-namespace PBD {
-
-namespace sys {
-
-path&
-path::operator/=(const path& rhs)
-{
- m_path = Glib::build_filename(m_path, rhs.m_path);
- return *this;
-}
-
-path&
-path::operator/=(const string& rhs)
-{
- m_path = Glib::build_filename(m_path, rhs);
- return *this;
-}
-
-path&
-path::operator/=(const char* rhs)
-{
- m_path = Glib::build_filename(m_path, rhs);
- return *this;
-}
-
-string
-path::leaf () const
-{
- return Glib::path_get_basename(m_path);
-}
-
-path
-path::branch_path () const
-{
- string dir = Glib::path_get_dirname (m_path);
-
- /*
- * glib returns "." to signify that the path
- * has no directory components(branch path)
- * whereas boost::filesystem returns an empty
- * string
- */
- if(dir == ".")
- {
- return "";
- }
- return dir;
-}
-
-bool
-exists (const path & p)
-{
- return Glib::file_test (p.to_string(), Glib::FILE_TEST_EXISTS);
-}
-
-bool
-is_directory (const path & p)
-{
- return Glib::file_test (p.to_string(), Glib::FILE_TEST_IS_DIR);
-}
-
-bool
-create_directory(const path & p)
-{
- if(is_directory(p)) return false;
-
- int error = g_mkdir (p.to_string().c_str(), S_IRWXU|S_IRWXG|S_IRWXO);
-
- if(error == -1)
- {
- throw filesystem_error(g_strerror(errno), errno);
- }
- return true;
-}
-
-bool
-create_directories(const path & p)
-{
- if(is_directory(p)) return false;
-
- int error = g_mkdir_with_parents (p.to_string().c_str(), S_IRWXU|S_IRWXG|S_IRWXO);
-
- if(error == -1)
- {
- throw filesystem_error(g_strerror(errno), errno);
- }
- return true;
-}
-
-bool
-remove(const path & p)
-{
- if(!exists(p)) return false;
-
- int error = g_unlink (p.to_string().c_str());
-
- if(error == -1)
- {
- throw filesystem_error(g_strerror(errno), errno);
- }
- return true;
-}
-
-void
-rename (const path & from_path, const path & to_path)
-{
- // g_rename is a macro that evaluates to ::rename on
- // POSIX systems, without the global namespace qualifier
- // it would evaluate to a recursive call(if it compiled)
- if ( ::g_rename( from_path.to_string().c_str(),
- to_path.to_string().c_str() ) == -1 )
- {
- throw filesystem_error(g_strerror(errno), errno);
- }
-}
-
-// XXX character encoding.
-void
-copy_file(const path & from_path, const path & to_path)
-{
- std::ifstream in(from_path.to_string().c_str());
- std::ofstream out(to_path.to_string().c_str());
-
- if (!in || !out) {
- throw filesystem_error(string_compose(_("Could not open files %1 and %2 for copying"),
- from_path.to_string(), to_path.to_string()));
- }
-
- out << in.rdbuf();
-
- if (!in || !out) {
- remove (to_path);
- throw filesystem_error(string_compose(_("Could not copy existing file %1 to %2"),
- from_path.to_string(), to_path.to_string()));
- }
-}
-
-string
-basename (const path & p)
-{
- string base(p.leaf());
-
- string::size_type n = base.rfind ('.');
-
- return base.substr (0, n);
-}
-
-string
-extension (const path & p)
-{
- string base(p.leaf());
-
- string::size_type n = base.rfind ('.');
-
- if (n != string::npos)
- {
- return base.substr(n);
- }
-
- return string();
-
-}
-
-} // namespace sys
-
-} // namespace PBD