Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

wxGlobalOptimObj.h

00001 /*
00002 * LibCryst++ : a Crystallographic computing library in C++
00003 *
00004 *  (c) 2000 Vincent FAVRE-NICOLIN
00005 *           Laboratoire de Cristallographie
00006 *           24, quai Ernest-Ansermet, CH-1211 Geneva 4, Switzerland
00007 *  Contact: Vincent.Favre-Nicolin@cryst.unige.ch
00008 *           Radovan.Cerny@cryst.unige.ch
00009 *
00010 */
00011 
00012 #ifndef _VFN_WX_GLOBALOPTIM_OBJ_H_
00013 #define _VFN_WX_GLOBALOPTIM_OBJ_H_
00014 
00015 #include "wxCryst/wxCryst.h"
00016 namespace ObjCryst
00017 {
00018    class WXGlobalOptimObj;
00019 }
00020 #include "RefinableObj/GlobalOptimObj.h"
00021 namespace ObjCryst
00022 {
00023 class WXGlobalOptimRunThread;
00024 
00026 class WXGlobalOptimObj: public WXCrystObj
00027 {
00028    public:
00029       WXGlobalOptimObj(wxWindow *parent, GlobalOptimObj*);
00030       virtual void CrystUpdate();
00032       virtual void UpdateDisplayNbTrial();
00033       virtual bool OnChangeName(const int id);
00034       virtual void OnSave();
00035       virtual void OnLoad();
00037       virtual void OnAddRefinedObject();
00039       virtual void AddRefinedObject(RefinableObj &obj);
00041       virtual void OnAddCostFunction();
00043       virtual void AddCostFunction(RefinableObj &obj,const int costFuncNum);
00044       virtual void OnRunOptimization();
00045       virtual void OnStopOptimization();
00046    private:
00047       GlobalOptimObj *mpGlobalOptimObj;
00048       WXCrystMenuBar* mpMenuBar;
00049       WXGlobalOptimRunThread *mpGlobalOptimRunThread;
00051       long mNbTrial;
00052       WXFieldPar<long> *mpWXFieldNbTrial;
00053    DECLARE_EVENT_TABLE()
00054 };
00055 
00057 class WXGlobalOptimRunThread: public wxThread
00058 {
00059    public:
00060       WXGlobalOptimRunThread(GlobalOptimObj *globalOptObj,long &nbTrial);
00061       
00062       virtual void *Entry();
00063       virtual void OnExit();
00064    private:
00065       GlobalOptimObj *mpGlobalOptObj;
00067       long *mpNbTrial;
00068 };
00069 
00070 
00071 } //namespace
00072 
00073 #endif //_VFN_WX_GLOBALOPTIM_OBJ_H_

Generated on Wed Nov 14 19:48:36 2001 for ObjCryst++ by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001