| /////////////////////////////////////////////////////////////////////////////// |
| // |
| // The contents of this file are subject to the Mozilla Public License |
| // Version 1.1 (the "License"); you may not use this file except in |
| // compliance with the License. You may obtain a copy of the License at |
| // http://www.mozilla.org/MPL/ |
| // |
| // Software distributed under the License is distributed on an "AS IS" |
| // basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the |
| // License for the specific language governing rights and limitations |
| // under the License. |
| // |
| // The Original Code is MP4v2. |
| // |
| // The Initial Developer of the Original Code is Kona Blend. |
| // Portions created by Kona Blend are Copyright (C) 2008. |
| // All Rights Reserved. |
| // |
| // Contributors: |
| // Kona Blend, kona8lend@@gmail.com |
| // |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| #include "libplatform/impl.h" |
| #include <sys/stat.h> |
| |
| namespace mp4v2 { namespace platform { namespace io { |
| |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| bool |
| FileSystem::exists( std::string path_ ) |
| { |
| struct stat buf; |
| return stat( path_.c_str(), &buf ) == 0; |
| } |
| |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| bool |
| FileSystem::isDirectory( std::string path_ ) |
| { |
| struct stat buf; |
| if( stat( path_.c_str(), &buf )) |
| return false; |
| return S_ISDIR( buf.st_mode ); |
| } |
| |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| bool |
| FileSystem::isFile( std::string path_ ) |
| { |
| struct stat buf; |
| if( stat( path_.c_str(), &buf )) |
| return false; |
| return S_ISREG( buf.st_mode ); |
| } |
| |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| bool |
| FileSystem::getFileSize( std::string path_, File::Size& size_ ) |
| { |
| size_ = 0; |
| struct stat buf; |
| if( stat( path_.c_str(), &buf )) |
| return true; |
| size_ = buf.st_size; |
| return false; |
| } |
| |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| bool |
| FileSystem::rename( std::string from, std::string to ) |
| { |
| return ::rename( from.c_str(), to.c_str() ) != 0; |
| } |
| |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| std::string FileSystem::DIR_SEPARATOR = "/"; |
| std::string FileSystem::PATH_SEPARATOR = ":"; |
| |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| }}} // namespace mp4v2::platform::io |