From 9c0d7d72d70082a54f823cd44c0ccda5da64bb6f Mon Sep 17 00:00:00 2001 From: Doug McLain Date: Mon, 2 Jun 2008 05:02:28 +0000 Subject: remove empty sigc++2 directory git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/pbd/filesystem.cc | 201 ------------------------------------------------- 1 file changed, 201 deletions(-) delete mode 100644 libs/pbd/filesystem.cc (limited to 'libs/pbd/filesystem.cc') 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 - -#include -#include - -#include -#include - -#include -#include - -#include -#include -#include - -#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 -- cgit v1.2.3