// ----------------------------------------------------------------------------- // // ----------------------------------------------------------------------------- void MultiEmmpmFilter::setupFilterParameters() { FilterParameterVector parameters = getFilterParameters(); parameters.push_back(BooleanFilterParameter::New("Use Mu/Sigma from Previous Image as Initialization for Current Image", "UsePreviousMuSigma", getUsePreviousMuSigma(), FilterParameter::Parameter)); parameters.push_back(StringFilterParameter::New("Output Array Prefix", "OutputArrayPrefix", getOutputArrayPrefix(), FilterParameter::Parameter)); for ( qint32 i = 0; i < parameters.size(); i++ ) { FilterParameter::Pointer& p = parameters[i]; if ( p->getPropertyName().compare("InputDataArrayPath") == 0 ) { parameters[i] = MultiDataArraySelectionFilterParameter::New("Input Attribute Arrays", "InputDataArrayVector", getInputDataArrayVector(), FilterParameter::RequiredArray); } } // Look for the OutputDataArrayPath and replace with our OutputAttributeMatrixName instead for ( qint32 i = 0; i < parameters.size(); i++ ) { FilterParameter::Pointer& p = parameters[i]; if ( p->getPropertyName().compare("OutputDataArrayPath") == 0 ) { parameters[i] = StringFilterParameter::New("Output Cell Attribute Matrix", "OutputAttributeMatrixName", getOutputAttributeMatrixName(), FilterParameter::CreatedArray); } } // Set the new parameters back into the class setFilterParameters(parameters); }