]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOGimmickView.h
memory leak tracking
[creaImageIO.git] / src2 / creaImageIOGimmickView.h
index 3287c4d3209e3fd676e9ba9b1c68164314fa9402..6fca80290652d87ee96c74b3a55f86aeb6702254 100644 (file)
@@ -103,7 +103,8 @@ namespace creaImageIO
          void ReadImagesNotThreaded(std::vector<vtkImageData*>& s,std::vector<std::string> files, int dim);
       ///Requests the reading of an image with priority and index in the 
       /// current selection (-1 if not in selection)
-      void RequestReading(tree::Node* n, int prio, int selection_index , ImagePointerHolder *p);
+      //void RequestReading(tree::Node* n, int prio, int selection_index , ImagePointerHolder *p);
+         void RequestReading(tree::Node* n, int prio, int selection_index , boost::shared_ptr<ImagePointerHolder> p);
      
       
       ///Obtains the message of the state
@@ -157,7 +158,7 @@ namespace creaImageIO
     private:
        
       /// Controller which manages the interaction with the model
-      Gimmick* mGimmick;
+               boost::shared_ptr< Gimmick> mGimmick;
       /// The views 
       TreeViewMapType mTreeViewMap;
       /// The message that results from the validation
@@ -171,15 +172,15 @@ namespace creaImageIO
       struct ImageEventType
       {
        ImageEventType( tree::Node* no = 0,   
-                       int sel_index = -1,
-                       ImagePointerHolder* ph= 0)
-         : node(no), index(sel_index),  pointerHolder(ph){}
+                       int sel_index = -1)
+//                     ImagePointerHolder* ph= 0)
+: node(no), index(sel_index){}//,  pointerHolder(ph){}
         ImageEventType(vtkImageData* im )
          : image(im) {}
         tree::Node* node;
         vtkImageData* image;
                int index;
-               ImagePointerHolder* pointerHolder;
+               boost::shared_ptr<ImagePointerHolder> pointerHolder;
       };
       typedef std::map<std::string,ImageEventType> ImageEventTypeMap;
       /// Map of images' names to ImageEventType
@@ -203,149 +204,7 @@ namespace creaImageIO
     //=====================================================================
   
 
-  /*
-
-
-
-
-
-
-
-
-       //====================================================================
-       // General
-       //====================================================================
-
-    /// Returns the size of the current selection
-    virtual int GetSelectionSize() { return 0; } 
-    /// Returns true if there is a valid selection
-    virtual bool IsSelectionValid(){ return false; }
-    /// Returns the vector of full filenames of selected images
-    virtual void GetSelectedFiles(std::vector<std::string>&){ return; }
-    /// Returns the vector of images corresponding to selection
-    virtual void GetSelectedImages(std::vector<vtkImageData*>&){ return; }
-    /// Returns the vector of DicomNode corresponding to selection
-    virtual void GetSelectedDicomNodes(std::vector<DicomNode*>&){ return; }
-   /// Returns the DicomNode corresponding to the tree item
-    virtual DicomNode* GetDicomNodeOfItem(const TreeItemId& i);
-
-       
-       /// Type of list of DicomDatabase
-    typedef std::vector<DicomDatabase*> DicomDatabaseListType;
-    /// Returns the list of DicomDatabase open
-    virtual DicomDatabaseListType& GetDicomDatabaseList() 
-    { return null; }
-    /// Returns the list of DicomDatabase open (const)
-    virtual const DicomDatabaseListType& GetDicomDatabaseList() const 
-    { return null; }
-
-       protected:
-       ///Opens an existing database, or else, creates a local database.
-    virtual void OpenOrNewDatabase(bool open){ return; }
-       ///Shows the help
-       virtual void ShowHelp();
-
-       private:
-       ///Gets the extension of the database
-       const std::string& GetDatabaseExtension() { return null; }
-       ///Sets the extension of the database
-    virtual void SetDatabaseExtension(const std::string& ext){ return; }
-
-
-       //====================================================================
-    // Preview Display Related
-       //====================================================================
-
-
-    ///Shows the image sent as a parameter
-       private:
-        virtual void ShowImage(vtkImageData* image){ return; }
-
-       //====================================================================
-    // Favorites Related
-       //====================================================================
-
-
-       public:
-       ///Loads or creates a favorites database
-    virtual void LoadOrCreateFavoritesDatabase(){ return; }
-       private:
-       ///Creates the user settings directory
-    void CreateUserSettingsDirectory(){ return; }
-       ///Obtains the user settings directory
-       const std::string& GetUserSettingsDirectory(){ return null; }
-
-       //====================================================================  
-       // Attribute Display Related
-       //====================================================================
-
-
-       ///Shows the Information regarding the node sent as a parameter
-       private:
-     virtual void ShowInformation(DicomNode*){ return; }
-   
-       //====================================================================
-    // Tree Display Related
-    //====================================================================
-
-       protected:
-    /// Completely rebuilds the view with 
-    /// current DicomDatabaseList
-    virtual void RebuildView(){ return; }
-       /// Recursively updates the part of the view corresponding 
-    /// to the DicomDatabase passed
-    /// i.e. creates items for the DicomNode which do not have
-    ///      deletes obsolete items (whose DicomNode has been deleted)
-    virtual void UpdateDicomDatabaseView(DicomDatabase*){ return; }
-    /// Recursively updates the part of the view corresponding 
-    /// to the DicomNode provided.
-    /// parent is its parent in the tree (where to insert / remove it)
-       virtual void UpdateDicomNodeView(DicomNode* n, const TreeItemId& parent){ return; }
-    
-       private:
-       ///Type definition of the data regarding the tree
-    typedef WxGimmickTreeItemData TreeItemData;
-       ///Gets the item data of the tree item passed as a parameter
-    TreeItemData* GetItemData(const TreeItemId& id){ return null; }
-    ///Type definition of the data insid a node of the tree
-    typedef WxGimmickDicomNodeData NodeData;
-
-
-       //====================================================================
-    // Class Attributes
-    //====================================================================
-
-       
-       int mSelectionType;
-    int mSelectionMaxImageDimension;
-    int mCurrentSelectionImageSize[4];
-
-       ///Existent Database List
-    DicomDatabaseListType mDicomDatabaseList;
-       ///Favorites database
-    DicomDatabase* mFavoriteDatabase;
-
-       ///Path to the database list file
-    std::string mDatabaseListFile;
-       ///Extension of the database
-    std::string mDatabaseExtension;
-
-    bool mJustStarted;
-
-    int  mFirstDicomDatabaseIconIndex;
-
-   // Previewer
-    vtkImageViewer2* mViewer;
-    
-    int mx1,mx2,my1,my2,mz1,mz2;
-    double mspx,mspy,mspz;
-  
-    // Image preview :
-    // Multi-thread image reader
-    MultiThreadImageReader mReader;
-    // map of images name to node
-    std::map<std::string,DicomNode*> mImageFileNameToNode;
-  */
  
 } // EO namespace creaImageIO