<ServerManagerConfiguration>
  <!-- ********************************************************************** -->
  <ProxyGroup name="filters">
    <!-- ==================================================================== -->
    <SourceProxy class="vtkDistributedDataFilter"
                 label="D3"
                 multiprocess_support="multiple_processes"
                 name="D3">
      <Documentation long_help="Repartition a data set into load-balanced spatially convex regions.  Create ghost cells if requested."
                     short_help="Repartition a data set.">The D3 filter is
                     available when ParaView is run in parallel. It operates on
                     any type of data set to evenly divide it across the
                     processors into spatially contiguous regions. The output
                     of this filter is of type unstructured
                     grid.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <ProxyGroupDomain name="groups">
          <Group name="sources" />
          <Group name="filters" />
        </ProxyGroupDomain>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataSet" />
        </DataTypeDomain>
        <Documentation>This property specifies the input to the D3
        filter.</Documentation>
      </InputProperty>
      <IntVectorProperty command="SetBoundaryMode"
                         default_values="0"
                         name="BoundaryMode"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Assign cells uniquely"
                 value="0" />
          <Entry text="Duplicate cells"
                 value="1" />
          <Entry text="Divide cells"
                 value="2" />
        </EnumerationDomain>
        <Documentation>This property determines how cells that lie on processor
        boundaries are handled. The "Assign cells uniquely" option assigns each
        boundary cell to exactly one process, which is useful for isosurfacing.
        Selecting "Duplicate cells" causes the cells on the boundaries to be
        copied to each process that shares that boundary. The "Divide cells"
        option breaks cells across process boundary lines so that pieces of the
        cell lie in different processes. This option is useful for volume
        rendering.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseMinimalMemory"
                         default_values="0"
                         label="Minimal Memory"
                         name="UseMinimalMemory"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>If this property is set to 1, the D3 filter requires
        communication routines to use minimal memory than without this
        restriction.</Documentation>
      </IntVectorProperty>
      <!-- End D3 -->
    </SourceProxy>
    <!-- ==================================================================== -->
    <SourceProxy class="vtkPUnstructuredGridGhostCellsGenerator"
                 label="Ghost Cells Generator"
                 name="GhostCellsGenerator">
      <Documentation long_help="Generate ghost cells for unstructured grids."
                     short_help="Generate ghost cells for unstructured grids.">
                     The GhostCellGenerator filter is available when ParaView is
                     run in parallel (ie. with MPI). It operates on unstructured
                     grids only.
                     This filter does not redistribute the input data, it only
                     generates ghost cells at processor boundary by fetching
                     topological and geometrical information of those cells on
                     neighbor ranks. The filter can take benefit of global point
                     ids if they are available - if so it will perform faster,
                     otherwise point coordinates will be exchanged and processed.
      </Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <ProxyGroupDomain name="groups">
          <Group name="sources" />
          <Group name="filters" />
        </ProxyGroupDomain>
        <DataTypeDomain name="input_type" composite_data_supported="1">
          <DataType value="vtkUnstructuredGrid" />
        </DataTypeDomain>
        <Documentation>This property specifies the input to the ghost cells
        generator.</Documentation>
      </InputProperty>
      <IntVectorProperty command="SetBuildIfRequired"
                         default_values="0"
                         name="BuildIfRequired"
                         number_of_elements="1">
        <Documentation>Specify if the filter must generate the ghost cells only
          if required by the pipeline downstream. To force at least a fixed level
          of ghosts, this must be set to 0 (unchecked).</Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetMinimumNumberOfGhostLevels"
                         number_of_elements="1"
                         default_values="1"
                         name="MinimumNumberOfGhostLevels">
        <IntRangeDomain name="range" min="1" max="10" />
        <Documentation>
          When **BuildIfRequired** if off, use this to specify the minimum number of
          ghost cells to request. The filter may request more ghost levels than indicated if a
          downstream filter asked for more ghost levels.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="GenericDecorator"
                                   mode="enabled_state"
                                   property="BuildIfRequired"
                                   value="0" />
          <!-- if BuildIfRequired !=0 , we disable this property -->
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseGlobalPointIds"
                         default_values="1"
                         name="UseGlobalIds"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <Documentation>Specify if the filter must take benefit of global point
        ids if they exist or if point coordinates should be used instead.
        </Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <StringVectorProperty command="SetGlobalPointIdsArrayName"
                            default_values="GlobalNodeIds"
                            name="GlobalPointIdsArrayName"
                            number_of_elements="1"
                            panel_visibility="never">
        <Documentation>This property provides the name for the input array
        containing the global point ids if the GlobalIds array of the point
        data if not set. Default is GlobalNodeIds.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="UseGlobalIds" function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </StringVectorProperty>
      <!-- End vtkPUnstructuredGridGhostCellsGenerator -->
    </SourceProxy>
    <!-- ==================================================================== -->
    <SourceProxy base_proxygroup="filters"
                 base_proxyname="ParticlePath"
                 class="vtkInSituPParticlePathFilter"
                 name="InSituParticlePath">
      <Documentation long_help="Trace Particle Paths through time in a vector field."
                     short_help="Trace Particle Paths through time in a vector field.">
                     The Particle Trace filter generates pathlines in a vector
                     field from a collection of seed points. The vector field
                     used is selected from the Vectors menu, so the input data
                     set is required to have point-centered vectors. The Seed
                     portion of the interface allows you to select whether the
                     seed points for this integration lie in a point cloud or
                     along a line. Depending on which is selected, the
                     appropriate 3D widget (point or line widget) is displayed
                     along with traditional user interface controls for
                     positioning the point cloud or line within the data set.
                     Instructions for using the 3D widgets and the
                     corresponding manual controls can be found in section 7.4.
                     This filter operates on any type of data set, provided it
                     has point-centered vectors. The output is polygonal data
                     containing polylines. This filter is available on the
                     Toolbar.</Documentation>
      <InputProperty clean_command="RemoveAllRestarts"
                     command="AddRestartConnection"
                     label="Restart Source"
                     multiple_input="0"
                     name="RestartSource"
                     panel_visibility="never">
        <ProxyGroupDomain name="groups">
          <Group name="sources" />
          <Group name="filters" />
        </ProxyGroupDomain>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataSet" />
        </DataTypeDomain>
        <Documentation>Specify the restart dataset. This is optional and
        can be used to have particle histories that were computed
        previously be included in this filter's computation.</Documentation>
        <Hints>
          <Optional />
        </Hints>
      </InputProperty>
      <IntVectorProperty command="SetClearCache"
                         default_values="0"
                         name="ClearCache"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Clear the particle cache from previous time steps.
        </Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetFirstTimeStep"
                         default_values="0"
                         name="FirstTimeStep"
                         number_of_elements="1"
                         panel_visibility="never">
        <Documentation>Set the first time step. Default is 0.
        </Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetRestartedSimulation"
                         default_values="0"
                         name="RestartedSimulation"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Specify whether or not this is a restarted simulation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetDisableResetCache"
                         default_values="0"
                         name="DisableResetCache"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Prevents cache from getting reset so that new computation
          always start from previous results.</Documentation>
      </IntVectorProperty>
      <!-- End vtkInSituPParticlePathFilter -->
    </SourceProxy>
  </ProxyGroup>

  <!-- ********************************************************************** -->
  <ProxyGroup name="sources">
    <!-- ==================================================================== -->
    <SourceProxy class="vtkFileSeriesReader"
                 file_name_method="SetFileName"
                 label="Parallel NetCDF POP reader"
                 mpi_required="true"
                 name="PNetCDFPOPReader"
                 si_class="vtkSIMetaReaderProxy">
      <Documentation long_help="Reads rectilinear grid data from a NetCDF POP file in parallel."
                     short_help="Read rectilinear grid data from a NetCDF file in the POP format in parallel.">
      The reader reads regular rectilinear grid (image/volume) data from a
      NetCDF file. Only a subset of the processes actually read the file and
      these processes communicate the data to other processes.</Documentation>
      <SubProxy>
        <Proxy name="Reader"
               proxygroup="internal_sources"
               proxyname="PNetCDFPOPReaderCore"></Proxy>
        <ExposedProperties>
          <Property name="VariableArrayInfo" />
          <Property name="VariableArrayStatus" />
          <Property name="Stride" />
        </ExposedProperties>
      </SubProxy>
      <StringVectorProperty command="GetCurrentFileName"
                            information_only="1"
                            name="FileNameInfo">
        <SimpleStringInformationHelper />
      </StringVectorProperty>
      <StringVectorProperty animateable="0"
                            clean_command="RemoveAllFileNames"
                            command="AddFileName"
                            information_property="FileNameInfo"
                            name="FileName"
                            number_of_elements="1"
                            panel_visibility="never"
                            repeat_command="1">
        <FileListDomain name="files" />
        <Documentation>The list of files to be read by the
        reader.</Documentation>
      </StringVectorProperty>
      <DoubleVectorProperty information_only="1"
                            name="TimestepValues"
                            repeatable="1">
        <TimeStepsInformationHelper />
        <Documentation>Available timestep values.</Documentation>
      </DoubleVectorProperty>
      <Hints>
        <ReaderFactory extensions="pop.ncdf pop.nc"
                       file_description="Parallel POP Ocean NetCDF (Rectilinear)" />
      </Hints>
    </SourceProxy>
    <!-- End PNetCDFPOPReader -->
  </ProxyGroup>
</ServerManagerConfiguration>
