]> Creatis software - creaImageIO.git/blobdiff - src/creaImageIOGimmickView.h
#2500 creaImageIO Bug New Normal - Boost signals deprecated -> signals2 (cleanning...
[creaImageIO.git] / src / creaImageIOGimmickView.h
index 7a0e839340e3a9c0a5b97b30b5e1604982aa9214..d0016904bcf0ca61ffed2c540b18733044e9022d 100644 (file)
@@ -1,3 +1,31 @@
+/*
+# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image 
+#                        pour la Santé)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+# Previous Authors : Laurent Guigues, Jean-Pierre Roux
+# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+#
+#  This software is governed by the CeCILL-B license under French law and 
+#  abiding by the rules of distribution of free software. You can  use, 
+#  modify and/ or redistribute the software under the terms of the CeCILL-B 
+#  license as circulated by CEA, CNRS and INRIA at the following URL 
+#  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 
+#  or in the file LICENSE.txt.
+#
+#  As a counterpart to the access to the source code and  rights to copy,
+#  modify and redistribute granted by the license, users are provided only
+#  with a limited warranty  and the software's author,  the holder of the
+#  economic rights,  and the successive licensors  have only  limited
+#  liability. 
+#
+#  The fact that you are presently reading this means that you have had
+#  knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------
+*/
+
+
 #ifndef __creaImageIOGimmickView_h_INCLUDED__
 #define __creaImageIOGimmickView_h_INCLUDED__
 
 
 //#include <map>
 #include <vtkImageData.h>
+#if defined (USE_WXWIDGETS)
 #include <creaImageIOMultiThreadImageReader.h>
+#endif
+
+#if defined(USE_QT)
+#include "Qt/creaImageIOQMultiThreadImageReader.h"
+#endif
+
 
 // Signal/slot mechanism for progress events
-#include <boost/signal.hpp>
+#include <boost/signals2/signal.hpp>
 #include <boost/bind.hpp>
 
 #define GIMMICK_NO_IMAGE_SELECTION 0
 
 namespace creaImageIO
 {
+        typedef std::map<std::string, std::string> mapInfoDicom;
 
        typedef struct 
        { 
                vtkImageData *img;
-               std::map<std::string, std::string> infos;
-       }OutStrGimmick;
+               //std::map<std::string, std::string> infos;
+               mapInfoDicom infos; 
+       } OutStrGimmick;
 
 
        /**
@@ -81,8 +118,8 @@ namespace creaImageIO
       virtual void GetSelectedFiles(std::vector<std::string>& s)
       { GimmickError("INTERNAL ERROR : GetSelectedFiles not implemented"); }
 
-         virtual void GetImages(int dim, std::vector<std::string> files, std::vector<vtkImageData*>& s) 
-         { GimmickError("INTERNAL ERROR : GetImages not implemented"); }
+      virtual void GetImages(int dim, std::vector<std::string> files, std::vector<vtkImageData*>& s) 
+      { GimmickError("INTERNAL ERROR : GetImages not implemented"); }
 
       virtual void OnSelectionChange(const std::vector<tree::Node*>& s, bool isSelection, int selection, bool mProcess)
       { GimmickError("INTERNAL ERROR : OnSelectionChange not implemented"); }
@@ -103,8 +140,7 @@ namespace creaImageIO
          { GimmickError("INTERNAL ERROR : EditFields not implemented"); }
       
          /// Anonymize or de-anonymize data
-         virtual void Anonymize(std::vector<std::string> i_filenames, int type)
-         { GimmickError("INTERNAL ERROR : Anonymize not implemented"); }
+         void Anonymize(std::vector<std::string> i_filenames, int type);
 
          /// Display all Dicom Tags
          virtual void DumpTags(const std::string filename)
@@ -166,7 +202,7 @@ namespace creaImageIO
       vtkImageData* GetDefaultImage() { return mReader.GetImage(""); }
 
       //=============================================
-      typedef boost::signal<void (bool)>  ValidationSignalType;
+      typedef boost::signals2::signal<void (bool)>  ValidationSignalType;
       typedef ValidationSignalType::slot_function_type ValidationCallbackType;
       //=============================================
 
@@ -187,6 +223,8 @@ namespace creaImageIO
        void readImages(std::vector<OutStrGimmick>& o_output, std::vector<std::string> im,
                         OutputAttr i_attr, int i_dim, double i_zspc);
                        bool isSingle(const std::string i_file);
+
+       void stopReader();
     private: