#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
GUI IGNORE SourceDataset_GENERIC_1,GENERIC_IN_REAL_FORMAT_GENERIC_1,GENERIC_IN_NETWORK_AUTHENTICATION_GENERIC_1,GENERIC_IN_NETWORK_PROXY_GENERIC_1,DestDataset_MAPUBLISHER_1,MAPUBLISHER_OUT_AIFILE_USEFFSFOLDER_MAPUBLISHER_1,MAPUBLISHER_OUT_AIFILESRC_MAPUBLISHER_1,MAPUBLISHER_OUT_AIFILEDST_MAPUBLISHER_1,MAPUBLISHER_OUT_DOCUMENT_POLICY_MAPUBLISHER_1,MAPUBLISHER_OUT_MAPVIEW_POLICY_MAPUBLISHER_1,MAPUBLISHER_OUT_MAPVIEW_AUTOSCALE_MAPUBLISHER_1,MAPUBLISHER_OUT_MAPVIEW_LOAD_PARAMS_FROM_FEATURE_MAPUBLISHER_1,MAPUBLISHER_OUT_MAPVIEW_CS_FILE_MAPUBLISHER_1,MAPUBLISHER_OUT_MAPVIEW_SCALE_MAPUBLISHER_1,MAPUBLISHER_OUT_MAPVIEW_ORIGIN_MAPUBLISHER_1,MAPUBLISHER_OUT_LAYERS_SORT_MAPUBLISHER_1,MAPUBLISHER_OUT_WAIT_FOR_RESULT_MAPUBLISHER_1,MAPUBLISHER_OUT_STRIP_FORMAT_ATTRIBUTES_MAPUBLISHER_1,MAPUBLISHER_OUT_QUITAPPLICATION_MAPUBLISHER_1,MAPUBLISHER_OUT_CODEC_NAME_MAPUBLISHER_1,MAPUBLISHER_OUT_COMPRESSION_LEVEL_MAPUBLISHER_1,_STRICT_SCHEMA_MAPUBLISHER_1
DEFAULT_MACRO SourceDataset_GENERIC $(FME_MF_DIR)Roadworks_Layers\Roadworks.dwg
GUI FILE_OR_URL SourceDataset_GENERIC All_files|*.* Source Dataset(s):
DEFAULT_MACRO Working_SRS EPSG:2952
GUI LOOKUP_CHOICE Working_SRS NAD83CSRSMTMzone10CSRS.MTM-10,EPSG:2952 Working Coordinate System:
DEFAULT_MACRO Working_Directory C:\temp\wms
GUI DIRNAME_SRC Working_Directory Working Directory:
DEFAULT_MACRO Image_Buffer 50
GUI TEXT Image_Buffer Image Buffer (Metres):
DEFAULT_MACRO Pixel_Size 0.5
GUI FLOAT Pixel_Size Approx Image Pixel Size (Metres):
DEFAULT_MACRO WMS_Url http://map.toronto.ca/servlet/com.esri.wms.Esrimap?ServiceName=OrthoImagery
GUI TEXT WMS_Url Input WMS:
DEFAULT_MACRO Intermediate_image $(Working_Directory)\Toronto_Imagery.tif
GUI IGNORE TEXT Intermediate_image Intermediate image:
INCLUDE [ if {{$(SourceDataset_GENERIC)} == {}} { puts_real {Parameter 'SourceDataset_GENERIC' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(Working_SRS)} == {}} { puts_real {Parameter 'Working_SRS' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(Working_Directory)} == {}} { puts_real {Parameter 'Working_Directory' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(Image_Buffer)} == {}} { puts_real {Parameter 'Image_Buffer' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(Pixel_Size)} == {}} { puts_real {Parameter 'Pixel_Size' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(WMS_Url)} == {}} { puts_real {Parameter 'WMS_Url' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(Intermediate_image)} == {}} { puts_real {Parameter 'Intermediate_image' must be given a value.}; exit 1; }; ]
#! START_HEADER
#! START_WB_HEADER
READER_TYPE GENERIC
READER_KEYWORD GENERIC_1
READER_GEN_DIRECTIVES DYNAMIC_WORKFLOW,yes,REAL_FORMAT,GUESS_FROM_EXTENSION,_MERGE_SCHEMAS,YES
WRITER_TYPE MULTI_WRITER
MULTI_WRITER_DATASET_ORDER BY_ID
MULTI_WRITER_FIRST_WRITER_ID 0
MULTI_WRITER_TYPE{0} MAPUBLISHER
MULTI_WRITER_KEYWORD{0} MAPUBLISHER_1
#! END_WB_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "GENERIC_1"
#! END_WB_HEADER
#! START_SOURCE_HEADER GENERIC GENERIC_1
GENERIC_1_DYNAMIC_WORKFLOW YES
# The dataset this mapping file was generated from was:
#! END_SOURCE_HEADER
#! START_WB_HEADER
DEFAULT_MACRO SourceDataset
INCLUDE [ if {{$(SourceDataset)} != ""} { \
puts {DEFAULT_MACRO SourceDataset_GENERIC_1 $(SourceDataset)} \
} ]
#! END_WB_HEADER
#! START_SOURCE_HEADER GENERIC GENERIC_1
DEFAULT_MACRO SourceDataset_GENERIC_1 $(SourceDataset_GENERIC)
GUI FILE_OR_URL SourceDataset_GENERIC_1 All_files|*.* Source Dataset:
GENERIC_1_EXTENSION
DEFAULT_MACRO GENERIC_IN_REAL_FORMAT_GENERIC_1 GUESS_FROM_EXTENSION
GENERIC_1_REAL_FORMAT "$(GENERIC_IN_REAL_FORMAT_GENERIC_1)"
GUI READERPICK GENERIC_IN_REAL_FORMAT_GENERIC_1 Input Format:
# ===========================================================================
DEFAULT_MACRO GENERIC_IN_NETWORK_AUTHENTICATION_GENERIC_1
GENERIC_1_NETWORK_AUTHENTICATION "$(GENERIC_IN_NETWORK_AUTHENTICATION_GENERIC_1)"
GUI OPTIONAL AUTHENTICATOR GENERIC_IN_NETWORK_AUTHENTICATION_GENERIC_1 CONTAINER%GROUP%CONTAINER_TITLE%"Network Authentication"%PROMPT_TYPE%NETWORK Network Authentication
# ===========================================================================
DEFAULT_MACRO GENERIC_IN_NETWORK_PROXY_GENERIC_1
GENERIC_1_NETWORK_PROXY "$(GENERIC_IN_NETWORK_PROXY_GENERIC_1)"
GUI OPTIONAL AUTHENTICATOR GENERIC_IN_NETWORK_PROXY_GENERIC_1 CONTAINER%GROUP%CONTAINER_TITLE%"Network Proxy"%PROMPT_TYPE%PROXY Network Proxy
GENERIC_1_DATASET "$(SourceDataset_GENERIC_1)"
#! END_SOURCE_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "MAPUBLISHER_1"
#! END_WB_HEADER
#! START_DEST_HEADER MAPUBLISHER MAPUBLISHER_1
# ============================================================================
# The following GUI line prompts for a directory to be used as the
# the destination for the FME Feature Store files.
#! END_DEST_HEADER
#! START_WB_HEADER
DEFAULT_MACRO DestDataset
INCLUDE [ if {"$(DestDataset)" != ""} { \
puts {DEFAULT_MACRO DestDataset_MAPUBLISHER_1 $(DestDataset)} \
} ]
#! END_WB_HEADER
#! START_DEST_HEADER MAPUBLISHER MAPUBLISHER_1
DEFAULT_MACRO DestDataset_MAPUBLISHER_1 C:\temp\wms\WMS_Auto.ffs
GUI FILENAME DestDataset_MAPUBLISHER_1 FME_Feature_Store_Files(*.ffs)|*.ffs|All_Files|*.* Destination FME Feature Store (FFS) File:
MAPUBLISHER_1_COORDINATE_SYSTEM_GRANULARITY FEATURE
DEFAULT_MACRO MAPUBLISHER_OUT_AIFILE_USEFFSFOLDER_MAPUBLISHER_1 yes
MAPUBLISHER_1_AIFILE_USEFFSFOLDER "$(MAPUBLISHER_OUT_AIFILE_USEFFSFOLDER_MAPUBLISHER_1)"
GUI ACTIVECHECK MAPUBLISHER_OUT_AIFILE_USEFFSFOLDER_MAPUBLISHER_1 yes,MAPUBLISHER_OUT_AIFILEDST%no Destination: Use FFS Folder
DEFAULT_MACRO MAPUBLISHER_OUT_AIFILESRC_MAPUBLISHER_1 $(FME_MF_DIR)Toronto WMS Automation Example.ai
MAPUBLISHER_1_AIFILESRC "$(MAPUBLISHER_OUT_AIFILESRC_MAPUBLISHER_1)"
GUI OPTIONAL FILENAME MAPUBLISHER_OUT_AIFILESRC_MAPUBLISHER_1 Adobe_Illustrator_Files(*.ai)|*.ai|Adobe_Illustrator_Template_Files(*.ait)|*.ait|All_Files|*.* Initial AI File/Template:
DEFAULT_MACRO MAPUBLISHER_OUT_AIFILEDST_MAPUBLISHER_1
MAPUBLISHER_1_AIFILEDST "$(MAPUBLISHER_OUT_AIFILEDST_MAPUBLISHER_1)"
GUI OPTIONAL FILENAME MAPUBLISHER_OUT_AIFILEDST_MAPUBLISHER_1 Adobe_Illustrator_Files(*.ai)|*.ai|All_Files|*.* Destination AI File/Folder:
DEFAULT_MACRO MAPUBLISHER_OUT_DOCUMENT_POLICY_MAPUBLISHER_1 Leave
MAPUBLISHER_1_DOCUMENT_POLICY "$(MAPUBLISHER_OUT_DOCUMENT_POLICY_MAPUBLISHER_1)"
GUI LOOKUP_CHOICE MAPUBLISHER_OUT_DOCUMENT_POLICY_MAPUBLISHER_1 Leaveopen,Leave%Save,Save%Saveandclose,SaveAndClose%Closew/osave,CloseNoSave Document Disposition:
DEFAULT_MACRO MAPUBLISHER_OUT_MAPVIEW_POLICY_MAPUBLISHER_1 Merge
MAPUBLISHER_1_MAPVIEW_POLICY "$(MAPUBLISHER_OUT_MAPVIEW_POLICY_MAPUBLISHER_1)"
GUI LOOKUP_CHOICE MAPUBLISHER_OUT_MAPVIEW_POLICY_MAPUBLISHER_1 Prompttheuser,Prompt%CreatenewMAPView,Create%AdddatatofirstmatchingMAPView,Merge If Matching MAP View Found:
DEFAULT_MACRO MAPUBLISHER_OUT_MAPVIEW_AUTOSCALE_MAPUBLISHER_1 no
MAPUBLISHER_1_MAPVIEW_AUTOSCALE "$(MAPUBLISHER_OUT_MAPVIEW_AUTOSCALE_MAPUBLISHER_1)"
GUI CHECKBOX MAPUBLISHER_OUT_MAPVIEW_AUTOSCALE_MAPUBLISHER_1 yes%no Fit to Page After Adding Data
DEFAULT_MACRO MAPUBLISHER_OUT_MAPVIEW_LOAD_PARAMS_FROM_FEATURE_MAPUBLISHER_1 yes
MAPUBLISHER_1_MAPVIEW_LOAD_PARAMS_FROM_FEATURE "$(MAPUBLISHER_OUT_MAPVIEW_LOAD_PARAMS_FROM_FEATURE_MAPUBLISHER_1)"
GUI OPTIONAL CHECKBOX MAPUBLISHER_OUT_MAPVIEW_LOAD_PARAMS_FROM_FEATURE_MAPUBLISHER_1 yes%no Load from feature attributes if available
DEFAULT_MACRO MAPUBLISHER_OUT_MAPVIEW_CS_FILE_MAPUBLISHER_1
MAPUBLISHER_1_MAPVIEW_CS_FILE "$(MAPUBLISHER_OUT_MAPVIEW_CS_FILE_MAPUBLISHER_1)"
GUI OPTIONAL FILENAME MAPUBLISHER_OUT_MAPVIEW_CS_FILE_MAPUBLISHER_1 All_Coordinate_Systems_Files|*.wkt;*.prj;*.tab|WKT_Definitions|*.wkt|Esri_PRJ|*.prj|MapInfo_TAB|*.tab|All_Files|*.* Coordinate System File:
DEFAULT_MACRO MAPUBLISHER_OUT_MAPVIEW_SCALE_MAPUBLISHER_1
MAPUBLISHER_1_MAPVIEW_SCALE "$(MAPUBLISHER_OUT_MAPVIEW_SCALE_MAPUBLISHER_1)"
GUI OPTIONAL FLOAT MAPUBLISHER_OUT_MAPVIEW_SCALE_MAPUBLISHER_1 Scale:
DEFAULT_MACRO MAPUBLISHER_OUT_MAPVIEW_ORIGIN_MAPUBLISHER_1 LL
MAPUBLISHER_1_MAPVIEW_ORIGIN "$(MAPUBLISHER_OUT_MAPVIEW_ORIGIN_MAPUBLISHER_1)"
GUI LOOKUP_CHOICE MAPUBLISHER_OUT_MAPVIEW_ORIGIN_MAPUBLISHER_1 Lower-leftcorner,LL%Center,Center Origin:
DEFAULT_MACRO MAPUBLISHER_OUT_LAYERS_SORT_MAPUBLISHER_1 yes
MAPUBLISHER_1_LAYERS_SORT "$(MAPUBLISHER_OUT_LAYERS_SORT_MAPUBLISHER_1)"
GUI CHECKBOX MAPUBLISHER_OUT_LAYERS_SORT_MAPUBLISHER_1 yes%no Sort Layers by Geometry
DEFAULT_MACRO MAPUBLISHER_OUT_WAIT_FOR_RESULT_MAPUBLISHER_1 no
MAPUBLISHER_1_WAIT_FOR_RESULT "$(MAPUBLISHER_OUT_WAIT_FOR_RESULT_MAPUBLISHER_1)"
GUI CHECKBOX MAPUBLISHER_OUT_WAIT_FOR_RESULT_MAPUBLISHER_1 yes%no Wait For Result from MAPublisher
DEFAULT_MACRO MAPUBLISHER_OUT_STRIP_FORMAT_ATTRIBUTES_MAPUBLISHER_1 yes
MAPUBLISHER_1_STRIP_FORMAT_ATTRIBUTES "$(MAPUBLISHER_OUT_STRIP_FORMAT_ATTRIBUTES_MAPUBLISHER_1)"
GUI CHECKBOX MAPUBLISHER_OUT_STRIP_FORMAT_ATTRIBUTES_MAPUBLISHER_1 yes%no Strip Format Attributes
DEFAULT_MACRO MAPUBLISHER_OUT_QUITAPPLICATION_MAPUBLISHER_1 no
MAPUBLISHER_1_QUITAPPLICATION "$(MAPUBLISHER_OUT_QUITAPPLICATION_MAPUBLISHER_1)"
GUI ACTIVECHECK MAPUBLISHER_OUT_QUITAPPLICATION_MAPUBLISHER_1 yes,MAPUBLISHER_OUT_DOCUMENT_POLICY%no Quit Launched Illustrator If Unused
DEFAULT_MACRO MAPUBLISHER_OUT_CODEC_NAME_MAPUBLISHER_1
MAPUBLISHER_1_CODEC_NAME "$(MAPUBLISHER_OUT_CODEC_NAME_MAPUBLISHER_1)"
GUI OPTIONAL LOOKUP_CHOICE MAPUBLISHER_OUT_CODEC_NAME_MAPUBLISHER_1 Latin-1ASCII8-bit(ISO-8859-1),ISO-8859-1%Japanese(Shift_JIS),Shift_JIS%JapaneseVariable-bit(ISO-2022-JP),ISO-2022-JP%Chinese16-bitWindows(GB18030),GB18030%Chinese(GBK),GBK%NationalStandardChinese(GB2312),GB2312%Korean8-bit(EUC-KR),EUC-KR%Japanese8-bit(EUC-JP),EUC-JP%Chinese(Big5-HKSCS),Big5-HKSCS%Chinese(Big5),Big5%Hebrewvisuallyordered(ISO-8859-8),ISO-8859-8%ISCII-Malayalam(Iscii-Mlm),Iscii-Mlm%ISCII-Kannada(Iscii-Knd),Iscii-Knd%ISCII-Telugu(Iscii-Tlg),Iscii-Tlg%ISCII-Tamil(Iscii-Tml),Iscii-Tml%ISCII-Oriya(Iscii-Ori),Iscii-Ori%ISCII-Gujarati(Iscii-Gjr),Iscii-Gjr%ISCII-Gurmukhi/Punjabi(Iscii-Pnj),Iscii-Pnj%ISCII-Bengali(Iscii-Bng),Iscii-Bng%ISCII-Devanagari(Iscii-Dev),Iscii-Dev%Tamil(Thai),TSCII%Thai(TIS-620),TIS-620%VietnameseWindows(windows-1258),windows-1258%BalticWindows(windows-1257),windows-1257%ArabicWindows(windows-1256),windows-1256%HebrewWindows(windows-1255),windows-1255%TurkishWindows(windows-1254),windows-1254%ModernGreekWindows(windows-1253),windows-1253%WesternEuropeanWindows(windows-1252),windows-1252%CyrillicWindows(windows-1251),windows-1251%EasternEuropeanWindows(windows-1250),windows-1250%OccidentalEuropeDOS(IBM850),IBM850%Latin-10South-EasternEuropean(ISO-8859-16),ISO-8859-16%Latin-8Celtic(ISO-8859-14),ISO-8859-14%Latin-7BalticRim(ISO-8859-13),ISO-8859-13%Latin-6Nordic(ISO-8859-10),ISO-8859-10%Latin-5Turkish(ISO-8859-9),ISO-8859-9%Hebrewlogicallyordered(ISO-8859-8-I),ISO-8859-8-I%Greek(ISO-8859-7),ISO-8859-7%Arabic(ISO-8859-6),ISO-8859-6%Cyrillic(ISO-8859-5),ISO-8859-5%Latin-4Baltic(ISO-8859-4),ISO-8859-4%Latin-3SouthEuropean(ISO-8859-3),ISO-8859-3%Latin-2CentralEuropean(ISO-8859-2),ISO-8859-2%Ukrainian8-bit(KOI8-U),KOI8-U%Russian8-bit(KOI8-R),KOI8-R%Unicode16-bit(ISO-10646-UCS-2),ISO-10646-UCS-2%Unicode8-bit(UTF-8),UTF-8%Latin-9WesternEuropean(ISO-8859-15),ISO-8859-15%CyrillicDOS(IBM866),IBM866%HPEuropeanCharacters(roman8),roman8%Korean(cp949),cp949%Unicode16-bit(UTF-16),UTF-16%Unicode16-bit-LittleEndian(UTF-16LE),UTF-16LE%Unicode16-bit-BigEndian(UTF-16BE),UTF-16BE Character Encoding:
# ============================================================================
# Set the compression level
# BUG10851: Change default from 6 to 0.
DEFAULT_MACRO MAPUBLISHER_OUT_COMPRESSION_LEVEL_MAPUBLISHER_1 0
MAPUBLISHER_1_COMPRESSION_LEVEL "$(MAPUBLISHER_OUT_COMPRESSION_LEVEL_MAPUBLISHER_1)"
GUI LOOKUP_CHOICE MAPUBLISHER_OUT_COMPRESSION_LEVEL_MAPUBLISHER_1 None,0%Medium,5%High,9 FFS File Compression Level:
# ========================================================================
# The following parameter indicates if features should have all user
# attributes not listed on the DEF line removed before they are saved.
# If yes, the unlisted attributes are stripped.
DEFAULT_MACRO _STRICT_SCHEMA_MAPUBLISHER_1 no
GUI CHOICE _STRICT_SCHEMA_MAPUBLISHER_1 Yes%No Enforce Strict Schema:
MAPUBLISHER_1_STRICT_SCHEMA $(_STRICT_SCHEMA_MAPUBLISHER_1)
# ========================================================================
# BUG5630: The following parameter indicates that the MAPUBLISHER destination
# dataset is a filename instead of a directory. This is necessary to
# indicate that we are in a new mode where the MAPUBLISHER writer acts like a
# FILE writer instead of a DIR writer. If this is not detected in the
# workspace/mapping file then we will resume the old behavior.
# FMEObjects users will have to supply this directive to explicitly use
# the MAPUBLISHER writer in FILE mode or not supply DEFS lines which was the old
# way to ensure MAPUBLISHER FILE mode. RJP
MAPUBLISHER_1_FILE_DEST_DATASET yes
MAPUBLISHER_1_DATASET "$(DestDataset_MAPUBLISHER_1)"
#! END_DEST_HEADER
#! END_HEADER
LOG_FILENAME "$(FME_MF_DIR)dynamic primary workspace - read from tiff.log"
LOG_APPEND NO
LOG_MAX_FEATURES 200
LOG_MAX_RECORDED_FEATURES 200
FME_REPROJECTION_ENGINE FME
FME_IMPLICIT_CSMAP_REPROJECTION_MODE Auto
FME_GEOMETRY_HANDLING Enhanced
FME_STROKE_MAX_DEVIATION 0
LOG_FILTER_MASK -1
DEFAULT_MACRO DATASET_KEYWORD_GENERIC_1 GENERIC_1
DEFAULT_MACRO DATASET_KEYWORD_MAPUBLISHER_1 MAPUBLISHER_1
# -------------------------------------------------------------------------
GENERIC_1_READER_META_ATTRIBUTES fme_basename fme_feature_type
# -------------------------------------------------------------------------
MAPUBLISHER_1_COORDINATE_SYSTEM $(Working_SRS)
MULTI_READER_CONTINUE_ON_READER_FAILURE No
# -------------------------------------------------------------------------
MACRO WORKSPACE_NAME dynamic primary workspace - read from tiff
MACRO FME_VIEWER_APP fmedatainspector
# -------------------------------------------------------------------------
INCLUDE [ if {[info exists env(FME_TEMP)] && [file isdirectory $env(FME_TEMP)]} {set gVisualizerTemp $env(FME_TEMP)} elseif {[info exists env(TEMP)] && [file isdirectory $env(TEMP)]} {set gVisualizerTemp $env(TEMP)} elseif { $tcl_platform(platform) == "unix" } {set gVisualizerTemp "/tmp"} else {set gVisualizerTemp c:}; regsub -all {[ ,&]} {$(WORKSPACE_NAME)} {_} wsname; set gVisualizerTemp $gVisualizerTemp/${wsname}_[clock format [clock seconds] -format %H%M%S]; puts "MACRO WORKSPACE_TEMP_DIR $gVisualizerTemp";
MACRO VISUALIZER_FEATURE_FILE $(WORKSPACE_TEMP_DIR)/inspector.ffs
MACRO VISUALIZER_SCHEMA_FILE $(WORKSPACE_TEMP_DIR)/inspector.fsc
MACRO VISUALIZER_CREATE_SPATIAL_INDEX YES
# -------------------------------------------------------------------------
GENERIC_1_DEF NewFeatureType fme_type fme_any
# -------------------------------------------------------------------------
Lookup ___KnownFeatureTypes___ NewFeatureType yes "" no
FACTORY_DEF * TeeFactory FACTORY_NAME "GENERIC_1 Merger" INPUT FEATURE_TYPE * OUTPUT FEATURE_TYPE "NewFeatureType"
# -------------------------------------------------------------------------
FACTORY_DEF * TestFactory FACTORY_NAME "Unexpected Input Remover" INPUT FEATURE_TYPE * TEST @Lookup(___KnownFeatureTypes___,@FeatureType()) == yes OUTPUT PASSED FEATURE_TYPE *
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Source -> Generic" INPUT FEATURE_TYPE * OUTPUT FEATURE_TYPE * @Transform(GENERIC,FME_GENERIC,ALIAS_GEOMETRY)
DEFAULT_MACRO WB_CURRENT_CONTEXT
# -------------------------------------------------------------------------
# Wipe out the source setting if it was untouched from the default setting
DEFAULT_MACRO Reprojector_SOURCE Read from feature
INCLUDE [if { {Read from feature} == {Read from feature} } { puts {MACRO Reprojector_SOURCE} } ]
FACTORY_DEF * TeeFactory FACTORY_NAME Reprojector INPUT FEATURE_TYPE NewFeatureType OUTPUT FEATURE_TYPE Reprojector_REPROJECTED @Reproject($(Reprojector_SOURCE),@EvaluateExpression(STRING,$(Working_SRS),Reprojector),NearestNeighbor,PreserveCells)
FACTORY_DEF * TeeFactory FACTORY_NAME "Reprojector REPROJECTED Splitter" INPUT FEATURE_TYPE Reprojector_REPROJECTED OUTPUT FEATURE_TYPE Reprojector_REPROJECTED_0_u3aJwU8cefg= OUTPUT FEATURE_TYPE Reprojector_REPROJECTED_1_u3aJwU8cefg=
# -------------------------------------------------------------------------
INCLUDE [ if { {NO} == {YES} } { puts {MACRO DO_TOPFER TOPFER_INDEX }; } else { puts {MACRO DO_TOPFER }; } ]
FACTORY_DEF * BoundingBoxFactory FACTORY_NAME BoundingBoxAccumulator INPUT FEATURE_TYPE Reprojector_REPROJECTED_0_u3aJwU8cefg= BOUNDING_BOX_TYPE GEOMETRIC $(DO_TOPFER) OUTPUT BOUNDING_BOX FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX
# -------------------------------------------------------------------------
FACTORY_DEF * PolygonDissolveFactory INPUT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX FACTORY_NAME Bufferer PRE_BUFFER "@EvaluateExpression(FLOAT,$(Image_Buffer$encode),Bufferer)" "8" CAP_ROUND FULL DISSOLVE_MODE GEOS OUTPUT POLYGON FEATURE_TYPE Bufferer_BUFFERED OUTPUT NON_POLYGON FEATURE_TYPE Bufferer_BUFFERED
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME BoundsExtractor INPUT FEATURE_TYPE Bufferer_BUFFERED OUTPUT FEATURE_TYPE BoundsExtractor_OUTPUT @Bounds(_xmin,_xmax,_ymin,_ymax,_zmin,_zmax,GEOMETRIC)
# -------------------------------------------------------------------------
Tcl2 proc ParameterFetcher_doFetch {} { foreach {name val} {"_Pixel_Size {$(Pixel_Size$encode)}"} { if { [string match {**} $val] == 1 } { set val [FME_Execute EvaluateExpression {STRING} $val {ParameterFetcher}]; } elseif {[string match {*FME_CONDITIONAL*} $val] == 1} { set val [FME_Execute EvaluateExpression {STRING} $val {ParameterFetcher}]; } else { set val [FME_DecodeTextOrAttr $val]; }; FME_SetAttribute [FME_DecodeText $name] $val } }
FACTORY_DEF * TeeFactory FACTORY_NAME ParameterFetcher INPUT FEATURE_TYPE BoundsExtractor_OUTPUT OUTPUT FEATURE_TYPE ParameterFetcher_OUTPUT @Tcl2(ParameterFetcher_doFetch)
# -------------------------------------------------------------------------
FACTORY_DEF * AttrSetFactory FACTORY_NAME AttributeCreator ATTRSET_PROPAGATE_MISSING YES INPUT FEATURE_TYPE ParameterFetcher_OUTPUT ATTR num_pixels_x EvaluateintValue_xmax-Value_xminValue_Pixel_Size ATTR num_pixels_y EvaluateintValue_ymax-Value_yminValue_Pixel_Size OUTPUT OUTPUT FEATURE_TYPE AttributeCreator_OUTPUT
# -------------------------------------------------------------------------
# Convert the workspace name to one containing only / -- Tcl likes this better
# (and so do I)
# And determine the "NULL" device so we can ensure we don't get stray output
# messing up our stdout if we are running workspaces in the background
# See http://wiki.tcl.tk/1649 for a description of the tcl_platform
# variable, the "platform" part seems to have valid values windows, unix, and
# macintosh (the latter of which is actually pre-OS X)
Tcl2 if { $tcl_platform(platform) == {windows} } { set null_device {NUL:}; } else { set null_device {/dev/null}; };
Tcl2 proc WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_runner { parmListString workspaceFile } { set workspaceFileUnix [regsub -all {\\} $workspaceFile {/}]; set parmListString [string trim $parmListString {()}]; set comment { Build up the command line in a list, which we'll "eval" to get at its pieces when we actually execute the "exec". }; lappend commandArguments {$(FME_HOME_UNIX)/fme} $workspaceFileUnix; set parmList [split $parmListString {,}]; foreach {parmName encodedValue} $parmList { set comment { Decode both the parameter name (which we'd never expect to need it but could) as well as the parameter value (which is very likely encoded to guard it from the parser) and append them each to a new list which will be passed as the arguments to the exec function. Note that the parameter names need to be turned into macro settings by prepending them with -- Note also that the WorkspaceRunner sometimes encodes attribute dereferences by placing at the beginning rather than using @Value. Further note that string range forgives if the ending index is > the length of the string, so we can just ask for the first 5 characters when we're checking for . }; lappend commandArguments \"--$parmName\"; set comment { for backwards compatibility, replace first }; if { [string range $encodedValue 0 4] == {} && [string length $encodedValue] > 5 } { set encodedValue [string replace $encodedValue 0 4 {Value}]]; append encodedValue ""; }; set comment { for backwards compatibility, call decode text or attr. }; set encodedValue [FME_DecodeTextOrAttr $encodedValue]; lappend commandArguments $encodedValue; }; set comment { Now optionally run this in a detached way if we were not supposed to wait by adding & on the end to put it in the background. And at the same time, ensure that any stray stdout/stderr is routed to null. }; if { {Yes} == {No} } { global null_device; lappend commandArguments \">$null_device\"; FME_LogMessage fme_inform \"WorkspaceRunner: Initiating run of FME Workspace $workspaceFile with command line:\"; } else { FME_LogMessage fme_inform \"WorkspaceRunner: Running FME Workspace $workspaceFile with command line:\"; }; set comment { The below 2>@1 forces any standard error output to go into the msg variable or to NULL if we're running in the background. }; lappend commandArguments {2>@1}; if { {Yes} == {No} } { lappend commandArguments {&}; }; FME_LogMessage fme_inform [concat WorkspaceRunner: $commandArguments]; if { {Yes} == {No} } { after 1000; while { [FME_CanSpawnFme ] == {0} } { after 2000; }; }; if {[catch {eval [concat exec $commandArguments] } msg ]} { set msg [regsub {\015*\012child[^\012]*$} $msg {}]; FME_LogMessage fme_warn \"WorkspaceRunner: Failed to run workspace $workspaceFileUnix -- Trace was:\n\n$msg\n\"; FME_SetAttribute _failure_message $msg; return FAILURE; } else { global WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_process_count; incr WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_process_count; if { {Yes} == {No} } { FME_LogMessage fme_inform \"WorkspaceRunner: Successfully initiated run of workspace $workspaceFile\"; global WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_all_processes; lappend WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_all_processes $msg; } else { FME_LogMessage fme_inform \"WorkspaceRunner: Successfully ran workspace $workspaceFile\"; }; return SUCCESS; }; }
FACTORY_DEF * TestFactory FACTORY_NAME WorkspaceRunner_ExecutorAndRouter INPUT FEATURE_TYPE AttributeCreator_OUTPUT TEST @Tcl2("WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_runner {(SourceDataset_WMS,@EvaluateExpression(STRING_ENCODED,$(WMS_Url$encode),WorkspaceRunner),WMS_IN_SEARCH_ENVELOPE_MINX_WMS,@EvaluateExpression(FLOAT,Value_xmin,WorkspaceRunner),WMS_IN_SEARCH_ENVELOPE_MINY_WMS,@EvaluateExpression(FLOAT,Value_ymin,WorkspaceRunner),WMS_IN_SEARCH_ENVELOPE_MAXX_WMS,@EvaluateExpression(FLOAT,Value_xmax,WorkspaceRunner),WMS_IN_SEARCH_ENVELOPE_MAXY_WMS,@EvaluateExpression(FLOAT,Value_ymax,WorkspaceRunner),COORDSYS,@EvaluateExpression(STRING_ENCODED,$(Working_SRS),WorkspaceRunner),DestDataset_GEOTIFF,@EvaluateExpression(STRING_ENCODED,$(Working_Directory$encode),WorkspaceRunner),num_pixels_x,@EvaluateExpression(FLOAT,Valuenum_pixels_x,WorkspaceRunner),num_pixels_y,@EvaluateExpression(STRING_ENCODED,Valuenum_pixels_y,WorkspaceRunner))} {@EvaluateExpression(STRING,$(FME_MF_DIR$encode)dynamicsecondaryworkspace-writetotiff.fmw,WorkspaceRunner)}") == SUCCESS OUTPUT PASSED FEATURE_TYPE WorkspaceRunner_SUCCEEDED OUTPUT FAILED FEATURE_TYPE WorkspaceRunner_FAILED
Tcl2 proc WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_summarizer { } { global WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_process_count; set comment { incr 0 creates the variable if it wasn't present }; incr WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_process_count 0; FME_SetAttribute _proc_count [set WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_process_count]; global WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_all_processes; if {[info exists WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_all_processes]} { set index 0; foreach pid [set WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_all_processes] { FME_SetAttribute \"_processes{$index}\" $pid; incr index; } } }
FACTORY_DEF * CreationFactory FACTORY_NAME WorkspaceRunner_SummaryMaker CREATE_AT_END yes OUTPUT FEATURE_TYPE WorkspaceRunner_SUMMARY @Tcl2(WorkspaceRunner_edd729a3_0825_4a27_80fc_357496d04aa65_summarizer)
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME WorkspaceRunner_Summary_Logger INPUT FEATURE_TYPE WorkspaceRunner_SUMMARY OUTPUT FEATURE_TYPE WorkspaceRunner_Summary_LOGGED @FeatureType("") @Log("WorkspaceRunner_Summary: Feature is:",20,20)
FACTORY_DEF * TeeFactory FACTORY_NAME "WorkspaceRunner_Summary LOGGED Output Nuker" INPUT FEATURE_TYPE WorkspaceRunner_Summary_LOGGED
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME WorkspaceRunner_Failed_Logger INPUT FEATURE_TYPE WorkspaceRunner_FAILED OUTPUT FEATURE_TYPE WorkspaceRunner_Failed_LOGGED @FeatureType("") @Log("WorkspaceRunner_Failed: Feature is:",20,20)
FACTORY_DEF * TeeFactory FACTORY_NAME "WorkspaceRunner_Failed LOGGED Output Nuker" INPUT FEATURE_TYPE WorkspaceRunner_Failed_LOGGED
# -------------------------------------------------------------------------
MACRO FeatureReader_DIRECTIVES FEATURE_TYPE_NAME FORMAT_NAME
Tcl2 proc FeatureReader_findInListElseDefault { value defaultValue } { if { [lsearch [split $::FeatureReader_FORMATTEDFEATURETYPES {:}] $value] >= 0} { return $value } else { return $defaultValue } }
INCLUDE [if { {} == {} } { puts {MACRO REMOVE_GEOM_FUNC @RemoveGeometry()}; puts {MACRO QUERY_INTERACTION_LINE}; } else { puts {MACRO REMOVE_GEOM_FUNC}; if { {} != {ENVELOPE_INTERSECT} } { puts {MACRO QUERY_INTERACTION_LINE QUERY_INTERACTION }; } else { puts {MACRO QUERY_INTERACTION_LINE}; } } ]
# This is dynamically parsed when the mapping file is parsed.
# The purpose is to separate feature types in TIFF
# by colons so they can be parsed easily
# If a feature type contains spaces, it will be surrounded
# by quotes. In this case extra care is required to separate
# it.
Tcl2 set featTypes {TIFF}; set curIndex 0; set inQuote 0; while { [set ch [string index $featTypes $curIndex]] != {} } { if { [string compare {\"} $ch] == 0 } { set featTypes [string replace $featTypes $curIndex $curIndex {}]; set inQuote [expr 1-$inQuote]; } else { if { [string compare { } $ch] == 0 && !$inQuote } { set featTypes [string replace $featTypes $curIndex $curIndex {:}]; }; set curIndex [expr $curIndex+1]; } }; set ::FeatureReader_FORMATTEDFEATURETYPES $featTypes;
FACTORY_DEF * TeeFactory FACTORY_NAME FeatureReader_GeometryRemover INPUT FEATURE_TYPE WorkspaceRunner_SUCCEEDED OUTPUT FEATURE_TYPE QueryFactoryInputFeatureType $(REMOVE_GEOM_FUNC)
FACTORY_DEF * QueryFactory FACTORY_NAME FeatureReader INPUT FEATURE_TYPE QueryFactoryInputFeatureType $(QUERY_INTERACTION_LINE) COMBINE_ATTRIBUTES RESULT_ONLY COMBINE_GEOMETRY RESULT_ONLY ENABLE_CACHE NO READER_TYPE TIFF READER_DATASET "@EvaluateExpression(STRING_ENCODED,$(Intermediate_image$encode),FeatureReader)" READER_IDS TIFF READER_DIRECTIVES META_MACROS,SourceFEATURE_TYPE_NAMEFORMAT_NAMESourceEXPOSE_ATTRS_GROUPSourceTIFF_EXPOSE_FORMAT_ATTRSSourceUSE_SEARCH_ENVELOPENOSourceSEARCH_ENVELOPE_MINX0SourceSEARCH_ENVELOPE_MINY0SourceSEARCH_ENVELOPE_MAXX0SourceSEARCH_ENVELOPE_MAXY0SourceCLIP_TO_ENVELOPENO,METAFILE,TIFF,IDLIST, READER_PARAMS $(FeatureReader_DIRECTIVES) OUTPUT RESULT FEATURE_TYPE * @SupplyAttributes(fme_feature_type,@FeatureType()) @Tcl2("set FME_FeatureType [FeatureReader_findInListElseDefault $FME_FeatureType {}]") @FeatureType(@Concatenate(FeatureReader,"_",@FeatureType())) @Transform(TIFF,FME_GENERIC) OUTPUT QUERY FEATURE_TYPE FeatureReader_INITIATOR
FACTORY_DEF * TeeFactory FACTORY_NAME "FeatureReader Output Nuker" INPUT FEATURE_TYPE FeatureReader_
FACTORY_DEF * TeeFactory FACTORY_NAME "FeatureReader INITIATOR Output Nuker" INPUT FEATURE_TYPE FeatureReader_INITIATOR
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "FeatureReader_TIFF -> Toronto Imagery Correlator" INPUT FEATURE_TYPE FeatureReader_TIFF OUTPUT FEATURE_TYPE __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id 0 @Reproject("$(Working_SRS)","$(Working_SRS)") @Transform(FME_GENERIC,MAPUBLISHER) @SupplyAttributes(ENCODED,__wb_out_feat_type__,TorontoImagery)
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Reprojector_REPROJECTED_1_u3aJwU8cefg= -> Output Layers Correlator" INPUT FEATURE_TYPE Reprojector_REPROJECTED_1_u3aJwU8cefg= OUTPUT FEATURE_TYPE __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id 0 @Reproject("$(Working_SRS)","$(Working_SRS)") @Transform(FME_GENERIC,MAPUBLISHER) @SupplyAttributes(ENCODED,fme_template_feature_type,OutputLayers) @SupplyAttributes(ENCODED,__wb_out_feat_type__,OutputLayers) @CopyAttributes(ENCODED,__wb_out_feat_type__,fme_feature_type)
# -------------------------------------------------------------------------
FACTORY_DEF * TestFactory FACTORY_NAME "Final Output Feature Type Router" INPUT FEATURE_TYPE * TEST @Value(__wb_out_feat_type__) != "" OUTPUT PASSED FEATURE_TYPE * @FeatureType(@Value(__wb_out_feat_type__)) OUTPUT FAILED FEATURE_TYPE __nuke_me__ @Tcl2("FME_StatMessage 818059 [FME_GetAttribute fme_template_feature_type] 818060 818061 fme_warn")
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Final Output Nuker" INPUT FEATURE_TYPE __nuke_me__
# -------------------------------------------------------------------------
MAPUBLISHER_1_DEF "Toronto Imagery"
# -------------------------------------------------------------------------
MAPUBLISHER_1_DEF_TEMPLATE "Output Layers" fme_schema_readers GENERIC_1