X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvMainWindow.h;h=eee1d64b807eadea3582532b08c898bf21067710;hb=3378f6c372da1e07e35c45562749416fcfee6798;hp=e308314c59620094e59ac7bb778856154089283c;hpb=b7c0103ffcb88cd6dc1458fec00fc2d7077e48ea;p=clitk.git diff --git a/vv/vvMainWindow.h b/vv/vvMainWindow.h index e308314..eee1d64 100644 --- a/vv/vvMainWindow.h +++ b/vv/vvMainWindow.h @@ -55,9 +55,14 @@ class vvMainWindow: public vvMainWindowBase, vvSlicerManager * AddImage(vvImage::Pointer image,std::string filename); void AddField(QString file,int index); 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); - ///Adds a mesh to a SlicerManager, with optional warping by vector field + + //Process the sequence for fusion: + void AddFusionSequence(int index, std::vector fileNames, vvImageReader::LoadedImageType type); + + 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(); @@ -86,6 +91,7 @@ public slots: void SliceImages(); void MergeImagesWithTime(); void OpenDicom(); + void PacsConnection(); ///Open a vtkPolyData surface mesh and display it over the current image void OpenVTKContour(); void SaveAs(); @@ -107,12 +113,13 @@ public slots: void VectorChanged(int visibility, double x, double y, double z, double value); void OverlayChanged(int visibility, double valueOver, double valueRef); void FusionChanged(int visibility, double value); + //void FusionSequenceChanged(int visibility, double value); void SegmentationOnCurrentImage(); void SurfaceViewerLaunch(); 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); @@ -153,13 +160,19 @@ public slots: void OpenField(); void SelectOverlayImage(); void SelectFusionImage(); + //select the file(s) from the disk containing the image sequence to fuse + void SelectFusionSequence(); + void SelectFusionSequenceCorrespondances(); + void ResetTransformationToIdentity(); void SetVFProperty(int subsampling,int scale,int lut, int width, double r, double g, double b); void SetOverlayProperty(int color, int linked, double window, double level); void SetFusionProperty(int opacity, int tresOpacity, int colormap,double window,double level, bool showLegend); + void SetFusionSequenceProperty(int fusionSequenceFrameIndex, bool spatialSyncFlag, unsigned int fusionSequenceNbFrames, bool temporalSyncFlag); void GoToCursor(); + void GoToLandmark(); void PlayPause(); void PlayNext(); void ChangeFrameRate(int rate) { @@ -181,6 +194,7 @@ private: vvHelpDialog *help_dialog; vvDocumentation *documentation; vvDicomSeriesSelector *dicomSeriesSelector; + vvPacsConnection *PacsConnection; bool viewMode; bool playMode; @@ -198,7 +212,7 @@ private: QString GetSizeInBytes(unsigned long size); QString GetVectorDoubleAsString(std::vector vectorDouble); QString GetVectorIntAsString(std::vector vectorInt); - int GetSlicerIndexFromItem(QTreeWidgetItem* item); + int GetSlicerIndexFromItem(QTreeWidgetItem* item); //this actually returns the SlicerManager index TODO: rename it to GetSlicerManagerIndexFromItem QTreeWidgetItem* GetItemFromSlicerManager(vvSlicerManager* sm); void SaveScreenshot(QVTKWidget *widget); int GetImageDuplicateFilenameNumber(std::string filename);