Groups Headers containing Diffusion Information. More...
#include <mitkGroupDiffusionHeadersFilter.h>
Public Types | |
typedef GroupDiffusionHeadersFilter | Self |
typedef BaseProcess | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer < const Self > | ConstPointer |
typedef mitk::DiffusionImageHeaderInformation | HeaderType |
typedef HeaderType::Pointer | HeaderPointer |
typedef std::vector < HeaderPointer > | InputType |
typedef std::vector< InputType > | OutputType |
Public Member Functions | |
virtual const char * | GetClassName () const |
virtual void | SetInput (InputType input) |
virtual void | SetInput (const unsigned int &idx, InputType input) |
virtual void | SetNthOutput (const unsigned int &idx, InputType output) |
InputType | GetInput (void) |
InputType | GetInput (const unsigned int &idx) |
OutputType | GetOutput () |
virtual void | GenerateOutputInformation () |
virtual void | Update () |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
GroupDiffusionHeadersFilter () | |
virtual | ~GroupDiffusionHeadersFilter () |
Protected Attributes | |
OutputType | m_Output |
InputType | m_Input |
Groups Headers containing Diffusion Information.
Definition at line 33 of file mitkGroupDiffusionHeadersFilter.h.
typedef itk::SmartPointer<const Self> mitk::GroupDiffusionHeadersFilter::ConstPointer |
Definition at line 36 of file mitkGroupDiffusionHeadersFilter.h.
Definition at line 41 of file mitkGroupDiffusionHeadersFilter.h.
Definition at line 38 of file mitkGroupDiffusionHeadersFilter.h.
typedef std::vector<HeaderPointer> mitk::GroupDiffusionHeadersFilter::InputType |
Definition at line 42 of file mitkGroupDiffusionHeadersFilter.h.
typedef std::vector<InputType> mitk::GroupDiffusionHeadersFilter::OutputType |
Definition at line 44 of file mitkGroupDiffusionHeadersFilter.h.
typedef itk::SmartPointer<Self> mitk::GroupDiffusionHeadersFilter::Pointer |
Definition at line 36 of file mitkGroupDiffusionHeadersFilter.h.
Definition at line 36 of file mitkGroupDiffusionHeadersFilter.h.
Definition at line 36 of file mitkGroupDiffusionHeadersFilter.h.
mitk::GroupDiffusionHeadersFilter::GroupDiffusionHeadersFilter | ( | ) | [protected] |
A default constructor
Definition at line 22 of file mitkGroupDiffusionHeadersFilter.cpp.
{
// Modify superclass default values, may be overridden by subclasses
this->SetNumberOfRequiredInputs( 1 );
this->SetNumberOfRequiredOutputs( 4 );
}
mitk::GroupDiffusionHeadersFilter::~GroupDiffusionHeadersFilter | ( | ) | [protected, virtual] |
void mitk::GroupDiffusionHeadersFilter::GenerateOutputInformation | ( | void | ) | [virtual] |
Definition at line 33 of file mitkGroupDiffusionHeadersFilter.cpp.
{ }
virtual const char* mitk::GroupDiffusionHeadersFilter::GetClassName | ( | ) | const [virtual] |
mitk::GroupDiffusionHeadersFilter::InputType mitk::GroupDiffusionHeadersFilter::GetInput | ( | void | ) |
Definition at line 131 of file mitkGroupDiffusionHeadersFilter.cpp.
{ return m_Input; }
mitk::GroupDiffusionHeadersFilter::InputType mitk::GroupDiffusionHeadersFilter::GetInput | ( | const unsigned int & | idx ) |
idx | the index of the input to return |
Definition at line 137 of file mitkGroupDiffusionHeadersFilter.cpp.
{ return this->GetInput(); }
mitk::GroupDiffusionHeadersFilter::OutputType mitk::GroupDiffusionHeadersFilter::GetOutput | ( | void | ) |
Definition at line 143 of file mitkGroupDiffusionHeadersFilter.cpp.
{ return m_Output; }
static Pointer mitk::GroupDiffusionHeadersFilter::New | ( | ) | [static] |
void mitk::GroupDiffusionHeadersFilter::SetInput | ( | InputType | input ) | [virtual] |
Sets the input of this process object
input | the input |
Definition at line 118 of file mitkGroupDiffusionHeadersFilter.cpp.
{ // Process object is not const-correct so the const_cast is required here m_Input = input; }
void mitk::GroupDiffusionHeadersFilter::SetInput | ( | const unsigned int & | idx, |
InputType | input | ||
) | [virtual] |
Sets the input n'th of this process object
idx | the number associated with the given input |
Definition at line 125 of file mitkGroupDiffusionHeadersFilter.cpp.
{ this->SetInput( input ); }
void mitk::GroupDiffusionHeadersFilter::SetNthOutput | ( | const unsigned int & | idx, |
InputType | output | ||
) | [virtual] |
Sets the input n'th of this process object
idx | the number associated with the given input |
Definition at line 148 of file mitkGroupDiffusionHeadersFilter.cpp.
void mitk::GroupDiffusionHeadersFilter::Update | ( | ) | [virtual] |
Definition at line 37 of file mitkGroupDiffusionHeadersFilter.cpp.
References mitk::DHG_NonZeroDiffusionWeighted, mitk::DHG_NotYetGrouped, mitk::DHG_Other, and mitk::DHG_ZeroDiffusionWeighted.
{ InputType input = static_cast<InputType>( this->GetInput( ) ); this->SetNthOutput(0, input); InputType dwi; InputType zerodwi; InputType other; bool foundDWI = false; // check each series' first image unsigned int size = input.size(); HeaderPointer header; HeaderPointer dwiHeader; for ( unsigned int i = 0 ; i < size ; ++i ) { header = input[i]; // list of files if( header->bValue > 0) { header->headerGroup = DHG_NonZeroDiffusionWeighted; if(!foundDWI) dwiHeader = header; foundDWI = true; } else { header->headerGroup = DHG_ZeroDiffusionWeighted; } } if(foundDWI) { for ( unsigned int i = 0 ; i < size ; ++i ) { header = input[i]; // list of files if( !header->isIdentical(dwiHeader)) { header->headerGroup = DHG_Other; } } } else { for ( unsigned int i = 0 ; i < size ; ++i ) { header = input[i]; header->headerGroup = DHG_Other; } } for ( unsigned int i = 0 ; i < size ; ++i ) { header = input[i]; switch (header->headerGroup) { case DHG_Other: other.push_back(header); break; case DHG_ZeroDiffusionWeighted: zerodwi.push_back(header); break; case DHG_NonZeroDiffusionWeighted: dwi.push_back(header); break; case DHG_NotYetGrouped: break; } } this->SetNthOutput(1, dwi); this->SetNthOutput(2, zerodwi); this->SetNthOutput(3, other); }
InputType mitk::GroupDiffusionHeadersFilter::m_Input [protected] |
Definition at line 94 of file mitkGroupDiffusionHeadersFilter.h.
Definition at line 93 of file mitkGroupDiffusionHeadersFilter.h.