X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSUPERVGUI%2FSUPERVGUI_Main.h;h=08692040f8072f66d921cc84aba2bdc8f257d265;hb=c072666b3f438eeda76c701ec1b237673490f551;hp=300b1c23414a8d8df0f74f202bc78b78a2dc88b7;hpb=7467fa6b4d1c728084256fc2b9a143b25da98426;p=modules%2Fsuperv.git diff --git a/src/SUPERVGUI/SUPERVGUI_Main.h b/src/SUPERVGUI/SUPERVGUI_Main.h index 300b1c2..0869204 100644 --- a/src/SUPERVGUI/SUPERVGUI_Main.h +++ b/src/SUPERVGUI/SUPERVGUI_Main.h @@ -35,11 +35,15 @@ #include "QAD_Desktop.h" #include "SUPERVGUI_Port.h" +#include +#include +#include + class QAD_Study; class QAD_ObjectBrowser; class QAD_Message; class NOTIFICATION_Consumer; - +class SUPERVGUI_Thread; class SUPERVGUI_Main: public SUPERVGraph_View { Q_OBJECT @@ -95,8 +99,27 @@ class SUPERVGUI_Main: public SUPERVGraph_View { void lockedGraph(bool theLock) { myIsLocked = theLock; } bool isLocked() { return myIsLocked; } + SUPERV::GraphState getNodeExecState(); + void setNodeExecState(SUPERV::GraphState theNodeExecState); + + QPtrList< char * > getEventNodes(); + void setEventNodes(QPtrList< char * > theEventNodes); + bool removeFirstEN() { return myEventNodes.removeFirst(); } + void removeEventNodes() { myEventNodes.clear(); } + + QPtrList< SUPERV::GraphState > getStates(); + void setStates(QPtrList< SUPERV::GraphState > theStates); + bool removeFirstS() { return myStates.removeFirst(); } + void removeStates() { myStates.clear(); } + + int getNodesNumber(); + SUPERVGUI_Thread* getMyThread(); + + void startTimer(); + void executionFinished(); + public slots: - void execute(); + void execute(char * theNodeNode, SUPERV::GraphState theNodeState); void sync(); void syncAsync(); bool addStudy(); @@ -111,11 +134,10 @@ class SUPERVGUI_Main: public SUPERVGraph_View { private slots: void chooseData(QListViewItem* item); + void checkExecution(); private: void init(QAD_Desktop* parent); - void StartTimer(const char* m); - void StopTimer(const char* m); void syncNotification(); bool isFiltered(char* graph, char* node, char* type, char* message, char* sender, long counter, char* date, long stamp); @@ -124,8 +146,7 @@ class SUPERVGUI_Main: public SUPERVGraph_View { QAD_ObjectBrowser* objectBrowser; QAD_Message* message; SUPERVGUI_Graph* graph; - QTimer* timer; - + GraphViewType myCurrentView; SUPERVGUI_Array* array; @@ -152,6 +173,31 @@ class SUPERVGUI_Main: public SUPERVGraph_View { bool myVerbose; bool myIsKilled; bool myIsLocked; + + SUPERVGUI_Thread* myThread; + + QPtrList< char * > myEventNodes ; + QPtrList< SUPERV::GraphState > myStates ; + QTimer* myTimer; +}; + +class SUPERVGUI_Thread : public QObject, public QThread { + Q_OBJECT; + public: + SUPERVGUI_Thread(); + ~SUPERVGUI_Thread(); + + void startThread(const char* m); + void stopThread(const char* m); + void setMain(SUPERVGUI_Main* theMain); + + protected: + void run(); + + private: + bool myIsActive; + SUPERVGUI_Main* myMain; + }; #endif