00001 // Copyright (C) 2007-2011 CEA/DEN, EDF R&D 00002 // 00003 // This library is free software; you can redistribute it and/or 00004 // modify it under the terms of the GNU Lesser General Public 00005 // License as published by the Free Software Foundation; either 00006 // version 2.1 of the License. 00007 // 00008 // This library is distributed in the hope that it will be useful, 00009 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00010 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00011 // Lesser General Public License for more details. 00012 // 00013 // You should have received a copy of the GNU Lesser General Public 00014 // License along with this library; if not, write to the Free Software 00015 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00016 // 00017 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com 00018 // 00019 // File : MEDSPLITTERTest_TmpFilesRemover.hxx 00020 // Created : Mon Jul 6 14:08:12 2009 00021 // Author : Edward AGAPOV (eap) 00022 00023 #ifndef __MEDSPLITTERTest_UTILS_HXX__ 00024 #define __MEDSPLITTERTest_UTILS_HXX__ 00025 00026 #include <set> 00027 #include <string> 00028 #include <ios> 00029 #include <cstdlib> 00030 00031 // to automatically remove temporary files from disk 00032 class MEDSPLITTERTest_TmpFilesRemover 00033 { 00034 public: 00035 00036 MEDSPLITTERTest_TmpFilesRemover() {} 00037 bool Register(const std::string theTmpFile, const bool and_remove=true); 00038 ~MEDSPLITTERTest_TmpFilesRemover(); 00039 00040 private: 00041 std::set<std::string> myTmpFiles; 00042 }; 00043 00044 namespace MEDSPLITTERTest_Utils 00045 { 00046 std::string getResourceFile( const std::string& ); 00047 std::string getTmpDirectory(); 00048 std::string makeTmpFile( const std::string&, const std::string& = "" ); 00049 } 00050 00051 #endif