X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src2%2FcreaImageIOGimmickView.h;h=ef435c17ae9302d85fd1dab27d2c6f4578b0d884;hb=9f8b288b5f8f56bc58fd01ddcb687833eb5ffa5b;hp=57ed312e35461b5a4354be043229dcca24d8b322;hpb=76e207a0161dd493be1b96d93d54d35cf3e88422;p=creaImageIO.git diff --git a/src2/creaImageIOGimmickView.h b/src2/creaImageIOGimmickView.h index 57ed312..ef435c1 100644 --- a/src2/creaImageIOGimmickView.h +++ b/src2/creaImageIOGimmickView.h @@ -30,7 +30,7 @@ namespace creaImageIO * \ingroup View */ - + class ImageExtent; //===================================================================== //===================================================================== @@ -38,7 +38,6 @@ namespace creaImageIO class GimmickView: public MultiThreadImageReaderUser { public: - /// Ctor GimmickView(Gimmick*, int number_of_threads = 0 ); /// Virtual destructor @@ -70,17 +69,26 @@ namespace creaImageIO virtual void GetSelectedFiles(std::vector& s) { GimmickError("INTERNAL ERROR : GetSelectedFiles not implemented"); } - virtual void OnSelectionChange(std::vector& s, bool isSelection, int selection, bool mProcess) + + virtual void GetImages(int dim, std::vector files, std::vector& s) + { GimmickError("INTERNAL ERROR : GetImages not implemented"); } + + virtual void OnSelectionChange(const std::vector& s, bool isSelection, int selection, bool mProcess) { GimmickError("INTERNAL ERROR : OnSelectionChange not implemented"); } + virtual void ClearSelection() { GimmickError("INTERNAL ERROR : ClearSelection not implemented"); } + + ///Adds a file to ignore + virtual void AddIgnoreFile(tree::Node* toRemove) + { GimmickError("INTERNAL ERROR : AddIgnoreFile not implemented"); } ///Validates the dimension compliance of the images with the maximum and minimum given, and between their sizes bool ValidateSelected (tree::Node* sel, int min_dim, int max_dim); - ///Reads the vector of nodes, builds images in the dimension required and returns them in the supplied vector. - void ReadImagesNotThreaded(std::vector& s,std::vector im, int dim); + ///Reads the vector of images, builds it in the dimension required and returns them in the supplied vector. + void ReadImagesNotThreaded(std::vector& s,std::vector 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); @@ -90,14 +98,17 @@ namespace creaImageIO std::string GetMessage(){return mMess;} ///Obtains the message of the state void SetMessage(std::string mess){mMess=mess;} - ///Clears status and begins a new selection - void ClearStatus(); + ///Resets the data of the extent and begins a new selection + void ResetExtent(); /// Create the tree views void CreateTreeViews(); + /// Create a tree view with a given name + void CreateSingleTreeView(std::string &i_name); + /// Create the tree view for TreeHandler provided - virtual void CreateTreeView( TreeHandler*) + virtual void CreateTreeView( TreeHandler* ) { GimmickError("INTERNAL ERROR : CreateTreeView not implemented"); } /// Updates the TreeView of given name from level l to bottom @@ -127,8 +138,10 @@ namespace creaImageIO void ConnectValidationObserver(ValidationCallbackType callback); //================================================================== + void modifyValidationSignal(bool ivalid); private: + /// Controller which manages the interaction with the model Gimmick* mGimmick; /// The views @@ -162,12 +175,14 @@ namespace creaImageIO typedef std::deque ImageEventQueueType; //ImageEventQueueType mImageEventQueue; + ///The current image extent + ImageExtent* mImageExtent; + ///The validation signal ValidationSignalType mValidationSignal; - std::string row; - std::string col; - std::string plane; - int selectionSize; + ///Boolean that determines if the selection is valid bool valid; + ///Boolean that determines if the reader has been started + bool mReaderStarted; }; // EO class GimmickView