SourceForge.net Logo
PythonQt
PythonQtImportFileInterface.h
Go to the documentation of this file.
00001 #ifndef _PYTHONQTIMPORTFILEINTERFACE_H
00002 #define _PYTHONQTIMPORTFILEINTERFACE_H
00003 
00004 /*
00005  *
00006  *  Copyright (C) 2010 MeVis Medical Solutions AG All Rights Reserved.
00007  *
00008  *  This library is free software; you can redistribute it and/or
00009  *  modify it under the terms of the GNU Lesser General Public
00010  *  License as published by the Free Software Foundation; either
00011  *  version 2.1 of the License, or (at your option) any later version.
00012  *
00013  *  This library is distributed in the hope that it will be useful,
00014  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00016  *  Lesser General Public License for more details.
00017  *
00018  *  Further, this software is distributed without any warranty that it is
00019  *  free of the rightful claim of any third person regarding infringement
00020  *  or the like.  Any license provided herein, whether implied or
00021  *  otherwise, applies only to this software file.  Patent licenses, if
00022  *  any, provided herein do not apply to combinations of this program with
00023  *  other software, or any other product whatsoever.
00024  *
00025  *  You should have received a copy of the GNU Lesser General Public
00026  *  License along with this library; if not, write to the Free Software
00027  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00028  *
00029  *  Contact information: MeVis Medical Solutions AG, Universitaetsallee 29,
00030  *  28359 Bremen, Germany or:
00031  *
00032  *  http://www.mevis.de
00033  *
00034  */
00035 
00036 //----------------------------------------------------------------------------------
00043 //----------------------------------------------------------------------------------
00044 
00045 #include <QDateTime>
00046 #include <QString>
00047 #include <QByteArray>
00048 
00051 class PythonQtImportFileInterface {
00052 
00053 public:
00054   // get rid of warnings
00055   virtual ~PythonQtImportFileInterface() {}
00056 
00058   virtual QByteArray readFileAsBytes(const QString& filename) = 0;
00059 
00062   virtual QByteArray readSourceFile(const QString& filename, bool& ok) = 0;
00063 
00065   virtual bool exists(const QString& filename) = 0;
00066 
00068   virtual QDateTime lastModifiedDate(const QString& filename) = 0;
00069 
00072   virtual bool ignoreUpdatedPythonSourceFiles() { return false; }
00073 
00076   virtual void importedModule(const QString& /*module*/) {};
00077 
00078 };
00079 
00080 #endif
00081