<ServerManagerConfiguration>
  <ProxyGroup name="writers">
    <WriterProxy
           class="vtkLASFileWriter"
           name="LASFileWriter">
      <Documentation></Documentation>
      <StringVectorProperty command="SetFileName"
                            name="FileName"
                            number_of_elements="1">
        <Documentation>The name of the file to write.</Documentation>
      </StringVectorProperty>

      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain composite_data_supported="0"
                        name="input_type">
          <DataType value="vtkPolyData" />
        </DataTypeDomain>
      </InputProperty>

      <IntVectorProperty
          name="FirstFrame"
          command="SetFirstFrame"
          default_values="0"
	  number_of_elements="1">
        <Documentation>
		First frame to save (included).
        </Documentation>
      </IntVectorProperty>

      <IntVectorProperty
          name="LastFrame"
          command="SetLastFrame"
          default_values="-1"
	  number_of_elements="1">
        <Documentation>
		Last frame to save (included).
		If the stride is set different than 1, is is possible that the effective last frame number will be inferior.
		Negative indexes work similarily to Python list indexes (so -1 is last frame).
        </Documentation>
      </IntVectorProperty>

      <IntVectorProperty
          name="FrameStride"
          command="SetFrameStride"
          default_values="1"
	  number_of_elements="1">
        <Documentation>
		One frame every "stride" frame will be saved. Useful to generate faster, ligher LAS for testing.
        </Documentation>
      </IntVectorProperty>

      <IntVectorProperty
          name="ExportType"
          command="SetExportType"
          number_of_elements="1"
          default_values="0">
      <EnumerationDomain name="enum">
        <Entry value="0" text="UTM"/>
	<Entry value="1" text="Lat/Lon"/>
      </EnumerationDomain>
      <Documentation>
                What type of export should be done?
      </Documentation>
      </IntVectorProperty>

      <IntVectorProperty
          name="InOutSignedUTMZone"
          command="SetInOutSignedUTMZone"
          default_values="31"
	  number_of_elements="1">
        <Documentation>
		UTM zone used for input and output.
		1 to 60: Northern hemisphere UTM zones
		-60 to -1: Southern hemisphere UTM zones (-n means "UTM zone n, South")
        </Documentation>
      </IntVectorProperty>

      <DoubleVectorProperty
          name="Offset"
          command="SetOffset"
          default_values="0 0 0"
	  number_of_elements="3">
        <Documentation>
		Offset to apply to the points in order to find their position inside the provided UTM Zone.
		Also used as origin for writing the LAS File (this offset is written in the header and is not applied to the points).
        </Documentation>
      </DoubleVectorProperty>

      <IntVectorProperty name="SkipMetaDataPass"
                         command="SetSkipMetaDataPass"
                         number_of_elements="1"
                         default_values="0">
        <BooleanDomain name="bool"/>
        <Documentation>
          If enabled, only one pass is done which can provides a significant speedup. In this case the axis aligned bounding box of all points will be set to (0.0, 0.0, 0.0) to (0.0, 0.0, 0.0) (which is incorrect).
        </Documentation>
      </IntVectorProperty>

      <IntVectorProperty
          name="WriteSRS"
          command="SetWriteSRS"
          default_values="1"
	  number_of_elements="1">
        <BooleanDomain name="bool"/>
        <Documentation>
		Should the SRS (Spatial Reference System) information be written in the LAS file ? If you do not know, leave to true.
        </Documentation>
      </IntVectorProperty>

      <IntVectorProperty
          name="WriteColor"
          command="SetWriteColor"
          default_values="0"
	  number_of_elements="1">
        <BooleanDomain name="bool"/>
        <Documentation>
		Should the RGB color (if available) be written in the LAS file ? Resulting LAS will be bigger.
        </Documentation>
      </IntVectorProperty>

      <IntVectorProperty
          name="ClampToMinTime"
          command="SetClampToMinTime"
          default_values="0"
	        number_of_elements="1"
          panel_visibility="advanced">>
        <BooleanDomain name="bool"/>
        <Documentation>
	        If enabled, points are clamped on a time basis with MinTime as the lower bound
        </Documentation>
      </IntVectorProperty>

      <DoubleVectorProperty
          name="MinTime"
          command="SetMinTime"
          default_values="0"
          number_of_elements="1"
          panel_visibility="advanced">>
        <Documentation>
          Lower bound for time clamping (default is 0)
        </Documentation>
         <Hints>
          <PropertyWidgetDecorator type="GenericDecorator" mode="visibility" property="ClampToMinTime" value="1" />
        </Hints>
      </DoubleVectorProperty>

      <IntVectorProperty
          name="ClampToMaxTime"
          command="SetClampToMaxTime"
          default_values="0"
	        number_of_elements="1"
          panel_visibility="advanced">>
        <BooleanDomain name="bool"/>
        <Documentation>
	        If enabled, points are clamped on a time basis with MaxTime as the upper bound
        </Documentation>
      </IntVectorProperty>

      <DoubleVectorProperty
          name="MaxTime"
          command="SetMaxTime"
          default_values="1e31"
          number_of_elements="1"
          panel_visibility="advanced">>
        <Documentation>
          Upper bound for time clamping (default is 1e31)
        </Documentation>
         <Hints>
          <PropertyWidgetDecorator type="GenericDecorator" mode="visibility" property="ClampToMaxTime" value="1" />
        </Hints>
      </DoubleVectorProperty>

      <Hints>
        <Property name="Input"
                  show="0" />
        <Property name="FileName"
                  show="0" />
        <WriterFactory extensions="las"
                       file_description="LAS point cloud file" />
      </Hints>
    </WriterProxy>
  </ProxyGroup>
</ServerManagerConfiguration>
