text: /*=========================================================================
  *
  *  Copyright Leiden University Medical Center, Erasmus University Medical
  *  Center and contributors
  *
  *  Licensed under the Apache License, Version 2.0 (the "License");
  *  you may not use this file except in compliance with the License.
  *  You may obtain a copy of the License at
  *
  *        http://www.apache.org/licenses/LICENSE-2.0.txt
  *
  *  Unless required by applicable law or agreed to in writing, software
  *  distributed under the License is distributed on an "AS IS" BASIS,
  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  *
  *=========================================================================*/
  
  #ifndef selxSuperElastixFilter_h
  #define selxSuperElastixFilter_h
  
  #include "selxSuperElastixFilterBase.h"
  
  /**
   * \class SuperElastixFilter
   * \brief ITK Filter interface to the SuperElastix registration library.
   */
  
  namespace selx
  {
  class SuperElastixFilter : public SuperElastixFilterBase
  {
  public:
  
    /** Standard ITK typedefs. */
    typedef SuperElastixFilter              Self;
    typedef itk::ProcessObject              Superclass;
    typedef itk::SmartPointer< Self >       Pointer;
    typedef itk::SmartPointer< const Self > ConstPointer;
  
    /** Method for creation through the object factory. */
    itkNewMacro( Self );
  
    /** Run-time type information (and related methods). */
    itkTypeMacro( Self, itk::ProcessObject );
  
  protected:
  
    // Constructor with NetworkBuilder filled with Default Component for API library use
    SuperElastixFilter( void );
  };
  } // namespace elx
  
  #endif // selxSuperElastixFilter_h
  