<ServerManagerConfiguration>
  <ProxyGroup name="filters">

    <SourceProxy name="MomentVectors" class="vtkMomentVectors"
                 label="Moment Vectors">
      <Documentation short_help="Create flux or circulation vectors."
                     long_help="Convert scalars to flux or circulation vectors.">
        Often times a simulation that computes circulation or flux in a
        mesh will simply write out the scalar that represents the amount of
        movement and the direction is implied by the normal of the surface
        cell (for flux) or the direction of the line cell (for
        circulation).  The array values associated with the 2D and 1D
        geometric elements will be converted to a vector pointing in the
        direction of the flow.
      </Documentation>

      <InputProperty name="Input" command="SetInputConnection">
        <ProxyGroupDomain name="groups">
          <Group name="sources" />
          <Group name="filters" />
        </ProxyGroupDomain>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataSet" />
        </DataTypeDomain>
        <InputArrayDomain name="input_array"
                          attribute_type="cell"
                          number_of_components="1">
        </InputArrayDomain>
        <Documentation>
          The input to the filter.
        </Documentation>
      </InputProperty>

      <StringVectorProperty name="SelectInputScalars"
                            command="SetInputArrayToProcess"
                            number_of_elements="5"
                            element_types="0 0 0 0 2"
                            label="Flux/Circulation Array">
        <ArrayListDomain name="array_list" attribute_type="Scalars">
          <RequiredProperties>
            <Property name="Input" function="Input" />
          </RequiredProperties>
        </ArrayListDomain>
        <FieldDataDomain name="field_list">
          <RequiredProperties>
            <Property name="Input" function="Input" />
          </RequiredProperties>
        </FieldDataDomain>
        <Documentation>
          The name of the scalar array that represents flux through a 2D
          element or circulation along a 1D element.  This array will be
          converted to a vector pointing in the direction the flow or
          circulation is moving.
        </Documentation>
      </StringVectorProperty>

      <IntVectorProperty name="InputMomentIsDensity"
                         command="SetInputMomentIsDensity"
                         number_of_elements="1"
                         default_values="0"
                         label="Input Moment Is Density">
        <BooleanDomain name="bool" />
        <Documentation>
          If off, then the input array is taken to be the total flux
          through or circulation along each element.  If on, then the input
          array is taken to be the density of the flux or circulation.
        </Documentation>
      </IntVectorProperty>
    </SourceProxy> <!-- Moment Vectors -->

    <SourceProxy name="MomentGlyphs" class="vtkMomentGlyphs"
                 label="Moment Glyphs">
      <Documentation short_help="Create flux or circulation glyphs."
                     long_help="Create glyphs pointing in the direction of flux or circulation.">
        Circulation is a vector field on 1D cells that represents flow
        along the path of the cell.  Flux is a vector field on 2D cells
        that represents flow through the area of the cell.  This filter
        creates arrow glyphs in the direction of the flow.  The array
        values associated with the 2D and 1D geometric elements will be
        converted to a vector pointing in the direction of the flow.
      </Documentation>

      <InputProperty name="Input" command="SetInputConnection">
        <ProxyGroupDomain name="groups">
          <Group name="sources" />
          <Group name="filters" />
        </ProxyGroupDomain>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataSet" />
        </DataTypeDomain>
        <InputArrayDomain name="input_array"
                          attribute_type="cell">
        </InputArrayDomain>
        <Documentation>
          The input to the filter.
        </Documentation>
      </InputProperty>

      <StringVectorProperty name="SelectInputScalars"
                            command="SetInputArrayToProcess"
                            number_of_elements="5"
                            element_types="0 0 0 0 2"
                            label="Flux/Circulation Array">
        <ArrayListDomain name="array_list" attribute_type="Scalars">
          <RequiredProperties>
            <Property name="Input" function="Input" />
          </RequiredProperties>
        </ArrayListDomain>
        <FieldDataDomain name="field_list">
          <RequiredProperties>
            <Property name="Input" function="Input" />
          </RequiredProperties>
        </FieldDataDomain>
        <Documentation>
          The name of the scalar or vector array that represents flux
          through a 2D element or circulation along a 1D element.  If
          necessary, this array will be converted to a vector pointing in
          the direction the flow or circulation is moving.
        </Documentation>
      </StringVectorProperty>

      <IntVectorProperty name="InputMomentIsDensity"
                         command="SetInputMomentIsDensity"
                         number_of_elements="1"
                         default_values="0"
                         label="Input Moment Is Density">
        <BooleanDomain name="bool" />
        <Documentation>
          If off, then the input array is taken to be the total flux
          through or circulation along each element.  If on, then the input
          array is taken to be the density of the flux or circulation.
        </Documentation>
      </IntVectorProperty>

      <IntVectorProperty name="ScaleByDenisty"
                         command="SetScaleByDensity"
                         number_of_elements="1"
                         default_values="0"
                         label="Scale By Density">
        <BooleanDomain name="bool" />
        <Documentation>
          If off, then the glyphs are scaled by the total flux through or
          circulation along each element.  If on, then the glyphs are
          scaled by the flux or circulation density.
        </Documentation>
      </IntVectorProperty>
    </SourceProxy> <!-- Moment Glyphs -->

  </ProxyGroup>
</ServerManagerConfiguration>
