#include <mitkNrrdQBallImageWriter.h>
Public Types | |
typedef NrrdQBallImageWriter | Self |
typedef mitk::FileWriterWithInformation | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer < const Self > | ConstPointer |
typedef mitk::QBallImage | InputType |
Public Member Functions | |
virtual const char * | GetClassName () const |
virtual void | Write () |
virtual void | Update () |
virtual void | SetFileName (const char *_arg) |
virtual const char * | GetFileName () const |
virtual void | SetFilePrefix (const char *_arg) |
virtual const char * | GetFilePrefix () const |
virtual void | SetFilePattern (const char *_arg) |
virtual const char * | GetFilePattern () const |
void | SetInput (InputType *input) |
InputType * | GetInput () |
virtual bool | GetSuccess () |
virtual std::vector< std::string > | GetPossibleFileExtensions () |
virtual const char * | GetDefaultFilename () |
virtual const char * | GetFileDialogPattern () |
virtual const char * | GetDefaultExtension () |
virtual bool | CanWriteDataType (BaseData::Pointer data) |
virtual void | DoWrite (BaseData::Pointer data) |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
NrrdQBallImageWriter () | |
virtual | ~NrrdQBallImageWriter () |
virtual void | GenerateData () |
Protected Attributes | |
std::string | m_FileName |
std::string | m_FilePrefix |
std::string | m_FilePattern |
bool | m_Success |
Writes diffusion volumes to a file
Definition at line 33 of file mitkNrrdQBallImageWriter.h.
typedef itk::SmartPointer<const Self> mitk::NrrdQBallImageWriter::ConstPointer |
Reimplemented from mitk::FileWriterWithInformation.
Definition at line 37 of file mitkNrrdQBallImageWriter.h.
Definition at line 41 of file mitkNrrdQBallImageWriter.h.
typedef itk::SmartPointer<Self> mitk::NrrdQBallImageWriter::Pointer |
Reimplemented from mitk::FileWriterWithInformation.
Definition at line 37 of file mitkNrrdQBallImageWriter.h.
Reimplemented from mitk::FileWriterWithInformation.
Definition at line 37 of file mitkNrrdQBallImageWriter.h.
Reimplemented from mitk::FileWriterWithInformation.
Definition at line 37 of file mitkNrrdQBallImageWriter.h.
mitk::NrrdQBallImageWriter::NrrdQBallImageWriter | ( | ) | [protected] |
Definition at line 26 of file mitkNrrdQBallImageWriter.cpp.
: m_FileName(""), m_FilePrefix(""), m_FilePattern(""), m_Success(false) { this->SetNumberOfRequiredInputs( 1 ); }
mitk::NrrdQBallImageWriter::~NrrdQBallImageWriter | ( | ) | [protected, virtual] |
Definition at line 33 of file mitkNrrdQBallImageWriter.cpp.
{}
virtual bool mitk::NrrdQBallImageWriter::CanWriteDataType | ( | BaseData::Pointer | data ) | [inline, virtual] |
Implements mitk::FileWriterWithInformation.
Definition at line 101 of file mitkNrrdQBallImageWriter.h.
Referenced by DoWrite().
{ return (dynamic_cast<mitk::QBallImage*>(data.GetPointer()) != NULL); };
virtual void mitk::NrrdQBallImageWriter::DoWrite | ( | BaseData::Pointer | data ) | [inline, virtual] |
Implements mitk::FileWriterWithInformation.
Definition at line 102 of file mitkNrrdQBallImageWriter.h.
References CanWriteDataType(), SetInput(), and Update().
{ if (CanWriteDataType(data)) { this->SetInput(dynamic_cast<mitk::QBallImage*>(data.GetPointer())); this->Update(); } };
void mitk::NrrdQBallImageWriter::GenerateData | ( | ) | [protected, virtual] |
Definition at line 37 of file mitkNrrdQBallImageWriter.cpp.
References mitk::CastToItkImage(), and QBALL_ODFSIZE.
{ m_Success = false; InputType* input = this->GetInput(); if (input == NULL) { itkWarningMacro(<<"Sorry, input to NrrdQBallImageWriter is NULL!"); return; } if ( m_FileName == "" ) { itkWarningMacro( << "Sorry, filename has not been set!" ); return ; } itk::NrrdImageIO::Pointer io = itk::NrrdImageIO::New(); io->SetFileType( itk::ImageIOBase::Binary ); typedef itk::VectorImage<float, 3> VecImgType; typedef itk::Image<itk::Vector<float,QBALL_ODFSIZE>,3> ImageType; typedef itk::ImageFileWriter<VecImgType> WriterType; WriterType::Pointer nrrdWriter = WriterType::New(); ImageType::Pointer outimage = ImageType::New(); CastToItkImage(input, outimage); VecImgType::Pointer vecImg = VecImgType::New(); vecImg->SetSpacing( outimage->GetSpacing() ); // Set the image spacing vecImg->SetOrigin( outimage->GetOrigin() ); // Set the image origin vecImg->SetDirection( outimage->GetDirection() ); // Set the image direction vecImg->SetLargestPossibleRegion( outimage->GetLargestPossibleRegion()); vecImg->SetBufferedRegion( outimage->GetLargestPossibleRegion() ); vecImg->SetVectorLength(QBALL_ODFSIZE); vecImg->Allocate(); itk::ImageRegionIterator<VecImgType> ot (vecImg, vecImg->GetLargestPossibleRegion() ); ot = ot.Begin(); itk::ImageRegionIterator<ImageType> it (outimage, outimage->GetLargestPossibleRegion() ); typedef ImageType::PixelType VecPixType; typedef VecImgType::PixelType VarVecType; for (it = it.Begin(); !it.IsAtEnd(); ++it) { VecPixType vec = it.Get(); VarVecType varVec(vec.GetVnlVector().data_block(), QBALL_ODFSIZE); ot.Set(varVec); ++ot; } nrrdWriter->SetInput( vecImg ); nrrdWriter->SetImageIO(io); nrrdWriter->SetFileName(m_FileName); try { nrrdWriter->Update(); } catch (itk::ExceptionObject e) { std::cout << e << std::endl; } m_Success = true; }
virtual const char* mitk::NrrdQBallImageWriter::GetClassName | ( | ) | const [virtual] |
Reimplemented from mitk::FileWriterWithInformation.
virtual const char* mitk::NrrdQBallImageWriter::GetDefaultExtension | ( | ) | [inline, virtual] |
Implements mitk::FileWriterWithInformation.
Definition at line 100 of file mitkNrrdQBallImageWriter.h.
{ return ".qbi"; }
virtual const char* mitk::NrrdQBallImageWriter::GetDefaultFilename | ( | ) | [inline, virtual] |
Implements mitk::FileWriterWithInformation.
Definition at line 98 of file mitkNrrdQBallImageWriter.h.
{ return "QBalls.qbi"; }
virtual const char* mitk::NrrdQBallImageWriter::GetFileDialogPattern | ( | ) | [inline, virtual] |
Implements mitk::FileWriterWithInformation.
Definition at line 99 of file mitkNrrdQBallImageWriter.h.
{ return "Q-Ball Images (*.qbi *.hqbi"; }
virtual const char* mitk::NrrdQBallImageWriter::GetFileName | ( | ) | const [virtual] |
Implements mitk::FileWriter.
virtual const char* mitk::NrrdQBallImageWriter::GetFilePattern | ( | ) | const [virtual] |
Implements mitk::FileWriter.
virtual const char* mitk::NrrdQBallImageWriter::GetFilePrefix | ( | ) | const [virtual] |
Implements mitk::FileWriter.
mitk::QBallImage * mitk::NrrdQBallImageWriter::GetInput | ( | void | ) |
Definition at line 112 of file mitkNrrdQBallImageWriter.cpp.
{ if ( this->GetNumberOfInputs() < 1 ) { return NULL; } else { return dynamic_cast<InputType*> ( this->ProcessObject::GetInput( 0 ) ); } }
std::vector< std::string > mitk::NrrdQBallImageWriter::GetPossibleFileExtensions | ( | ) | [virtual] |
Implements mitk::FileWriter.
Definition at line 125 of file mitkNrrdQBallImageWriter.cpp.
{ std::vector<std::string> possibleFileExtensions; possibleFileExtensions.push_back(".qbi"); possibleFileExtensions.push_back(".hqbi"); return possibleFileExtensions; }
virtual bool mitk::NrrdQBallImageWriter::GetSuccess | ( | ) | [virtual] |
Returns false if an error happened during writing
static Pointer mitk::NrrdQBallImageWriter::New | ( | ) | [static] |
virtual void mitk::NrrdQBallImageWriter::SetFileName | ( | const char * | _arg ) | [virtual] |
Sets the filename of the file to write.
FileName | the name of the file to write. |
Implements mitk::FileWriter.
virtual void mitk::NrrdQBallImageWriter::SetFilePattern | ( | const char * | _arg ) | [virtual] |
Implements mitk::FileWriter.
virtual void mitk::NrrdQBallImageWriter::SetFilePrefix | ( | const char * | _arg ) | [virtual] |
Implements mitk::FileWriter.
void mitk::NrrdQBallImageWriter::SetInput | ( | InputType * | input ) |
Sets the input object for the filter.
input | the diffusion volumes to write to file. |
Definition at line 106 of file mitkNrrdQBallImageWriter.cpp.
Referenced by DoWrite().
{ this->ProcessObject::SetNthInput( 0, diffVolumes ); }
virtual void mitk::NrrdQBallImageWriter::Update | ( | ) | [inline, virtual] |
Definition at line 39 of file mitkNrrdQBallImageWriter.h.
Referenced by DoWrite().
virtual void mitk::NrrdQBallImageWriter::Write | ( | ) | [inline, virtual] |
Implements mitk::FileWriter.
Definition at line 39 of file mitkNrrdQBallImageWriter.h.
std::string mitk::NrrdQBallImageWriter::m_FileName [protected] |
Definition at line 117 of file mitkNrrdQBallImageWriter.h.
std::string mitk::NrrdQBallImageWriter::m_FilePattern [protected] |
Definition at line 121 of file mitkNrrdQBallImageWriter.h.
std::string mitk::NrrdQBallImageWriter::m_FilePrefix [protected] |
Definition at line 119 of file mitkNrrdQBallImageWriter.h.
bool mitk::NrrdQBallImageWriter::m_Success [protected] |
Definition at line 123 of file mitkNrrdQBallImageWriter.h.