dinvermatlab/MatlabPlugin.h
Go to the documentation of this file.
00001 /***************************************************************************
00002 **
00003 **  This file is part of dinvermatlab.
00004 **
00005 **  This file is distributed under the terms of the Geopsy.org Commercial
00006 **  License appearing in the file LICENSE.COMMERCIAL included in the packaging
00007 **  of this file.
00008 **
00009 **  This file is distributed in the hope that it will be useful, but WITHOUT
00010 **  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00011 **  FITNESS FOR A PARTICULAR PURPOSE. See Geopsy.org Commercial License for
00012 **  more details.
00013 **
00014 **  You should have received a copy of the Geopsy.org Commercial License
00015 **  along with this program. If not, see <http://www.geopsy.org>.
00016 **
00017 **  See http://www.geopsy.org for more information.
00018 **
00019 **  Created : 2008-11-23
00020 **  Authors :
00021 **    Marc Wathelet
00022 **    Marc Wathelet (LGIT, Grenoble, France)
00023 **
00024 ***************************************************************************/
00025 
00026 #ifndef MATLABPLUGIN_H
00027 #define MATLABPLUGIN_H
00028 
00029 #include <DinverGui.h>
00030 
00031 #include "dinvermatlabInstallPath.h"
00032 
00033 class MatlabTargetWidget;
00034 class MatlabTarget;
00035 class MatlabInversion;
00036 
00037 class MatlabPlugin : public DinverInterface
00038 {
00039   Q_OBJECT
00040   Q_INTERFACES(DinverCore::DinverInterface);
00041 public:
00042   MatlabPlugin();
00043   ~MatlabPlugin();
00044 
00045   virtual QString tag() const;
00046   virtual QString title() const ;
00047   virtual QString version() const ;
00048   virtual QString description() const ;
00049 
00050   virtual QWidget * createTargetWidget();
00051   virtual QWidget * createParamWidget();
00052 
00053   virtual bool xmlSupport() const {return true;}
00054   virtual void xml_writeChildren(XML_WRITECHILDREN_ARGS) const;
00055   virtual XMLMember xml_member(XML_MEMBER_ARGS);
00056   virtual bool xml_polishChild(XML_POLISHCHILD_ARGS);
00057   virtual const char * interfaceVersion() const {return DINVERCORE_VERSION;}
00058 
00059   virtual AbstractForward * createForward();
00060   virtual bool initForward(AbstractForward * forward);
00061   virtual void setCurrentForward(AbstractForward * forwards, const QString& );
00062 private slots:
00063   void checkScript();
00064 private:
00065   ParamSpaceEditor * _paramWidget;
00066   MatlabTargetWidget * _targetWidget;
00067   // Global and batch definition of parameters and target
00068   // Null when global selection is active
00069   ParamSpaceScript * _param;
00070   MatlabTarget * _target;
00071   MatlabInversion * _currentRun;
00072 };
00073 
00074 #endif // MATLABPLUGIN_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines