<ServerManagerConfiguration>
<ProxyGroup name="cosmotools_internal_sources">
  <SourceProxy class="vtkPGenericIOReader" name="genericio">
    <StringVectorProperty animateable="0"
                         command="SetFileName"
                         name="FileName"
                         number_of_elements="1"
                         panel_visibility="never">
     <FileListDomain name="files" />
     <Documentation>
       This property specifies the file name for the GenericIO reader.
     </Documentation>
   </StringVectorProperty>

   <IntVectorProperty
        name="ReadMethod"
        command="SetGenericIOType"
        number_of_elements="1"
        default_values="1">
       <EnumerationDomain name="io_method">
        <Entry value="0" text="MPI"/>
        <Entry value="1" text="Posix"/>
       </EnumerationDomain>
       <Documentation>
       Method used for reading, either MPI or POSIX is used.
       </Documentation>
    </IntVectorProperty>

    <IntVectorProperty
        name="BlockAssignmentStrategy"
        command="SetBlockAssignment"
        number_of_elements="1"
        default_values="0">
       <EnumerationDomain name="assignment_strategy">
        <Entry value="0" text="RoundRobin"/>
        <Entry value="1" text="RCB (contiguous)"/>
       </EnumerationDomain>
       <Documentation>
       Method used to assign blocks to processes.
       </Documentation>
    </IntVectorProperty>

    <StringVectorProperty information_only="1" name="PointArrayInfo">
        <ArraySelectionInformationHelper attribute_name="Point" />
    </StringVectorProperty>

    <StringVectorProperty command="GetArrayList"
                          information_only="1"
                          name="PointArrayListInfo">
        <StringArrayHelper />
    </StringVectorProperty>

    <StringVectorProperty name="xAxis"
                          command="SetXAxisVariableName"
                          number_of_elements="1">
      <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
    </StringVectorProperty>

    <StringVectorProperty name="yAxis"
                          command="SetYAxisVariableName"
                          number_of_elements="1">
      <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
    </StringVectorProperty>

    <StringVectorProperty name="zAxis"
                          command="SetZAxisVariableName"
                          number_of_elements="1">
     <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
    </StringVectorProperty>

    <StringVectorProperty command="SetPointArrayStatus"
                          element_types="2 0"
                          information_property="PointArrayInfo"
                          label="Particle Data"
                          name="PointArrayStatus"
                          number_of_elements="0"
                          number_of_elements_per_command="2"
                          repeat_command="1">
        <ArraySelectionDomain name="array_list">
          <RequiredProperties>
            <Property function="ArrayList" name="PointArrayInfo" />
          </RequiredProperties>
        </ArraySelectionDomain>
        <Documentation>
          This property lists which data arrays to read.
        </Documentation>
    </StringVectorProperty>

    <IntVectorProperty command="SetQueryRankNeighbors"
                         panel_visibility="advanced"
                         default_values="0"
                         name="QueryRankNeighbors"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          If checked, only the data of the RankInQuery and its neighbors
          will be rendered.
        </Documentation>
    </IntVectorProperty>

    <IntVectorProperty command="SetRankInQuery"
                       panel_visibility="advanced"
                       default_values="0"
                       name="RankInQuery"
                       number_of_elements="1">
     <IntRangeDomain min="0" name="range" />
     <Documentation>
      Used in combination with QueryRankNeighbors, this property tells the
      reader to only render the data of this rank and its neighbors.
     </Documentation>
    </IntVectorProperty>

    <StringVectorProperty name="HaloId"
                          command="SetHaloIdVariableName"
                          number_of_elements="1"
                          panel_visibility="advanced">
      <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
      <Documentation>
        Which data array in the file contains the halo ids.  This is used with
        the halo ids to load to determine which points to load.
      </Documentation>
    </StringVectorProperty>


    <IntVectorProperty
        name="HalosToLoad"
        command="SetRequestedHaloId"
        label="Halos To Load"
        number_of_elements="0"
        number_of_elements_per_command="1"
        repeat_command="1"
        set_number_command="SetNumberOfRequestedHaloIds"
        use_index="1"
        panel_visibility="advanced" >
      <Documentation>
        Only load in points with these halo ids from the file.
        If no halo ids are specified, load all the points.
      </Documentation>
      <IntRangeDomain min="0" name="range" />
    </IntVectorProperty>

  </SourceProxy>
  <SourceProxy class="vtkPGenericIOMultiBlockReader" name="genericio_multiblock">
    <StringVectorProperty animateable="0"
                         command="SetFileName"
                         name="FileName"
                         number_of_elements="1"
                         panel_visibility="never">
     <FileListDomain name="files" />
     <Documentation>
       This property specifies the file name for the GenericIO reader.
     </Documentation>
   </StringVectorProperty>

    <StringVectorProperty information_only="1" name="PointArrayInfo">
        <ArraySelectionInformationHelper attribute_name="Point" />
    </StringVectorProperty>

    <StringVectorProperty command="GetArrayList"
                          information_only="1"
                          name="PointArrayListInfo">
        <StringArrayHelper />
    </StringVectorProperty>

    <StringVectorProperty name="xAxis"
                          command="SetXAxisVariableName"
                          number_of_elements="1">
      <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
    </StringVectorProperty>

    <StringVectorProperty name="yAxis"
                          command="SetYAxisVariableName"
                          number_of_elements="1">
      <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
    </StringVectorProperty>

    <StringVectorProperty name="zAxis"
                          command="SetZAxisVariableName"
                          number_of_elements="1">
     <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
    </StringVectorProperty>

    <StringVectorProperty command="SetPointArrayStatus"
                          element_types="2 0"
                          information_property="PointArrayInfo"
                          label="Particle Data"
                          name="PointArrayStatus"
                          number_of_elements="0"
                          number_of_elements_per_command="2"
                          repeat_command="1">
        <ArraySelectionDomain name="array_list">
          <RequiredProperties>
            <Property function="ArrayList" name="PointArrayInfo" />
          </RequiredProperties>
        </ArraySelectionDomain>
        <Documentation>
          This property lists which data arrays to read.
        </Documentation>
    </StringVectorProperty>

   <IntVectorProperty
        name="ReadMethod"
        command="SetGenericIOType"
        number_of_elements="1"
        default_values="1">
       <EnumerationDomain name="io_method">
        <Entry value="0" text="MPI"/>
        <Entry value="1" text="Posix"/>
       </EnumerationDomain>
       <Documentation>
       Method used for reading, either MPI or POSIX is used.
       </Documentation>
    </IntVectorProperty>

    <IntVectorProperty
        name="BlockAssignmentStrategy"
        command="SetBlockAssignment"
        number_of_elements="1"
        default_values="0">
       <EnumerationDomain name="assignment_strategy">
        <Entry value="0" text="RoundRobin"/>
        <Entry value="1" text="RCB (contiguous)"/>
       </EnumerationDomain>
       <Documentation>
       Method used to assign blocks to processes.
       </Documentation>
    </IntVectorProperty>

    <StringVectorProperty name="HaloId"
                          command="SetHaloIdVariableName"
                          number_of_elements="1"
                          panel_visibility="advanced">
      <StringListDomain name="array_list">
         <RequiredProperties>
            <Property function="ArrayList" name="PointArrayListInfo" />
         </RequiredProperties>
      </StringListDomain>
      <Documentation>
        Which data array in the file contains the halo ids.  This is used with
        the halo ids to load to determine which points to load.
      </Documentation>
    </StringVectorProperty>


    <IntVectorProperty
        name="HalosToLoad"
        command="SetRequestedHaloId"
        label="Halos To Load"
        number_of_elements="0"
        number_of_elements_per_command="1"
        repeat_command="1"
        set_number_command="SetNumberOfRequestedHaloIds"
        use_index="1"
        panel_visibility="advanced" >
      <Documentation>
        Only load in points with these halo ids from the file.
        If no halo ids are specified, load all the points.
      </Documentation>
      <IntRangeDomain min="0" name="range" />
    </IntVectorProperty>


  </SourceProxy>

</ProxyGroup>

<ProxyGroup name="sources">
  <SourceProxy class="vtkFileSeriesReader"
               file_name_method="SetFileName"
               name="GenericIOReader"
               si_class="vtkSIMetaReaderProxy"
               mpi_required="1" >
    <Documentation long_help="Reads a cosmology file into a vtkUnstructuredGrid."
                   short_help="Read a cosmology file.">
                   Reads GenericIO. This is a distributed reader.
    </Documentation>
    <SubProxy>
      <Proxy name="Reader"
             proxygroup="cosmotools_internal_sources"
             proxyname="genericio">
      </Proxy>
      <ExposedProperties>
        <Property name="ReadMethod"/>
        <Property name="BlockAssignmentStrategy"/>
        <Property name="PointArrayListInfo" />
        <Property name="PointArrayInfo" />
        <Property name="PointArrayStatus" />
        <Property name="xAxis" />
        <Property name="yAxis" />
        <Property name="zAxis" />
        <Property name="QueryRankNeighbors" />
        <Property name="RankInQuery" />
        <Property name="HaloId" />
        <Property name="HalosToLoad" />
      </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="gio"
                     file_description="GenericIO files to UnstructuredGrid" />
    </Hints>
  </SourceProxy>
  <SourceProxy class="vtkFileSeriesReader"
               file_name_method="SetFileName"
               name="GenericIOMultiBlockReader"
               si_class="vtkSIMetaReaderProxy"
               mpi_required="1" >
    <Documentation long_help="Reads a cosmology file into a vtkMultiBlockDataSet."
                   short_help="Read a cosmology file.">
                   Reads GenericIO files into a vtkMultiBlockDataSet of unstructured grids.
                   This is a distributed reader.
    </Documentation>
    <SubProxy>
      <Proxy name="Reader"
             proxygroup="cosmotools_internal_sources"
             proxyname="genericio_multiblock">
      </Proxy>
      <ExposedProperties>
        <Property name="PointArrayListInfo" />
        <Property name="PointArrayInfo" />
        <Property name="PointArrayStatus" />
        <Property name="xAxis" />
        <Property name="yAxis" />
        <Property name="zAxis" />
        <Property name="ReadMethod"/>
        <Property name="BlockAssignmentStrategy"/>
        <Property name="HaloId" />
        <Property name="HalosToLoad" />
      </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="gio"
                     file_description="GenericIO files to MultiBlockDataSet" />
    </Hints>
  </SourceProxy>

</ProxyGroup>

</ServerManagerConfiguration>
