#! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! DEFAULT_MACRO _conversion_input_unit_name DEFAULT_MACRO _conversion_output_unit_name DEFAULT_MACRO _conversion_input #! START_HEADER #! END_HEADER DEFAULT_MACRO WB_CURRENT_CONTEXT DEFAULT_MACRO LengthUnitConverter_WORKSPACE_NAME "" INCLUDE [puts {MACRO WB_OLD_CONTEXT_$(LengthUnitConverter_WORKSPACE_NAME) $(WB_CURRENT_CONTEXT)}; puts {MACRO WB_CURRENT_CONTEXT $(LengthUnitConverter_WORKSPACE_NAME)}] FACTORY_DEF * TeeFactory FACTORY_NAME "$(LengthUnitConverter_WORKSPACE_NAME)_LengthUnitConverter_input Input Splitter" INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_LengthUnitConverter_input OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_LengthUnitConverter_input # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_input_values INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_LengthUnitConverter_input OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_input_values_OUTPUT @SupplyAttributes(ENCODED,_conversion_input_values,) # ------------------------------------------------------------------------- Tcl2 proc $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_values_doSetAttr {} { if { [string range {&_conversion_input_values} 0 0] == {&} } { FME_SetAttribute [FME_DecodeText [string range {&_conversion_input_values} 1 end]] [FME_DecodeTextOrAttr {$($(LengthUnitConverter_WORKSPACE_NAME)__conversion_input)}] } else { FME_SetAttribute [FME_DecodeText {&_conversion_input_values}] [FME_DecodeTextOrAttr {$($(LengthUnitConverter_WORKSPACE_NAME)__conversion_input)}] } } FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_values INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_input_values_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_values_OUTPUT @Tcl2($(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_values_doSetAttr) # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_input_unit_name INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_values_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_input_unit_name_OUTPUT @SupplyAttributes(ENCODED,_conversion_input_unit_name,) # ------------------------------------------------------------------------- Tcl2 proc $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_unit_name_doSetAttr {} { if { [string range {&_conversion_input_unit_name} 0 0] == {&} } { FME_SetAttribute [FME_DecodeText [string range {&_conversion_input_unit_name} 1 end]] [FME_DecodeTextOrAttr {$($(LengthUnitConverter_WORKSPACE_NAME)__conversion_input_unit_name)}] } else { FME_SetAttribute [FME_DecodeText {&_conversion_input_unit_name}] [FME_DecodeTextOrAttr {$($(LengthUnitConverter_WORKSPACE_NAME)__conversion_input_unit_name)}] } } FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_unit_name INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_input_unit_name_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_unit_name_OUTPUT @Tcl2($(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_unit_name_doSetAttr) # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_output_unit_name_2 INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_input_unit_name_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_output_unit_name_2_OUTPUT @SupplyAttributes(ENCODED,_conversion_output_unit_name,) # ------------------------------------------------------------------------- Tcl2 proc $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_output_unit_name_doSetAttr {} { if { [string range {&_conversion_output_unit_name} 0 0] == {&} } { FME_SetAttribute [FME_DecodeText [string range {&_conversion_output_unit_name} 1 end]] [FME_DecodeTextOrAttr {$($(LengthUnitConverter_WORKSPACE_NAME)__conversion_output_unit_name)}] } else { FME_SetAttribute [FME_DecodeText {&_conversion_output_unit_name}] [FME_DecodeTextOrAttr {$($(LengthUnitConverter_WORKSPACE_NAME)__conversion_output_unit_name)}] } } FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_output_unit_name INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeCreator_output_unit_name_2_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_output_unit_name_OUTPUT @Tcl2($(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_output_unit_name_doSetAttr) # ------------------------------------------------------------------------- Lookup $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_input_ratio_LOOKUP_TABLE ångström 0.0000000001 barleycorn 0.00846 cablelengthImperial 185.3184 cablelengthInternational 185.2 cablelengthU.S. 219.456 calibre 0.0254 chainGuntersSurveyors 20.1168 chainRamsdensEngineers 30.48 cubit 0.4572 ell 1.143 fathom 1.8288 fermi 0.000000000000001 finger 0.022225 fingercloth 0.1143 footInternational 0.3048 frenchcharriere 0.0001 furlong 201.168 geographicalmile 1853.7936 hand 0.1016 inch 0.0254 league 4828.032 light-day 25902068370000 light-hour 1079252848000 light-minute 17987547480 light-second 299792458 light-year 9460730472580800 linkGuntersSurveyors 0.201168 linkRamsdensEngineers 0.3048 metreSIbaseunit 1 mickey 0.000127 micron 0.000001 milthou 0.0000254 milSwedenandNorway 10000 mile 1609.344 nailcloth 0.05715 nauticalleague 5556 nauticalmileinternational 1852 nauticalmileAdmiralty 1853.184 pace 0.762 palm 0.0762 pointATA 0.00035146 pointDidotEuropean 0.000376065 pointmetric 0.000375 quarter 0.2286 rodpoleperch 5.0292 rope 6.096 span 0.1524 spancloth 0.2286 spat 1000000000000 stick 0.0508 stigmapm 0.000000000001 telegraphmile 1855.3176 yardInternational 0.9144 ENCODED FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_input_ratio INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeSetter_output_unit_name_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_input_ratio_OUTPUT _conversion_input_ratio @Lookup($(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_input_ratio_LOOKUP_TABLE,_conversion_input_unit_name,FORWARD|ENCODED_ATTR) # ------------------------------------------------------------------------- Lookup $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_output_ratio_LOOKUP_TABLE ångström 0.0000000001 barleycorn 0.00846 cablelengthImperial 185.3184 cablelengthInternational 185.2 cablelengthU.S. 219.456 calibre 0.0254 chainGuntersSurveyors 20.1168 chainRamsdensEngineers 30.48 cubit 0.4572 ell 1.143 fathom 1.8288 fermi 0.000000000000001 finger 0.022225 fingercloth 0.1143 footInternational 0.3048 frenchcharriere 0.0001 furlong 201.168 geographicalmile 1853.7936 hand 0.1016 inch 0.0254 league 4828.032 light-day 25902068370000 light-hour 1079252848000 light-minute 17987547480 light-second 299792458 light-year 9460730472580800 linkGuntersSurveyors 0.201168 linkRamsdensEngineers 0.3048 metreSIbaseunit 1 mickey 0.000127 micron 0.000001 milthou 0.0000254 milSwedenandNorway 10000 mile 1609.344 nailcloth 0.05715 nauticalleague 5556 nauticalmileinternational 1852 nauticalmileAdmiralty 1853.184 pace 0.762 palm 0.0762 pointATA 0.00035146 pointDidotEuropean 0.000376065 pointmetric 0.000375 quarter 0.2286 rodpoleperch 5.0292 rope 6.096 span 0.1524 spancloth 0.2286 spat 1000000000000 stick 0.0508 stigmapm 0.000000000001 telegraphmile 1855.3176 yardInternational 0.9144 ENCODED FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_output_ratio INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_input_ratio_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_output_ratio_OUTPUT _conversion_output_ratio @Lookup($(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_output_ratio_LOOKUP_TABLE,_conversion_output_unit_name,FORWARD|ENCODED_ATTR) # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_ExpressionEvaluator INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_ValueMapper_output_ratio_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_ExpressionEvaluator_OUTPUT _conversion_result @Evaluate("( @Value(_conversion_input_values)*@Value(_conversion_input_ratio) )/@Value(_conversion_output_ratio)") # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(LengthUnitConverter_WORKSPACE_NAME)_AttributeRemover INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_ExpressionEvaluator_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeRemover_OUTPUT @RemoveAttributes(_conversion_input_ratio,_conversion_input_unit_name,_conversion_input_values,_conversion_output_ratio,_conversion_output_unit_name) FACTORY_DEF * TeeFactory FACTORY_NAME "$(LengthUnitConverter_WORKSPACE_NAME)_LengthUnitConverter_output Output Collector" INPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_AttributeRemover_OUTPUT OUTPUT FEATURE_TYPE $(LengthUnitConverter_WORKSPACE_NAME)_LengthUnitConverter_output INCLUDE [puts {MACRO WB_CURRENT_CONTEXT $(WB_OLD_CONTEXT_$(LengthUnitConverter_WORKSPACE_NAME))}]