X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvMainWindow.h;h=81bc7c42705fa310d5ec72425c9e6c6e5ea5be3e;hb=776f50aff3e47001b78e1c7dc4d51e789434f92a;hp=7933b167775d8e242184f5f7c46a2ca3123dcc43;hpb=9ac2232043d7a08735edf00572ccb6565919fd3d;p=clitk.git diff --git a/vv/vvMainWindow.h b/vv/vvMainWindow.h index 7933b16..81bc7c4 100644 --- a/vv/vvMainWindow.h +++ b/vv/vvMainWindow.h @@ -1,7 +1,7 @@ /*========================================================================= Program: vv http://www.creatis.insa-lyon.fr/rio/vv - Authors belong to: + Authors belong to: - University of LYON http://www.universite-lyon.fr/ - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr @@ -26,6 +26,7 @@ #include "vvToolManager.h" #include "vvImageReader.h" #include "vvMesh.h" +#include "vvWipeImage.h" #include "clitkMemoryUsage.h" #include "vtkSmartPointer.h" @@ -39,6 +40,9 @@ class vtkImageData; class vtkRenderer; class vtkMatrix4x4; class vvDicomSeriesSelector; +#if CLITK_USE_PACS_CONNECTION +class vvQPacsConnection; +#endif class vvSlicer; class QTreeWidget; @@ -54,20 +58,22 @@ class vvMainWindow: public vvMainWindowBase, void LoadImages(std::vector filenames, vvImageReader::LoadedImageType type); vvSlicerManager * AddImage(vvImage::Pointer image,std::string filename); void AddField(QString file,int index); + bool CheckAddedImage(int index, QString imageType); void AddOverlayImage(int index, std::vector fileNames, vvImageReader::LoadedImageType type); - void AddFusionImage(int index, QString filename); + void AddFusionImage(int index, std::vector fileNames, vvImageReader::LoadedImageType type); void AddROI(int index, QString filename); + //Process the sequence for fusion: void AddFusionSequence(int index, std::vector fileNames, vvImageReader::LoadedImageType type); - ///Adds a mesh to a SlicerManager, with optional warping by vector field + void AddLandmarks(int index, std::vector); +///Adds a mesh to a SlicerManager, with optional warping by vector field void AddContour(int image_index, vvMesh::Pointer contour, bool propagation); ///This is used to show an image when opened or computed void ShowLastImage(); void SaveCurrentStateAs(const std::string& stateFile); void ReadSavedStateFile(const std::string& stateFile); void LinkAllImages(); - QString Get4x4MatrixDoubleAsString(vtkSmartPointer matrix, const int precision=3); virtual void UpdateCurrentSlicer(); virtual QTabWidget * GetTab(); @@ -89,6 +95,9 @@ public slots: void SliceImages(); void MergeImagesWithTime(); void OpenDicom(); +#if CLITK_USE_PACS_CONNECTION + void ConnectPacs(); +#endif ///Open a vtkPolyData surface mesh and display it over the current image void OpenVTKContour(); void SaveAs(); @@ -116,7 +125,7 @@ public slots: void WindowLevelChanged(); void UpdateSlice(int slicer, int slice); - void UpdateTSlice(int slicer, int slice); + void UpdateTSlice(int slicer, int slice, int code=-1); void UpdateSliceRange(int slicer, int min, int max, int tmin, int tmax); void WindowLevelEdited(); void SetWindowLevel(double w, double l); @@ -156,10 +165,11 @@ public slots: void ReloadImage(); void OpenField(); void SelectOverlayImage(); + void SelectWipeImage(); void SelectFusionImage(); //select the file(s) from the disk containing the image sequence to fuse void SelectFusionSequence(); - void SelectFusionSequenceTemporalSignal(); + void SelectFusionSequenceCorrespondances(); void ResetTransformationToIdentity(); @@ -169,6 +179,7 @@ public slots: void SetFusionSequenceProperty(int fusionSequenceFrameIndex, bool spatialSyncFlag, unsigned int fusionSequenceNbFrames, bool temporalSyncFlag); void GoToCursor(); + void GoToLandmark(); void PlayPause(); void PlayNext(); void ChangeFrameRate(int rate) { @@ -178,6 +189,8 @@ public slots: void UpdateMemoryUsage(); void show(); + static vvMainWindow* Instance(){return mSingleton;} + protected: void createRecentlyOpenedFilesMenu(); @@ -190,6 +203,12 @@ private: vvHelpDialog *help_dialog; vvDocumentation *documentation; vvDicomSeriesSelector *dicomSeriesSelector; + + vvWipeImage::Pointer mWipeImage; + +#if CLITK_USE_PACS_CONNECTION + vvQPacsConnection *PacsConnection; +#endif bool viewMode; bool playMode; @@ -227,7 +246,7 @@ private: // vvMainWindowToolInfo * mCurrentToolInfo; // std::vector mListOfRunningTool; - static vvMainWindow * mSingleton; + static vvMainWindow* mSingleton; int mCurrentTime;