X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvImageReader.h;h=cbe7d1607e62b63c1bca49cdaeb93fd8cf8ed909;hb=b1f5d6c99d0263700df2ddb2c6d1bf348709cd92;hp=c9005aa63f899000c346721b0bdc7c810cd1078b;hpb=931a42358442f4ee4f314613c991c838d4b4e3b7;p=clitk.git diff --git a/vv/vvImageReader.h b/vv/vvImageReader.h index c9005aa..cbe7d16 100644 --- a/vv/vvImageReader.h +++ b/vv/vvImageReader.h @@ -1,32 +1,22 @@ /*========================================================================= + Program: vv http://www.creatis.insa-lyon.fr/rio/vv - Program: vv - Module: $RCSfile: vvImageReader.h,v $ - Language: C++ - Date: $Date: 2010/01/06 13:31:57 $ - Version: $Revision: 1.1 $ - Author : Pierre Seroul (pierre.seroul@gmail.com) + Authors belong to: + - University of LYON http://www.universite-lyon.fr/ + - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr -Copyright (C) 2008 -Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr -CREATIS-LRMN http://www.creatis.insa-lyon.fr + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the copyright notices for more information. -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, version 3 of the License. + It is distributed under dual licence -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . - -=========================================================================*/ + - BSD See included LICENSE.txt file + - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +======================================================================-====*/ #ifndef vvImageReader_H #define vvImageReader_H - #include #include #include @@ -35,57 +25,66 @@ along with this program. If not, see . #include "vvImage.h" #include "vvConstants.h" -class vvImageReader : public QThread { +class vvImageReader : public itk::LightObject, public QThread { public: - vvImageReader(); - ~vvImageReader(); + typedef vvImageReader Self; + typedef itk::SmartPointer Pointer; + itkNewMacro(Self); - void SetInputFilename(const std::string & filename); - void SetInputFilenames(const std::vector & filenames); + void SetInputFilename(const std::string & filename); + void SetInputFilenames(const std::vector & filenames); - vvImage::Pointer GetOutput() { - return mImage; - } + vvImage::Pointer GetOutput() { + return mImage; + } - std::string GetLastError() { - return mLastError; - } + std::string GetLastError() { + return mLastError; + } - //==================================================================== - // Main function - void Update(LoadedImageType type); - void Update(int dim, std::string InputPixelType, LoadedImageType type); - //void Extract(int dim, std::string InputPixelType, int slice); + void SetSlice(unsigned int i) { mSlice = i; } -protected: - void run(); - //==================================================================== - std::vector mInputFilenames; - ///Method used to load the image, see vvConstants.h for definition - LoadedImageType mType; - itk::Command::Pointer mObserver; - - std::string mLastError; - - //==================================================================== - template - void UpdateWithDim(std::string inputPixelType); - - //==================================================================== - /*template - void ExtractWithDim(std::string inputPixelType, int slice);*/ - - //==================================================================== - template - void UpdateWithDimAndInputPixelType(); - ///Input dimension and pixel type - int mDim; - std::string mInputPixelType; + //==================================================================== + // Main function + void Update(); + void Update(LoadedImageType type); + void Update(int dim, std::string InputPixelType, LoadedImageType type); +protected: + void run(); + //==================================================================== + std::vector mInputFilenames; + ///Method used to load the image, see vvConstants.h for definition + LoadedImageType mType; + unsigned int mSlice; + itk::Command::Pointer mObserver; + + std::string mLastError; + + //==================================================================== + template + void UpdateWithDim(std::string inputPixelType); + + //==================================================================== + /*template + void ExtractWithDim(std::string inputPixelType, int slice);*/ + + //==================================================================== + template + void UpdateWithDimAndInputPixelType(); + ///Input dimension and pixel type + int mDim; + std::string mInputPixelType; + + //==================================================================== + void ReadNkiImageTransform(); + void ReadMatImageTransform(); private: - vvImage::Pointer mImage; + vvImageReader(); + ~vvImageReader(); + vvImage::Pointer mImage; }; // end class vvImageReader #endif /* end #define CLITKvvImageReader_H */