Merge branch 'omaha_14.4.1' into omaha_pda

Former-commit-id: 1a8817803d [formerly 3fdd69aade32e40d4684da739b19a414e0ba37df]
Former-commit-id: 4d0eef66f3
This commit is contained in:
Steve Harris 2014-11-05 07:58:05 -06:00
commit c2d4ce5ba0
95 changed files with 2212 additions and 607 deletions

View file

@ -20,15 +20,15 @@
-->
<menuContributionFile>
<include installTo="menu:Aviation?after=ConvectionProductsStart"
fileName="menus/aviationadvisory/baseAviationConvectionProducts.xml" />
fileName="menus/upperair/baseAviationConvectionProducts.xml" />
<include installTo="menu:Aviation?before=IcingProductsEnd"
fileName="menus/aviationadvisory/baseAviationIcingProducts.xml" />
fileName="menus/upperair/baseAviationIcingProducts.xml" />
<include installTo="menu:Aviation?before=TurbulenceProductsEnd"
fileName="menus/aviationadvisory/baseAviationTurbulenceProducts.xml" />
fileName="menus/upperair/baseAviationTurbulenceProducts.xml" />
<include installTo="menu:Aviation?before=VisibilityProductsEnd"
fileName="menus/aviationadvisory/baseAviationVisibilityProducts.xml" />
fileName="menus/upperair/baseAviationVisibilityProducts.xml" />
<include installTo="menu:Aviation?before=TropicalCycloneEnd"
fileName="menus/aviationadvisory/baseAviationTropicalCyclone.xml" />
fileName="menus/upperair/baseAviationTropicalCyclone.xml" />
<include installTo="menu:Aviation?after=VolcanicAshStart"
fileName="menus/aviationadvisory/baseAviationVolcanicAsh.xml" />
fileName="menus/upperair/baseAviationVolcanicAsh.xml" />
</menuContributionFile>

View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuContributionFile>
<include installTo="menu:Aviation?before=SignificantWeatherEnd"
fileName="menus/upperair/baseAviationBufrSigWx.xml" />
</menuContributionFile>

View file

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<contribute xsi:type="bundleItem" file="bundles/BufrSigWx.xml"
menuText="Medium Level" id="SigWxMedium">
<substitute key="wxLayer" value="SWM" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/BufrSigWx.xml"
menuText="High Level" id="SigWxHigh">
<substitute key="wxLayer" value="SWH" />
</contribute>
</menuTemplate>

View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuContributionFile>
<include installTo="menu:Aviation?before=CenterWeatherEnd"
fileName="menus/upperair/baseAviationCWA.xml" />
</menuContributionFile>

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<contribute xsi:type="bundleItem" file="bundles/CWA.xml"
menuText="Center Weather Advisories" id="cwa">
</contribute>
</menuTemplate>

View file

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuContributionFile>
<include subMenu="US Western" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseUSWestern.xml" />
<include subMenu="US Central" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseUSCentral.xml" />
<include subMenu="US Eastern" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseUSEastern.xml" />
<include subMenu="Canada North" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseCanadaNorth.xml" />
<include subMenu="Canada Western" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseCanadaWestern.xml" />
<include subMenu="Canada Central" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseCanadaCentral.xml" />
<include subMenu="Canada Eastern" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseCanadaEastern.xml" />
<include subMenu="Mexico" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseMexico.xml" />
<include subMenu="Atlantic" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseAtlantic.xml" />
<include subMenu="Japan/South Asia" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseJapan.xml" />
<include subMenu="Australia" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseAustralia.xml" />
<include subMenu="China" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseChina.xml" />
<include subMenu="Russia" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseRussia.xml" />
<include subMenu="Pacific East" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/basePacificEast.xml" />
<include subMenu="Pacific West" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/basePacificWest.xml" />
<include subMenu="Alaska" installTo="menu:upperAir?before=RAOBMenuEnd"
fileName="menus/upperair/baseAlaska.xml" />
</menuContributionFile>

View file

@ -44,4 +44,9 @@
install-size="0"
version="0.0.0"/>
<plugin
id="com.raytheon.uf.viz.d2d.ui.obs"
download-size="0"
install-size="0"
version="0.0.0"/>
</feature>

View file

@ -2,6 +2,5 @@
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>

View file

@ -2,12 +2,11 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: D2D Local Menu
Bundle-SymbolicName: com.raytheon.uf.viz.d2d.ui.local;singleton:=true
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: com.raytheon.uf.viz.d2d.ui.local.Activator
Bundle-Version: 1.14.0.qualifier
Bundle-Vendor: RAYTHEON
Require-Bundle: org.eclipse.core.runtime,
com.raytheon.uf.viz.d2d.ui;bundle-version="1.12.1174",
com.raytheon.viz.grid;bundle-version="1.12.1174",
com.raytheon.viz.pointdata;bundle-version="1.12.1174"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ActivationPolicy: lazy

View file

@ -1,4 +1,3 @@
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
.,\

View file

@ -1,30 +0,0 @@
package com.raytheon.uf.viz.d2d.ui.local;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
public class Activator implements BundleActivator {
private static BundleContext context;
static BundleContext getContext() {
return context;
}
/*
* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
*/
public void start(BundleContext bundleContext) throws Exception {
Activator.context = bundleContext;
}
/*
* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
*/
public void stop(BundleContext bundleContext) throws Exception {
Activator.context = null;
}
}

View file

@ -2,6 +2,5 @@
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>

View file

@ -2,8 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: D2D Ncep Hydro
Bundle-SymbolicName: com.raytheon.uf.viz.d2d.ui.ncephydro;singleton:=true
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: com.raytheon.uf.viz.d2d.ui.ncephydro.Activator
Bundle-Version: 1.14.0.qualifier
Bundle-Vendor: RAYTHEON
Require-Bundle: org.eclipse.core.runtime,
com.raytheon.uf.viz.d2d.ui;bundle-version="1.12.1174",
@ -13,5 +12,5 @@ Require-Bundle: org.eclipse.core.runtime,
com.raytheon.viz.warnings;bundle-version="1.12.1174",
com.raytheon.uf.viz.tcs;bundle-version="1.12.1174",
com.raytheon.uf.viz.ccfp;bundle-version="1.12.1174"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ActivationPolicy: lazy

View file

@ -1,4 +1,3 @@
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
.,\

View file

@ -1,30 +0,0 @@
package com.raytheon.uf.viz.d2d.ui.ncephydro;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
public class Activator implements BundleActivator {
private static BundleContext context;
static BundleContext getContext() {
return context;
}
/*
* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
*/
public void start(BundleContext bundleContext) throws Exception {
Activator.context = bundleContext;
}
/*
* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
*/
public void stop(BundleContext bundleContext) throws Exception {
Activator.context = null;
}
}

View file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>
</classpath>

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>com.raytheon.uf.viz.d2d.ui.obs</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.ManifestBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

View file

@ -0,0 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.7

View file

@ -0,0 +1,10 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: D2D UI Obs
Bundle-SymbolicName: com.raytheon.uf.viz.d2d.ui.obs;singleton:=true
Bundle-Version: 1.14.0.qualifier
Bundle-Vendor: RAYTHEON
Require-Bundle: org.eclipse.core.runtime,
com.raytheon.uf.viz.d2d.ui;bundle-version="1.14.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ActivationPolicy: lazy

View file

@ -0,0 +1,3 @@
bin.includes = META-INF/,\
.,\
plugin.xml

View file

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<?eclipse version="3.5"?>
<plugin>
<extension point="org.eclipse.ui.menus">
<menuContribution locationURI="menu:org.eclipse.ui.main.menu?after=d2d.obsMenu">
<menu id="obs" label="Obs" mnemonic="O">
<visibleWhen>
<reference
definitionId="com.raytheon.uf.viz.d2d.ui.inD2DActionSet">
</reference>
</visibleWhen>
<separator name="SURFACE" visible="false">
</separator>
<separator name="EndOfInitial" visible="true">
</separator>
<command commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ METAR ------">
</command>
<separator name="METAR" visible="false">
</separator>
<separator name="EndOfMetar" visible="true">
</separator>
<command commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Synoptic ------">
</command>
<separator name="SYNOPTIC" visible="false">
</separator>
<separator name="EndOfSynoptic" visible="true">
</separator>
<command commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Local data ------">
</command>
<separator name="LocalData" visible="false">
</separator>
<separator name="EndOfLocalData" visible="true">
</separator>
<command commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Maritime ------" id="MARITIME">
</command>
<separator name="EndOfMaritime" visible="true">
</separator>
<command commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Hazards ------">
</command>
<separator name="HAZARDS" visible="false" />
<separator name="LIGHTNINGPLACEHOLDER"
visible="false" />
<separator name="FOGPLACEHOLDER" visible="false" />
<separator name="SNOWPLACEHOLDER" visible="false" />
<separator name="EndOfHazards" visible="true">
</separator>
</menu>
</menuContribution>
</extension>
</plugin>

View file

@ -6,15 +6,9 @@ Bundle-Version: 1.14.0.qualifier
Bundle-Vendor: RAYTHEON
Require-Bundle: org.eclipse.core.runtime,
com.raytheon.uf.viz.d2d.ui;bundle-version="1.12.1174",
com.raytheon.uf.viz.d2d.nsharp;bundle-version="1.0.0",
com.raytheon.uf.viz.profiler;bundle-version="1.12.1174",
com.raytheon.viz.pointdata;bundle-version="1.12.1174",
com.raytheon.uf.viz.vaa;bundle-version="1.12.1174",
com.raytheon.uf.viz.cwa;bundle-version="1.12.1174",
com.raytheon.uf.viz.bufrsigwx;bundle-version="1.12.1174",
com.raytheon.viz.radar;bundle-version="1.12.1174",
com.raytheon.viz.grid;bundle-version="1.12.1174",
com.raytheon.viz.redbook;bundle-version="1.12.1174",
com.raytheon.uf.viz.ncwf;bundle-version="1.12.1174",
com.raytheon.viz.lpi;bundle-version="1.12.1174",
com.raytheon.viz.spi;bundle-version="1.12.1174"

View file

@ -46,27 +46,14 @@
<contribute xsi:type="titleItem" titleText="------ Volcanic Ash ------" />
<contribute xsi:type="separator" id="VolcanicAshStart"
visible="false" />
<contribute xsi:type="bundleItem" file="bundles/VAA.xml"
menuText="Volcanic Ash Advisories" id="VAA">
</contribute>
<contribute xsi:type="separator" id="VolcanicAshEnd" />
<contribute xsi:type="titleItem" titleText="------Center Weather ------" />
<contribute xsi:type="bundleItem" file="bundles/CWA.xml"
menuText="Center Weather Advisories" id="cwa">
</contribute>
<contribute xsi:type="titleItem" titleText="------ Center Weather ------" />
<contribute xsi:type="separator" id="CenterWeatherEnd" />
<contribute xsi:type="titleItem"
titleText="------Significant Weather------" />
<contribute xsi:type="bundleItem" file="bundles/BufrSigWx.xml"
menuText="Medium Level" id="SigWxMedium">
<substitute key="wxLayer" value="SWM" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/BufrSigWx.xml"
menuText="High Level" id="SigWxHigh">
<substitute key="wxLayer" value="SWH" />
</contribute>
titleText="------ Significant Weather ------" />
<contribute xsi:type="separator" id="SignificantWeatherEnd" />
</contribute>
<contribute xsi:type="separator" id="AviationMenuEnd" />
</menuTemplate>

View file

@ -19,84 +19,61 @@
further_licensing_information.
-->
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<contribute xsi:type="subMenu" menuText="UA plots">
<contribute xsi:type="titleItem" titleText="------ NCEP ------" />
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="200hPa" id="200hPa">
<substitute key="wmo" value="PYMA20"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="250hPa" id="250hPa">
<substitute key="wmo" value="PYMA25"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="300hPa" id="300hPa">
<substitute key="wmo" value="PYMA30"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="500hPa" id="500hPa">
<substitute key="wmo" value="PYMA50"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="700hPa" id="700hPa">
<substitute key="wmo" value="PYMA70"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="850hPa" id="850hPa">
<substitute key="wmo" value="PYMA85"/>
</contribute>
<contribute xsi:type="titleItem" titleText="------ RAOB ------" />
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="150 hPa" id="150hPa">
<substitute key="levelKey" value="150MB"/>
<substitute key="plotSource" value="raob 150"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="200 hPa" id="200hPa">
<substitute key="levelKey" value="200MB"/>
<substitute key="plotSource" value="raob 200"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="250 hPa" id="250hPa">
<substitute key="levelKey" value="250MB"/>
<substitute key="plotSource" value="raob 250"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="300 hPa" id="300hPa">
<substitute key="levelKey" value="300MB"/>
<substitute key="plotSource" value="raob 300"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="400 hPa" id="400hPa">
<substitute key="levelKey" value="400MB"/>
<substitute key="plotSource" value="raob 400"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="500 hPa" id="500hPa">
<substitute key="levelKey" value="500MB"/>
<substitute key="plotSource" value="raob 500"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="700 hPa" id="700hPa">
<substitute key="levelKey" value="700MB"/>
<substitute key="plotSource" value="raob 700"/>
<substitute key="plotModelFile" value="raobLowerDesign"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="850 hPa" id="850hPa">
<substitute key="levelKey" value="850MB"/>
<substitute key="plotSource" value="raob 850"/>
<substitute key="plotModelFile" value="raobLowerDesign"/>
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="925 hPa" id="925hPa">
<substitute key="levelKey" value="925MB"/>
<substitute key="plotSource" value="raob 925"/>
<substitute key="plotModelFile" value="raobLowerDesign"/>
</contribute>
</contribute>
<contribute xsi:type="subMenu" id="UAplots" menuText="UA plots">
<contribute xsi:type="titleItem" titleText="------ NCEP ------" />
<contribute xsi:type="separator" id="NCEPEnd"
visible="false" />
<contribute xsi:type="subinclude" fileName="menus/upperair/uaMenus.xml"/>
<contribute xsi:type="separator" id="MySeparatorId"/>
<contribute xsi:type="titleItem" titleText="------ RAOB ------" />
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="150 hPa" id="150hPa">
<substitute key="levelKey" value="150MB" />
<substitute key="plotSource" value="raob 150" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="200 hPa" id="200hPa">
<substitute key="levelKey" value="200MB" />
<substitute key="plotSource" value="raob 200" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="250 hPa" id="250hPa">
<substitute key="levelKey" value="250MB" />
<substitute key="plotSource" value="raob 250" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="300 hPa" id="300hPa">
<substitute key="levelKey" value="300MB" />
<substitute key="plotSource" value="raob 300" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="400 hPa" id="400hPa">
<substitute key="levelKey" value="400MB" />
<substitute key="plotSource" value="raob 400" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="500 hPa" id="500hPa">
<substitute key="levelKey" value="500MB" />
<substitute key="plotSource" value="raob 500" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="700 hPa" id="700hPa">
<substitute key="levelKey" value="700MB" />
<substitute key="plotSource" value="raob 700" />
<substitute key="plotModelFile" value="raobLowerDesign" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="850 hPa" id="850hPa">
<substitute key="levelKey" value="850MB" />
<substitute key="plotSource" value="raob 850" />
<substitute key="plotModelFile" value="raobLowerDesign" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/UpperAirPlot.xml"
menuText="925 hPa" id="925hPa">
<substitute key="levelKey" value="925MB" />
<substitute key="plotSource" value="raob 925" />
<substitute key="plotModelFile" value="raobLowerDesign" />
</contribute>
</contribute>
<contribute xsi:type="separator" id="baseUpperAirEnd" />
</menuTemplate>

View file

@ -1,56 +1,33 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuContributionFile>
<include installTo="menu:upperAir?before=PROFILER" fileName="menus/upperair/baseUpperAir.xml" />
<include subMenu="Alaska NPN time-height" installTo="menu:upperAir?after=PROFILER" fileName="menus/upperair/baseAlaskaNPN.xml" />
<include subMenu="West NPN time-height" installTo="menu:upperAir?before=ProfilerMenuEnd"
fileName="menus/upperair/baseWestNPN.xml" />
<include subMenu="East NPN time-height" installTo="menu:upperAir?before=ProfilerMenuEnd"
fileName="menus/upperair/baseEastNPN.xml" />
<include installTo="menu:upperAir?before=ProfilerMenuEnd"
fileName="menus/upperair/baseNPNPlot.xml" />
<include installTo="menu:upperAir?after=RADAR" fileName="menus/upperair/baseRadar.xml" />
<include subMenu="PIREP plots" installTo="menu:upperAir?after=AIRCRAFT" fileName="menus/upperair/basePirep.xml" />
<include subMenu="MDCRS plots" installTo="menu:upperAir?before=AircraftMenuEnd"
fileName="menus/upperair/baseMDCRS.xml" />
<include installTo="menu:upperAir?before=AircraftMenuEnd"
fileName="menus/upperair/baseAviation.xml" />
<include installTo="menu:upperAir?after=RAOB" fileName="menus/upperair/baseRAOB.xml" />
<include installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseAddedFeatures.xml" />
<include subMenu="US Western" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseUSWestern.xml" />
<include subMenu="US Central" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseUSCentral.xml" />
<include subMenu="US Eastern" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseUSEastern.xml" />
<include subMenu="Canada North" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseCanadaNorth.xml" />
<include subMenu="Canada Western" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseCanadaWestern.xml" />
<include subMenu="Canada Central" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseCanadaCentral.xml" />
<include subMenu="Canada Eastern" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseCanadaEastern.xml" />
<include subMenu="Mexico" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseMexico.xml" />
<include subMenu="Atlantic" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseAtlantic.xml" />
<include subMenu="Japan/South Asia" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseJapan.xml" />
<include subMenu="Australia" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseAustralia.xml" />
<include subMenu="China" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseChina.xml" />
<include subMenu="Russia" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseRussia.xml" />
<include subMenu="Pacific East" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/basePacificEast.xml" />
<include subMenu="Pacific West" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/basePacificWest.xml" />
<include subMenu="Alaska" installTo="menu:upperAir?before=RAOBMenuEnd" fileName="menus/upperair/baseAlaska.xml" />
<include installTo="menu:upperAir?before=PROFILER" fileName="menus/upperair/baseUpperAir.xml" />
<include installTo="menu:upperAir?before=ProfilerMenuEnd"
fileName="menus/upperair/baseNPNPlot.xml" />
<include installTo="menu:upperAir?after=RADAR" fileName="menus/upperair/baseRadar.xml" />
<include subMenu="PIREP plots" installTo="menu:upperAir?after=AIRCRAFT" fileName="menus/upperair/basePirep.xml" />
<include subMenu="MDCRS plots" installTo="menu:upperAir?before=AircraftMenuEnd"
fileName="menus/upperair/baseMDCRS.xml" />
<include installTo="menu:upperAir?before=AircraftMenuEnd"
fileName="menus/upperair/baseAviation.xml" />
<include installTo="menu:upperAir?after=RAOB" fileName="menus/upperair/baseRAOB.xml" />
<include installTo="menu:upperAir?before=RAOBMenuMiddle" fileName="menus/upperair/baseAddedFeatures.xml" />
</menuContributionFile>

View file

@ -52,9 +52,10 @@
<command
commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ RAOB ------" id="RAOB">
</command>
</command>
<separator name="RAOBMenuMiddle" visible="false"/>
<separator name="RAOBMenuEnd" visible="false"/>
</menu>
</menuContribution>
</menuContribution>
</extension>
</plugin>

View file

@ -2,10 +2,10 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Ui Plug-in
Bundle-SymbolicName: com.raytheon.uf.viz.d2d.ui;singleton:=true
Bundle-Version: 1.12.1174.qualifier
Bundle-Version: 1.14.0.qualifier
Bundle-Activator: com.raytheon.uf.viz.d2d.ui.Activator
Bundle-Vendor: RAYTHEON
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ActivationPolicy: lazy
Export-Package: com.raytheon.uf.viz.d2d.ui,
com.raytheon.uf.viz.d2d.ui.actions,

View file

@ -293,80 +293,7 @@
</visibleWhen>
<separator name="top" visible="false"/>
</menu>
<menu
id="obs"
label="Obs"
mnemonic="O">
<visibleWhen>
<reference
definitionId="com.raytheon.uf.viz.d2d.ui.inD2DActionSet">
</reference>
</visibleWhen>
<separator
name="SURFACE"
visible="false">
</separator>
<separator
name="EndOfInitial"
visible="true">
</separator>
<command
commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ METAR ------">
</command>
<separator
name="METAR"
visible="false">
</separator>
<separator
name="EndOfMetar"
visible="true">
</separator>
<command
commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Synoptic ------">
</command>
<separator
name="SYNOPTIC"
visible="false">
</separator>
<separator
name="EndOfSynoptic"
visible="true">
</separator>
<command
commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Local data ------">
</command>
<separator
name="LocalData"
visible="false">
</separator>
<separator
name="EndOfLocalData"
visible="true">
</separator>
<command
commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Maritime ------" id="MARITIME">
</command>
<separator
name="EndOfMaritime"
visible="true">
</separator>
<command
commandId="com.raytheon.viz.ui.actions.titleAction"
label="------ Hazards ------" >
</command>
<separator name="HAZARDS" visible="false"/>
<separator name="LIGHTNINGPLACEHOLDER" visible="false"/>
<separator name="FOGPLACEHOLDER" visible="false"/>
<separator name="SNOWPLACEHOLDER" visible="false"/>
<separator
name="EndOfHazards"
visible="true">
</separator>
</menu>
<separator name="d2d.obsMenu" visible="false"/>
<separator name="d2d.ncepHydroMenu" visible="false"/>
<separator name="d2d.localMenu" visible="false"/>
<separator name="d2d.upperAirMenu" visible="false"/>

View file

@ -54,6 +54,8 @@ import com.raytheon.viz.ui.dialogs.CaveSWTDialog;
* ------------- -------- ----------- --------------------------
* Jan 20, 2014 2312 bsteffen Initial creation
* Mar 10, 2014 2867 bsteffen Better frame range validation.
* Oct 28, 2014 3767 bsteffen Automatically change filename if selected
* format does not support all options.
*
* </pre>
*
@ -412,13 +414,23 @@ public class ImageExportDialog extends CaveSWTDialog {
}
}
if (!goodSuffix) {
MessageBox mb = new MessageBox(getShell(), SWT.ICON_ERROR | SWT.OK);
mb.setText("Invalid Suffix");
mb.setMessage("The file extension(" + suffix
MessageBox mb = new MessageBox(getShell(), SWT.ICON_WARNING
| SWT.YES | SWT.NO);
mb.setText("Incompatible Format");
ImageFormat format = options.getImageFormat();
mb.setMessage("The format(" + suffix
+ ") of the selected file is not valid for "
+ options.getImageFormat().getDescription());
mb.open();
return false;
+ format.getDescription()
+ ". Would you like to continue and export the file in "
+ format.getExtensions()[0] + " format?");
int result = mb.open();
if (result == SWT.YES) {
suffix = format.getExtensions()[0];
path = path.substring(0, path.lastIndexOf('.') + 1) + suffix;
options.setFileLocation(new File(path));
} else {
return false;
}
}
File file = options.getFileLocation();

View file

@ -37,6 +37,7 @@ import com.raytheon.uf.viz.core.datastructure.LoopProperties;
* ------------- -------- ----------- --------------------------
* Jan 20, 2014 2312 bsteffen Initial creation
* Mar 10, 2014 2867 bsteffen Better frame range validation.
* Oct 28, 2014 3767 bsteffen Change default name to screenCapture.png
*
* </pre>
*
@ -79,7 +80,7 @@ public class ImageExportOptions {
}
private File fileLocation = new File("screenCapture.gif");
private File fileLocation = new File("screenCapture.png");
private ImageFormat imageFormat = ImageFormat.SEQUENCE;

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuContributionFile>
<include subMenu="East NPN time-height" installTo="menu:upperAir?after=PROFILER"
fileName="menus/upperair/baseEastNPN.xml" />
<include subMenu="West NPN time-height" installTo="menu:upperAir?after=PROFILER"
fileName="menus/upperair/baseWestNPN.xml" />
<include subMenu="Alaska NPN time-height" installTo="menu:upperAir?after=PROFILER"
fileName="menus/upperair/baseAlaskaNPN.xml" />
</menuContributionFile>

View file

@ -34923,14 +34923,6 @@ bistable
bistro
bistro's
bistros
bitched
bitchier
bitchiest
bitchily
bitchiness
bitchiness's
bitching
bitchy
biter's
bitings
bittern
@ -39696,8 +39688,6 @@ cockscomb
cockscomb's
cockscombs
cockshies
cocksucker
cocksuckers
cocksure
cocky
coco
@ -60609,7 +60599,6 @@ lepers
leprechaun
leprechaun's
leprechauns
leprosy's
leprous
lepta
lepton
@ -70881,7 +70870,6 @@ piscatorial
pismire
pismire's
pismires
pissers
pissoir
pissoirs
pistachio

View file

@ -79,6 +79,7 @@ import com.raytheon.uf.viz.spellchecker.jobs.SpellCheckJob;
* 01Mar2010 4765 MW Fegan Moved from GFE plug-in.
* 09/24/2014 #16693 lshi filter out swear words in spelling check
* 10/23/2014 #3685 randerso Changes to support mixed case
* 10/30/2014 #16693 lshi Add more swear words to the filter
*
* </pre>
*
@ -87,7 +88,9 @@ import com.raytheon.uf.viz.spellchecker.jobs.SpellCheckJob;
*
*/
public class SpellCheckDlg extends Dialog implements ISpellingProblemCollector {
private static java.util.List<String> swearWords = Arrays.asList("ASSHOLE");
private static java.util.List<String> swearWords = Arrays.asList("asshole", "asshole's", "assholes",
"bitch", "bitch's", "bitches", "leprosy", "gayest",
"shit", "piss", "pissed","psser","pisses","pissing","tits");
private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(SpellCheckDlg.class);

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<contribute xsi:type="bundleItem" file="bundles/VAA.xml"
menuText="Volcanic Ash Advisories" id="VAA">
</contribute>
</menuTemplate>

View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuContributionFile>
<include installTo="menu:Aviation?before=VolcanicAshEnd"
fileName="menus/upperair/baseAviationVAA.xml" />
</menuContributionFile>

View file

@ -1,22 +1,3 @@
##
# This software was developed and / or modified by Raytheon Company,
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
#
# U.S. EXPORT CONTROLLED TECHNICAL DATA
# This software product contains export-restricted data whose
# export/transfer/disclosure is restricted by U.S. law. Dissemination
# to non-U.S. persons whether in the United States or abroad requires
# an export license or other authorization.
#
# Contractor Name: Raytheon Company
# Contractor Address: 6825 Pine Street, Suite 340
# Mail Stop B8
# Omaha, NE 68106
# 402.291.0100
#
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
# further licensing information.
##
# ----------------------------------------------------------------------------
# SVN: $Revision: 134 $ $Date: 2010-08-26 17:32:30 +0000 (Thu, 26 Aug 2010) $
#
@ -24,10 +5,22 @@
# support, and with no warranty, express or implied, as to its usefulness for
# any purpose.
#
# ObjAnal - version 2.8 - various Objective Analysis routines
# ObjAnal - version 2.12 - various Objective Analysis routines
#
# Author: Tim Barker - SOO Boise, ID
#
# 2014/10/06 - Version 2.12. Fix typo with timetupe in logtime which handles
# when running in simulations.
# 2014/08/31 - Version 2.11. Get rid of debug print statement that shouldn't
# have been there in the first place.
# 2014/07/28 - Version 2.10. Fix issues when ActualElev=1 and landMask is
# used, and a control point near the edge of the landMask has
# an elevation that is wildly different than the grid elevation
# at at that location. Also introduce the concept of a 'missing'
# elevation value for the point obs. If the elevation is missing
# the code will use the grid elevation - regardless of the
# setting of ActualElev. Defaults to -500ft. Can be changed
# with new setMissingElevThreshold routine (but doubt anybody will)
# 2014/03/20 - Version 2.8. Better import of numpy. Used SmartScript for
# _gmtime instead of time module (for more effective playback)
# 2014/01/10 - Version 2.7. Fixed copy of self._empty
@ -93,8 +86,12 @@ class ObjAnal(SmartScript.SmartScript):
# otherwise.......use the elevation of the gridpoint that
# contains the station for elevation related
# calculations
# However...if the station elevation is lower than the missing
# elevation Threshold, then use the grid elevation
# even if ActualElev is equal to 1.
#
self.ActualElev=1
self.MissingElevThreshold=-500
#
# Default Serp parameters
# Cache (500 by default) (between 0 and 1000) amount of memory
@ -126,9 +123,7 @@ class ObjAnal(SmartScript.SmartScript):
#
self.DSquaredDist=-1
self.DSquaredMaxPoints=-1
#
#
#
return
#---------------------------------------------------------------------------
@ -189,25 +184,50 @@ class ObjAnal(SmartScript.SmartScript):
yloclist=[]
hloclist=[]
zlist=[]
if landMask is None:
newlandMask=(topoGrid*0)+1
else:
newLandMask=landMask
self.logtime("Point values used in analysis:",4)
for i in range(len(values)):
(name,x,y,elev,val)=values[i]
if (x>(self.xmax-1))or(x<0)or(y>(self.ymax-1))or(y<0):
continue
hloclist.append(elev)
#
# If the ob point elevation is missing - always use
# the gridpoint elevation
#
if elev>self.MissingElevThreshold:
hloclist.append(elev)
else:
hloclist.append(topoGrid[y,x])
xloclist.append(x)
yloclist.append(y)
#
# If using actual elevations (rather than grid elevation)
# we will estimate what the grid WOULD have at that elevation
# and use THAT for determining the change that needs to be
# made
# If using the grid elevation at the point, then the
# z value (change)is simply the observed value minus the guess
# grid value.
#
if self.ActualElev==1:
if self.ActualElev!=1:
self.logtime(" %12s %3d,%3d %5d Val:%5.1f -- grid:%5.1f -- change:%5.1f"%(name,x,y,elev,val,guessGrid[y,x],val-guessGrid[y,x]),4)
zlist.append(val-guessGrid[y,x])
#
# If using actual elevations - then need to make the z value the
# difference between what the guess grid WOULD have at the ob elevation
# rather than the guess grid value itself. Searches outward until
# it finds a guess grid point with an elevation less than 100 feet
# from the ob's elevation.
#
else:
pt=topoGrid[y,x]
obLandMask=newLandMask[y,x]
desiredDiff=100
bestval=guessGrid[y,x]
bestdif=abs(elev-pt)
if elev>self.MissingElevThreshold:
bestdif=abs(elev-pt)
else:
bestdif=0
bestele=pt
wid=1
#
@ -219,46 +239,48 @@ class ObjAnal(SmartScript.SmartScript):
# to change the grid at the observation gridpoint.
#
while ((bestdif>desiredDiff)and(wid<10)):
#print " searching with wid=%d"%wid
if ((y+wid)<self.ymax):
for ii in range(max(0,x-wid),min(x+wid+1,self.xmax)):
gelev=topoGrid[y+wid,ii]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[y+wid,ii]
if obLandMask==newLandMask[y+wid,ii]:
gelev=topoGrid[y+wid,ii]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[y+wid,ii]
if ((y-wid)>=0):
for ii in range(max(0,x-wid),min(x+wid+1,self.xmax)):
gelev=topoGrid[y-wid,ii]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[y-wid,ii]
if obLandMask==newLandMask[y-wid,ii]:
gelev=topoGrid[y-wid,ii]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[y-wid,ii]
if ((x+wid)<self.xmax):
for jj in range(max(0,y-wid),min(y+wid+1,self.ymax)):
gelev=topoGrid[jj,x+wid]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[jj,x+wid]
if obLandMask==newLandMask[jj,x+wid]:
gelev=topoGrid[jj,x+wid]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[jj,x+wid]
if ((x-wid)>=0):
for jj in range(max(0,y-wid),min(y+wid+1,self.ymax)):
gelev=topoGrid[jj,x-wid]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[jj,x-wid]
if obLandMask==newLandMask[jj,x-wid]:
gelev=topoGrid[jj,x-wid]
dif=abs(elev-gelev)
if dif<bestdif:
bestdif=dif
bestele=gelev
bestval=guessGrid[jj,x-wid]
if bestdif>desiredDiff:
wid+=1
estval=bestval
self.logtime(" %12s %3d,%3d, est at %5d:%5.1f --- grid at %5d:%5.1f --- (%5d diff) -- Val:%5.1f -- Change:%5.1f"%(name,x,y,elev,estval,pt,guessGrid[y,x],pt-elev,val,val-estval),4)
zlist.append(val-estval)
else:
self.logtime(" %12s %3d,%3d %5d Val:%5.1f -- grid:%5.1f -- change:%5.1f"%(name,x,y,elev,val,guessGrid[y,x],val-guessGrid[y,x]),4)
zlist.append(val-guessGrid[y,x])
#
# Do the requested analysis
#
@ -669,7 +691,7 @@ class ObjAnal(SmartScript.SmartScript):
# Get distance squared of control points to every gridpoint
#
self.logtime("Getting distance squared between control points and gridpoints",3)
dists=zeros((numpts,self.ymax,self.xmax),np.float32)
dists=np.zeros((numpts,self.ymax,self.xmax),np.float32)
for k in range(numpts):
d=self.getDistance(xarr[k],yarr[k],harr[k],scaledtopo,newlandMask)*self.gridres
dists[k]=(d*d).astype(np.float32)
@ -711,8 +733,8 @@ class ObjAnal(SmartScript.SmartScript):
# Barnes PASS 1
#
self.logtime("Barnes Pass 1",3)
totweights=zeros((self.ymax,self.xmax),np.float32)
totsum=zeros((self.ymax,self.xmax),np.float32)
totweights=np.zeros((self.ymax,self.xmax),np.float32)
totsum=np.zeros((self.ymax,self.xmax),np.float32)
for k in range(numpts):
#
# get scaled distance squared divided by kappa
@ -740,8 +762,8 @@ class ObjAnal(SmartScript.SmartScript):
# Barnes PASS 2
#
self.logtime("Barnes Pass 2",3)
totweights=zeros((self.ymax,self.xmax),np.float32)
totsum=zeros((self.ymax,self.xmax),np.float32)
totweights=np.zeros((self.ymax,self.xmax),np.float32)
totsum=np.zeros((self.ymax,self.xmax),np.float32)
for k in range(numpts):
#
# get scaled distance squared divided by gamma *kappa
@ -1080,6 +1102,15 @@ class ObjAnal(SmartScript.SmartScript):
self.verbose=0
return
#---------------------------------------------------------------------------
# setMissingElevThreshold - set the MissingElevThreshold value
# Obs with elevation values less than or equal to this threshold
# will use the topo grid elevation instead, even if ActualElev is set
# to 1.
#
def setMissingElevThreshold(self,value):
self.MissingElevThreshold=value
return
#---------------------------------------------------------------------------
# logtime - write a string with date/time stamp. Can dynamically control
# which get printed by using the importance and verbosity settings.
# Will only print message with importance less or equal to verbosity
@ -1089,7 +1120,7 @@ class ObjAnal(SmartScript.SmartScript):
#
def logtime(self,string,importance=0):
if importance<=self.verbose:
tt=self._gmtime().timetuple
tt=self._gmtime().timetuple()
ts="%4.4d/%2.2d/%2.2d %2.2d:%2.2d:%2.2d"%(tt[0],tt[1],tt[2],tt[3],tt[4],tt[5])
print "%s|ObjAnal - %s" % (ts,string)
sys.stdout.flush()

View file

@ -0,0 +1,128 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.viz.grid.rsc.general;
import java.util.LinkedList;
import java.util.List;
import java.util.concurrent.LinkedBlockingQueue;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
/**
* A pool of {@link Job} that executes {@link GridDataRequestRunner}s with a
* scheduling pattern that is ideal for smooth user interaction. This object
* expects {@link #schedule(GridDataRequestRunner)} to be called each time data
* is needed that is not yet available(primarily when the frame is displayed).
* Calling {@link #schedule(GridDataRequestRunner)} causes the runner to be
* bumped to the front of the queue so that data will be ready as soon as
* possible. This causes runners that are not being displayed to frequently get
* bumped to the back of the queue, which is desired since the user does not
* need that data yet.
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------- -------- ----------- --------------------------
* Oct 29, 2014 3668 bsteffen Initial creation
*
* </pre>
*
* @author bsteffen
* @version 1.0
*/
public class GridDataRequestJobPool {
private static final int POOL_SIZE = Integer.getInteger(
"grid.request.pool.size", 10);
private static final GridDataRequestJobPool instance = new GridDataRequestJobPool();
public static void schedule(GridDataRequestRunner runner) {
instance.scheduleRunner(runner);
}
protected LinkedBlockingQueue<Job> jobQueue = new LinkedBlockingQueue<Job>();
protected List<GridDataRequestRunner> runners = new LinkedList<>();
private GridDataRequestJobPool(){
for (int i = 0; i <POOL_SIZE; i++) {
jobQueue.add(new GridDataRequestJob());
}
}
protected void scheduleRunner(GridDataRequestRunner runner) {
synchronized (runners) {
if (runners.isEmpty() || !(runners.get(0) == runner)) {
runners.remove(runner);
runners.add(0, runner);
}
}
Job job = jobQueue.poll();
if (job != null) {
job.schedule();
}
}
protected void reschedule(GridDataRequestRunner runner){
synchronized (runners) {
if(!runners.contains(runner)){
runners.add(runner);
}
}
}
protected GridDataRequestRunner getNextRunner(){
synchronized (runners) {
if(runners.isEmpty()){
return null;
}else{
return runners.remove(0);
}
}
}
private class GridDataRequestJob extends Job{
public GridDataRequestJob() {
super("Requesting Grid Data");
}
@Override
protected IStatus run(IProgressMonitor monitor) {
jobQueue.offer(this);
GridDataRequestRunner runner = getNextRunner();
while(runner != null){
if(runner.processOneRequest()){
reschedule(runner);
}
runner = getNextRunner();
}
return Status.OK_STATUS;
}
}
}

View file

@ -29,11 +29,10 @@ import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.DataTime;
import com.raytheon.uf.viz.core.exception.VizException;
import com.raytheon.uf.viz.core.jobs.JobPool;
/**
*
* Manages asynchronously requesting data for GridResources.
* Manages asynchronously requesting data for {@link AbstractGridResource}s.
*
* <pre>
*
@ -47,21 +46,15 @@ import com.raytheon.uf.viz.core.jobs.JobPool;
* Jun 24, 2013 2140 randerso Moved safe name code into AbstractVizResource
* Oct 07, 2014 3668 bclement uses executor instead of eclipse job
* renamed to GridDataRequestRunner
* Oct 23, 2014 3668 bsteffen replace executor with job pool so user
* sees progress.
* Oct 29, 2014 3668 bsteffen replace executor with custom job pool.
*
* </pre>
*
* @author bsteffen
* @version 1.0
* @see GridDataRequestJobPool
*/
class GridDataRequestRunner implements Runnable {
private static final int POOL_SIZE = Integer.getInteger(
"grid.request.pool.size", 10);
private static final JobPool jobPool = new JobPool("Requesting Grid Data",
POOL_SIZE);
class GridDataRequestRunner {
private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(GridDataRequestRunner.class);
@ -80,6 +73,8 @@ class GridDataRequestRunner implements Runnable {
// been notified.)
public boolean exceptionHandled = false;
public boolean isRunning = false;
public GridDataRequest(DataTime time, List<PluginDataObject> pdos) {
this.time = time;
if (pdos == null) {
@ -91,21 +86,12 @@ class GridDataRequestRunner implements Runnable {
}
public boolean shouldRequest() {
return (gridData == null) && (exception == null);
return (gridData == null) && (exception == null)
&& (isRunning == false);
}
}
/**
* This class is not designed to handle multiple requests concurrently. To
* ensure this doesn't happen we track when it is scheduled and do not
* schedule again. It would have been simpler to synchronize the run method
* but that ties up threads from the pool that other resources should use.
* So we don't leave dangling requests this should only be modified while
* synchronized on requests.
*/
private volatile boolean scheduled = false;
private AbstractGridResource<?> resource;
private List<GridDataRequest> requests = new ArrayList<GridDataRequest>();
@ -114,42 +100,49 @@ class GridDataRequestRunner implements Runnable {
this.resource = resource;
}
@Override
public void run() {
for (GridDataRequest request = getNext(); request != null; request = getNext()) {
try {
request.gridData = resource.getData(request.time, request.pdos);
if (request.gridData == null) {
/*
* need to remove unfulfillable requests to avoid infinite
* loop.
*/
synchronized (requests) {
requests.remove(request);
}
} else {
resource.issueRefresh();
/**
* Attempt to process a request if there are any that need to be processed
*
* @return true if a request was processed or false if no requests need to
* be processed.
*/
public boolean processOneRequest() {
GridDataRequest request = getNext();
if (request == null) {
return false;
}
try {
request.gridData = resource.getData(request.time, request.pdos);
if (request.gridData == null) {
/* need to remove unfulfillable requests to avoid infinite loop. */
synchronized (requests) {
requests.remove(request);
}
} catch (VizException e) {
request.exception = e;
} else {
resource.issueRefresh();
}
} catch (VizException e) {
request.exception = e;
resource.issueRefresh();
} finally {
request.isRunning = false;
}
return true;
}
/**
* Get the next request that should be sent
* Get the next request that should be processed
*
* @return null if no request should be sent
* @return null if no request should be processed
*/
protected GridDataRequest getNext() {
synchronized (requests) {
for (GridDataRequest request : requests) {
if (request.shouldRequest()) {
request.isRunning = true;
return request;
}
}
scheduled = false;
}
return null;
}
@ -181,9 +174,8 @@ class GridDataRequestRunner implements Runnable {
if ((request.exception != null) && !request.exceptionHandled) {
handleExceptions();
}
if (!scheduled && request.shouldRequest()) {
scheduled = true;
jobPool.schedule(this);
if (request.shouldRequest()) {
GridDataRequestJobPool.schedule(this);
}
}
return null;
@ -268,9 +260,6 @@ class GridDataRequestRunner implements Runnable {
public void stopAndClear() {
synchronized (requests) {
requests.clear();
if (jobPool.cancel(this)) {
scheduled = false;
}
}
}

View file

@ -1150,6 +1150,7 @@ public class GageTableDlg extends JFrame implements IEditTimeChangedListener {
} else {
// Check for equality first
response = o1.compareTo(o2);
response *= -1;
if (response != 0) {
if (o1.toString().trim().equalsIgnoreCase("M")) {
response = 1;

View file

@ -115,7 +115,7 @@
</contribute>
</contribute>
<contribute xsi:type="command"
menuText="Collection/Dissemintation..." id="CollectionDissemintation"
menuText="Collection/Dissemination..." id="CollectionDissemination"
commandId="com.raytheon.uf.viz.app.launcher.appLauncherHandler">
<parameter key="bundleLocation" value="bundles/run-ldadScheduler.xml"/>
</contribute>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuContributionFile>
<include installTo="menu:UAplots?before=NCEPEnd"
fileName="menus/upperair/baseUpperAirRedbook.xml" />
<include installTo="menu:upperAir?before=baseUpperAirEnd"
fileName="menus/upperair/uaMenus.xml" />
</menuContributionFile>

View file

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="200hPa" id="200hPa">
<substitute key="wmo" value="PYMA20" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="250hPa" id="250hPa">
<substitute key="wmo" value="PYMA25" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="300hPa" id="300hPa">
<substitute key="wmo" value="PYMA30" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="500hPa" id="500hPa">
<substitute key="wmo" value="PYMA50" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="700hPa" id="700hPa">
<substitute key="wmo" value="PYMA70" />
</contribute>
<contribute xsi:type="bundleItem" file="bundles/RedbookUpperAir.xml"
menuText="850hPa" id="850hPa">
<substitute key="wmo" value="PYMA85" />
</contribute>
</menuTemplate>

View file

@ -1,4 +1,23 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
This_software_product_contains_export-restricted_data_whose
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
an_export_license_or_other_authorization.
Contractor_Name:________Raytheon_Company
Contractor_Address:_____6825_Pine_Street,_Suite_340
________________________Mail_Stop_B8
________________________Omaha,_NE_68106
________________________402.291.0100
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<menuTemplate>
<contribute xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="subMenu" menuText="Model Graphics" id="modelGraphics">
<contribute xsi:type="bundleItem" useReferenceTime="true" file="bundles/Redbook.xml" menuText="UKMO 500 hgt" timeQuery="true" id="uaUKMO500hgt">

View file

@ -0,0 +1,11 @@
#!/bin/bash
echo "INFO: delete FSSObs config files - removing safeseas, snow and fog area configuration files."
echo "Replace site AKQ with current one."
cd /awips2/edex/data/utility/common_static/site/AKQ
rm -rf fog safeseas snow
echo "INFO: the update has completed successfully!"
exit 0

View file

@ -45,8 +45,10 @@ import com.raytheon.uf.common.dataplugin.grid.dataquery.GridQueryAssembler;
import com.raytheon.uf.common.dataplugin.grid.mapping.DatasetIdMapper;
import com.raytheon.uf.common.dataplugin.level.Level;
import com.raytheon.uf.common.dataplugin.level.mapping.LevelMapper;
import com.raytheon.uf.common.dataquery.requests.DbQueryRequest;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint.ConstraintType;
import com.raytheon.uf.common.dataquery.responses.DbQueryResponse;
import com.raytheon.uf.common.numeric.source.DataSource;
import com.raytheon.uf.common.parameter.mapping.ParameterMapper;
import com.raytheon.uf.common.util.mapping.Mapper;
@ -67,6 +69,7 @@ import com.raytheon.uf.common.util.mapping.Mapper;
* Jul 30, 2014 3184 njensen Renamed valid identifiers to optional
* Sep 09, 2014 3356 njensen Remove CommunicationException
* Oct 16, 2014 3598 nabowle Accept level identifiers.
* Oct 21, 2014 3755 nabowle Add getAvailable levels and parameters.
*
*
* </pre>
@ -321,4 +324,33 @@ public class GridDataAccessFactory extends AbstractGridDataPluginFactory
return getAvailableLocationNames(request, GridConstants.DATASET_ID);
}
/**
* Get the available levels.
*/
@Override
public Level[] getAvailableLevels(IDataRequest request) {
DbQueryRequest dbQueryRequest = buildDbQueryRequest(request);
dbQueryRequest.setDistinct(Boolean.TRUE);
dbQueryRequest.addRequestField(GridConstants.LEVEL);
DbQueryResponse dbQueryResponse = this.executeDbQueryRequest(
dbQueryRequest, request.toString());
return dbQueryResponse
.getFieldObjects(GridConstants.LEVEL, Level.class);
}
/**
* Get the available parameter abbreviations.
*/
@Override
public String[] getAvailableParameters(IDataRequest request) {
DbQueryRequest dbQueryRequest = buildDbQueryRequest(request);
dbQueryRequest.setDistinct(Boolean.TRUE);
dbQueryRequest.addRequestField(GridConstants.PARAMETER_ABBREVIATION);
DbQueryResponse dbQueryResponse = this.executeDbQueryRequest(
dbQueryRequest, request.toString());
return dbQueryResponse.getFieldObjects(
GridConstants.PARAMETER_ABBREVIATION, String.class);
}
}

View file

@ -1,19 +1,19 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
@ -26,6 +26,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
import org.geotools.coverage.grid.GridGeometry2D;
import org.geotools.geometry.jts.ReferencedEnvelope;
@ -48,8 +49,10 @@ import com.raytheon.uf.common.dataplugin.radar.util.RadarDataRetriever;
import com.raytheon.uf.common.dataplugin.radar.util.RadarInfo;
import com.raytheon.uf.common.dataplugin.radar.util.RadarInfoDict;
import com.raytheon.uf.common.dataplugin.radar.util.RadarUtil;
import com.raytheon.uf.common.dataquery.requests.DbQueryRequest;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint;
import com.raytheon.uf.common.dataquery.requests.RequestConstraint.ConstraintType;
import com.raytheon.uf.common.dataquery.responses.DbQueryResponse;
import com.raytheon.uf.common.geospatial.util.SubGridGeometryCalculator;
import com.raytheon.uf.common.localization.PathManagerFactory;
import com.raytheon.uf.common.numeric.buffer.ByteBufferWrapper;
@ -80,7 +83,9 @@ import com.vividsolutions.jts.geom.Envelope;
* single request.
* Feb 04, 2014 2672 bsteffen Enable requesting icaos within envelope.
* Jul 30, 2014 3184 njensen Overrode optional identifiers
*
* Oct 28, 2014 3755 nabowle Implement getAvailableParameters, handle
* empty parameters, fix error message, and
* handle dataless radial radars.
*
* </pre>
*
@ -159,8 +164,8 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements
* Theoretically two radial geometries could have the same name but
* internally different angleData but this is very unlikely and the points
* would be very nearly identical.
*
*
*
*
* @param radarRecord
* a record.
* @return A unique location name
@ -202,6 +207,9 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements
populateRecord(radarRecord);
angleData = radarRecord.getAngleData();
}
if (angleData == null) {
return null;
}
// NOTE: do not set swapXY=true even though it matches the raw
// data better because there is lots of code, especially on the
@ -274,7 +282,7 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements
/**
* Populate a DataSource from the raw data(byte or short) in the provided
* record.
*
*
* @param radarRecord
* @return a DataSource or null if the record is not populated or has no
* grid data.
@ -310,7 +318,8 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements
protected Map<String, RequestConstraint> buildConstraintsFromRequest(
IDataRequest request) {
Map<String, RequestConstraint> constraints = new HashMap<String, RequestConstraint>();
if (request.getParameters() != null) {
if (request.getParameters() != null
&& request.getParameters().length > 0) {
Set<Integer> codes = new HashSet<Integer>();
for (String parameter : request.getParameters()) {
codes.addAll(getProductCodesFromParameter(parameter));
@ -377,8 +386,8 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements
}
}
if (codes.isEmpty()) {
// If any valid produt codes are founf then don't complain.
if (exception == null) {
// If any valid product codes are found then don't complain.
if (exception != null) {
throw new DataRetrievalException(exception);
} else {
throw new DataRetrievalException(parameter
@ -417,27 +426,57 @@ public class RadarGridFactory extends AbstractGridDataPluginFactory implements
return getAvailableLocationNames(request, ICAO);
}
/**
* Get the available parameters for {@link #SUPPORTED_FORMATS supported
* formats}.
*/
@Override
public String[] getAvailableParameters(IDataRequest request) {
DbQueryRequest dbQueryRequest = buildDbQueryRequest(request);
dbQueryRequest.addConstraint(FORMAT, new RequestConstraint(
SUPPORTED_FORMATS));
dbQueryRequest.setDistinct(Boolean.TRUE);
dbQueryRequest.addRequestField(PRODUCT_CODE);
DbQueryResponse dbQueryResponse = this.executeDbQueryRequest(
dbQueryRequest, request.toString());
Set<Integer> productCodes = new TreeSet<Integer>();
for (Map<String, Object> result : dbQueryResponse.getResults()) {
productCodes.add((Integer) result.get(PRODUCT_CODE));
}
Set<String> parameters = new HashSet<String>();
for (RadarInfo info : getRadarInfo()) {
if (productCodes.contains(Integer.valueOf(info.getProductCode()))) {
parameters.add(info.getName());
parameters.add(info.getMnemonic());
parameters.add(Integer.toString(info.getProductCode()));
}
}
return parameters.toArray(new String[0]);
}
@Override
public String[] getOptionalIdentifiers() {
return new String[] { ICAO };
}
/**
*
*
* This is used to convert data from bin,radial format to radial bin format.
*
*
* <pre>
*
*
* SOFTWARE HISTORY
*
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Jan 25, 2013 bsteffen Initial creation
* Feb 14, 2013 1614 bsteffen refactor data access framework to use
* single request.
*
*
* </pre>
*
*
* @author bsteffen
* @version 1.0
*/

View file

@ -38,6 +38,7 @@ import javax.xml.bind.annotation.XmlElement;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.hibernate.annotations.Index;
import org.hibernate.annotations.Type;
import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject;
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
@ -59,6 +60,7 @@ import com.raytheon.uf.common.wmo.WMOHeader;
* 27 May 2012 #647 dgilling Implement getIdentifier/setIdentifier.
* Nov 05, 2013 2499 rjpeter Fix generics.
* May 14, 2014 2536 bclement moved WMO Header to common, removed ISerializableObject
* 10/29/2014 3454 bphillip Fixed text archiver
* </pre>
*
* @author jkorman
@ -108,6 +110,7 @@ public abstract class StdTextProduct extends
/** persistent field */
@Column(nullable = false)
@Lob
@Type(type = "org.hibernate.type.TextType")
@DynamicSerializeElement
@XmlElement
private String product;

View file

@ -15,6 +15,7 @@
##### D. Friedman 08-28-2014 ASM #15658. Add marine watch wording.
##### Qinglu Lin 09-15-2014 ASM #15551. Overhauled inserttorwatches and insertsvrwatches, added until.
##### Qinglu Lin 10-06-2014 ASN #556. Updated secondBullet.
##### Evan Bookbinder 10-24-2014 Fixed UGC > 500 check for Indep Cities in svrl macros to ignore zone codes
####################################################################################################
#*
Mile Marker Test Code
@ -558,6 +559,12 @@ ${closestPoint.roundedDistance} ${units} #direction(${closestPoint.oppositeRound
## useExtremexxx = boolean to use the word EXTREME in the county of State phrase
##################################################################
#macro(headlineLocList $areas $useCentralCounty $useExtremeCounty $useCentralState $useExtremeState)
#### DETERMINE IF WE HAVE A FIPS OR ZONE BASED PRODUCT
#if(${areaSource.equalsIgnoreCase("COUNTY")})
#set($areaFIPS = true)
#else
#set($areaFIPS = false)
#end
#set($countyCount = 0)
#set($countyCounter = 0)
#set($itemCount = 0)
@ -598,7 +605,7 @@ ${closestPoint.roundedDistance} ${units} #direction(${closestPoint.oppositeRound
#end
#set($FIPS = ${area.fips.substring(${fipsIdx})})
#set($intFIPS = 0)
#if(${intFIPS.parseInt($FIPS)} < 500 || ${area.stateabbr} == "TX")
#if(${intFIPS.parseInt($FIPS)} < 500 || ${areaFIPS} == "false" || ${area.stateabbr} == "TX")
#set($countyCounter = $countyCounter + 1)
##INITIALIZE CHECK VARIABLES
#if($countyCount == 0)
@ -788,7 +795,7 @@ ${prevCounty}##
#foreach (${area} in ${areas})
#set($FIPS = ${area.fips.substring(2)})
#set($intFIPS = 0)
#if(${intFIPS.parseInt($FIPS)} >= 500 && ${area.stateabbr} != "TX")
#if(${intFIPS.parseInt($FIPS)} >= 500 && ${area.stateabbr} != "TX" && ${areaFIPS} == "true")
#set($indepCityCount= $indepCityCount + 1)
#if(${indepCityCount} == 1 && ${countyCount} > 0)
#if(${countyCounter} > 1)
@ -1047,7 +1054,7 @@ ${prevZone}##
#set($FIPS = ${area.fips.substring(2)})
#set($intFIPS = 0)
##OUTPUT FOR NORMAL COUNTIES/ZONES
#if((${intFIPS.parseInt($FIPS)} < 500 || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC")
#if((${intFIPS.parseInt($FIPS)} < 500 || ${areaFIPS} == "false" || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC")
#if(${area.partOfArea})
#areaFormat(${area.partOfArea} true true true)##
#end
@ -1151,7 +1158,7 @@ THE FOLLOWING COUNTIES AND PARISHES...
#set($intFIPS = 0)
#set($partOfArea = "")
##OUTPUT FOR NORMAL COUNTIES/ZONES
#if((${intFIPS.parseInt($FIPS)} < 500 || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC")
#if((${intFIPS.parseInt($FIPS)} < 500 || ${areaFIPS} == "false" || ${area.stateabbr} == "TX") && ${area.stateabbr} != "DC")
#if(${area.partOfArea})
#set($partOfArea = "#areaFormat(${area.partOfArea} true true true)")
#end

View file

@ -125,9 +125,7 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor
<bullet bulletName="lawEnforcement" bulletText="Local law enforcement reported" bulletGroup="advSource" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="advSource" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<bullet bulletName="satelliteEstimates" bulletText="Satellite Estimates" bulletGroup="advSource" parseString="SATELLITE ESTIMATES"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="advSource" parseString="GAUGE REPORTS"/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (choose one) *********** " bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="advEvent" bulletDefault="true" parseString="&quot;THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="advEvent" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
@ -180,9 +178,7 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor
<bullet bulletName="public" bulletText="Public reported" bulletGroup="advSource" parseString="THE PUBLIC REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Local law enforcement reported" bulletGroup="advSource" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="advSource" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="advSource" parseString="GAUGE REPORTS"/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (choose one) *********** " bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="advEvent" bulletDefault="true" parseString="&quot;THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="advEvent" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
@ -236,9 +232,7 @@ Must be paired with proper vm code (which are commented out in arealFloodAdvisor
<bullet bulletName="public" bulletText="Public reported" bulletGroup="advSource" parseString="THE PUBLIC REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Local law enforcement reported" bulletGroup="advSource" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="advSource" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="advSource" parseString="GAUGE REPORTS"/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (choose one) *********** " bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="advEvent" bulletDefault="true" parseString="&quot;THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="advEvent" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>

View file

@ -98,7 +98,7 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll
<bullet bulletName="IJ" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="IC" bulletText="Ice jam and rain" bulletGroup="ic" parseString=".IC." showString=".IC."/>
<bullet bulletName="DR" bulletText="Dam Gate Release" bulletGroup="ic" parseString=".DR." showString=".DR."/>
<bullet bulletText="*********** OPTIONAL SPECIFIC TYPE (locked) *********** " bulletType="title"/>
<bullet bulletText="*********** OPTIONAL SPECIFIC TYPE (locked) *********** " bulletType="title"/>
<bullet bulletName="rapidRiver" bulletText="Rapid river rises" bulletGroup="hyCond" parseString="FOR RAPID RIVER RISES" showString="RAPID RIVER RISES"/>
<bullet bulletName="poorDrainage" bulletText="Minor flooding for poor drainage" bulletGroup="hyCond" parseString="MINOR FLOODING OF POOR DRAINAGE AREAS" showString="MINOR FLOODING OF POOR DRAINAGE AREAS"/>
<bullet bulletText="****** CANCELLATION OPTIONS **********" bulletType="title"/>
@ -154,9 +154,7 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll
<bullet bulletName="public" bulletText="Public reported" bulletGroup="advSource" parseString="THE PUBLIC REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Local law enforcement reported" bulletGroup="advSource" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="advSource" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="advSource" parseString="GAUGE REPORTS"/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (choose one) *********** " bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="advEvent" parseString="&quot;THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="advEvent" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
@ -207,9 +205,7 @@ Must be paired with proper vm code (also commented out in arealFloodAdvisoryFoll
<bullet bulletName="public" bulletText="Public reported" bulletGroup="advSource" parseString="THE PUBLIC REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Local law enforcement reported" bulletGroup="advSource" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="advSource" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="advSource" parseString="GAUGE REPORTS"/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (choose one) *********** " bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="advEvent" parseString="&quot;THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="advEvent" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;,&quot;-CAUSING&quot;,&quot;-RAPID RIVER RISES&quot;,&quot;-MINOR FLOODING OF POOR DRAINAGE&quot;"/>

View file

@ -16,6 +16,9 @@
Mike Dangelo 1/23/2014 added IC group to bottom of COR and EXT bullets (it's locked anyway, no need to have it at the top)
Phil Kurimski 06-24-2014 Put types of warnings and IC back at the top (forecasters rely on this when choosing a con statement
to determine what warning they are following up!)
Evan Bookbinder 10-31-2014 Changed "FLOOD WARNING FOR" to "FLOOD WARNING" for all parse and show strings where the flood type
is "Generic"
-->
<warngenConfig>
@ -98,7 +101,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)!
<bulletActionGroup action="NEW" phen="FA" sig="W">
<bullets>
<bullet bulletText="************* TYPE OF WARNING ***********" bulletType="title"/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletDefault="true" bulletGroup="ttt" parseString="FLOOD WARNING FOR..."/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletDefault="true" bulletGroup="ttt" parseString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;"/>
<bullet bulletName="smallstreams" bulletText="Flood warning for small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR SMALL STREAMS" />
<bullet bulletName="urbansmallstreams" bulletText="Flood warning for urban areas and small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR URBAN"/>
<bullet bulletText="****** PRIMARY CAUSE ******" bulletType="title"/>
@ -121,9 +124,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)!
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="source" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<bullet bulletName="satellite" bulletText="Satellite estimates" bulletGroup="source" parseString="SATELLITE ESTIMATES"/>
<bullet bulletName="satelliteGauge" bulletText="Satellite estimates and automated gauges" bulletGroup="source" parseString="SATELLITE AND "/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorms with heavy rainfall" bulletGroup="event" parseString="&quot;THUNDERSTORM&quot;,&quot;-REPORTED FLOODING&quot;"/>
<bullet bulletName="plainRain" bulletText="Heavy rainfall (no thunder)" bulletGroup="event" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;,&quot;-REPORTED FLOODING&quot;"/>
@ -157,7 +158,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)!
<bulletActionGroup action="COR" phen="FA" sig="W">
<bullets>
<bullet bulletText="**** TYPE OF WARNING (locked) ****" bulletType="title"/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="FLOOD WARNING FOR..." showString="FLOOD WARNING FOR..."/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;" showString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;"/>
<bullet bulletName="smallstreams" bulletText="Flood warning for small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR SMALL STREAMS" showString="FLOOD WARNING FOR SMALL STREAMS" />
<bullet bulletName="urbansmallstreams" bulletText="Flood warning for urban areas and small stream" bulletGroup="ttt" parseString="FLOOD WARNING FOR URBAN" showString="FLOOD WARNING FOR URBAN"/>
<bullet bulletText="*** PRIMARY CAUSE *** (locked)" bulletType="title"/>
@ -216,7 +217,7 @@ Must be paired with proper vm code (also commented out in arealFloodWarning.vm)!
<bulletActionGroup action="EXT" phen="FA" sig="W">
<bullets>
<bullet bulletText="**** TYPE OF WARNING (locked) ****" bulletType="title"/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="FLOOD WARNING FOR..." showString="FLOOD WARNING FOR..."/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;" showString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;"/>
<bullet bulletName="smallstreams" bulletText="Flood warning for small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR SMALL STREAMS" showString="FLOOD WARNING FOR SMALL STREAMS" />
<bullet bulletName="urbansmallstreams" bulletText="Flood warning for urban areas and small stream" bulletGroup="ttt" parseString="FLOOD WARNING FOR URBAN" showString="FLOOD WARNING FOR URBAN"/>
<bullet bulletText="*** PRIMARY CAUSE *** (locked)" bulletType="title"/>

View file

@ -13,6 +13,9 @@
Mike Dangelo 1/23/2014 added IC group to bottom of CON bullets (it's locked anyway, no need to have it at the top)
Phil Kurimski 06-24-2014 Put types of warnings and IC back at the top (forecasters rely on this when choosing a con statement
to determine what warning they are following up!)
Evan Bookbinder 10-24-2014 Fixed parseString for EXT for generic flooding
Evan Bookbinder 10-31-2014 Changed "FLOOD WARNING FOR" to "FLOOD WARNING" for all parse and show strings where the flood type
is "Generic"
-->
<warngenConfig>
@ -96,7 +99,7 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning
<bulletActionGroup action="CAN" phen="FA" sig="W">
<bullets>
<bullet bulletText="**** TYPE OF WARNING (locked) ****" bulletType="title"/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="FLOOD WARNING FOR..." showString="FLOOD WARNING FOR..."/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;" showString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;"/>
<bullet bulletName="smallstreams" bulletText="Flood warning for small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR SMALL STREAMS" showString="FLOOD WARNING FOR SMALL STREAMS" />
<bullet bulletName="urbansmallstreams" bulletText="Flood warning for urban areas and small stream" bulletGroup="ttt" parseString="FLOOD WARNING FOR URBAN" showString="FLOOD WARNING FOR URBAN"/>
<bullet bulletText="*** PRIMARY CAUSE *** (locked)" bulletType="title"/>
@ -118,7 +121,7 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning
<bulletActionGroup action="EXP" phen="FA" sig="W">
<bullets>
<bullet bulletText="**** TYPE OF WARNING (locked) ****" bulletType="title"/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="FLOOD WARNING FOR..." showString="FLOOD WARNING FOR..."/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;" showString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;"/>
<bullet bulletName="smallstreams" bulletText="Flood warning for small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR SMALL STREAMS" showString="FLOOD WARNING FOR SMALL STREAMS" />
<bullet bulletName="urbansmallstreams" bulletText="Flood warning for urban areas and small stream" bulletGroup="ttt" parseString="FLOOD WARNING FOR URBAN" showString="FLOOD WARNING FOR URBAN"/>
<bullet bulletText="*** PRIMARY CAUSE *** (locked)" bulletType="title"/>
@ -140,7 +143,7 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning
<bulletActionGroup action="CON" phen="FA" sig="W">
<bullets>
<bullet bulletText="**** TYPE OF WARNING (locked) ****" bulletType="title"/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="FLOOD WARNING FOR..." showString="FLOOD WARNING FOR..."/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;" showString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;"/>
<bullet bulletName="smallstreams" bulletText="Flood warning for small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR SMALL STREAMS" showString="FLOOD WARNING FOR SMALL STREAMS" />
<bullet bulletName="urbansmallstreams" bulletText="Flood warning for urban areas and small stream" bulletGroup="ttt" parseString="FLOOD WARNING FOR URBAN" showString="FLOOD WARNING FOR URBAN"/>
<bullet bulletText="*** PRIMARY CAUSE *** (locked)" bulletType="title"/>
@ -200,7 +203,7 @@ Must be paired with proper vm code (which are commented out in arealFloodWarning
<bulletActionGroup action="COR" phen="FA" sig="W">
<bullets>
<bullet bulletText="**** TYPE OF WARNING (locked) ****" bulletType="title"/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="FLOOD WARNING FOR..." showString="FLOOD WARNING FOR..."/>
<bullet bulletName="generic" bulletText="Flood warning: generic" bulletGroup="ttt" parseString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;" showString="&quot;FLOOD WARNING&quot;,&quot;-WARNING FOR SMALL STREAMS&quot;,&quot;-WARNING FOR URBAN&quot;"/>
<bullet bulletName="smallstreams" bulletText="Flood warning for small streams" bulletGroup="ttt" parseString="FLOOD WARNING FOR SMALL STREAMS" showString="FLOOD WARNING FOR SMALL STREAMS" />
<bullet bulletName="urbansmallstreams" bulletText="Flood warning for urban areas and small stream" bulletGroup="ttt" parseString="FLOOD WARNING FOR URBAN" showString="FLOOD WARNING FOR URBAN"/>
<bullet bulletText="*** PRIMARY CAUSE *** (locked)" bulletType="title"/>

View file

@ -109,9 +109,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarning.vm)!
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="source" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<bullet bulletName="satellite" bulletText="Satellite estimates" bulletGroup="source" parseString="SATELLITE ESTIMATES INDICATED"/>
<bullet bulletName="satelliteGauge" bulletText="Satellite estimates and automated gauges" bulletGroup="source" parseString="SATELLITE ESTIMATES AND RAIN"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="event" bulletDefault="true" parseString="THUNDERSTORM"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="event" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;"/>
@ -159,9 +157,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarning.vm)!
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="source" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<bullet bulletName="satellite" bulletText="Satellite estimates" bulletGroup="source" parseString="SATELLITE ESTIMATES"/>
<bullet bulletName="satelliteGauge" bulletText="Satellite estimates and automated gauges" bulletGroup="source" parseString="SATELLITE AND "/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="event" bulletDefault="true" parseString="THUNDERSTORM"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="event" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;"/>
@ -211,9 +207,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarning.vm)!
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="source" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<bullet bulletName="satellite" bulletText="Satellite estimates" bulletGroup="source" parseString="SATELLITE ESTIMATES INDICATED"/>
<bullet bulletName="satelliteGauge" bulletText="Satellite estimates and automated gauges" bulletGroup="source" parseString="SATELLITE ESTIMATES AND RAIN"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="event" bulletDefault="true" parseString="THUNDERSTORM"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="event" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;"/>

View file

@ -107,9 +107,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarningFollo
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="source" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<bullet bulletName="satellite" bulletText="Satellite estimates" bulletGroup="source" parseString="SATELLITE ESTIMATES INDICATED"/>
<bullet bulletName="satelliteGauge" bulletText="Satellite estimates and automated gauges" bulletGroup="source" parseString="SATELLITE ESTIMATES AND RAIN"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="event" parseString="THUNDERSTORM"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="event" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;"/>
@ -161,9 +159,7 @@ Must be paired with proper vm code (also commented out in flashFloodWarningFollo
<bullet bulletName="emergencyManagement" bulletText="Emergency management reported" bulletGroup="source" parseString="EMERGENCY MANAGEMENT REPORTED"/>
<bullet bulletName="satellite" bulletText="Satellite estimates" bulletGroup="source" parseString="SATELLITE ESTIMATES INDICATED"/>
<bullet bulletName="satelliteGauge" bulletText="Satellite estimates and automated gauges" bulletGroup="source" parseString="SATELLITE AND RAIN"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<!-- GP end -->
<bullet bulletText="*********** EVENT (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="thunder" bulletText="Thunderstorm(s)" bulletGroup="event" parseString="THUNDERSTORM"/>
<bullet bulletName="plainRain" bulletText="Due to only heavy rain" bulletGroup="event" parseString="&quot;HEAVY RAIN&quot;,&quot;-THUNDERSTORM&quot;"/>

View file

@ -17,6 +17,7 @@
Evan Bookbinder 2-18-2014 corrected supercell CTA typo & added DSSEvents & 2014 IBW impacts
Evan Bookbinder 2-27-2014 parseStrings for Tornado Emergency and Default CTAs
Evan Bookbinder 9-5-2014 fixed parseStrings for law enf CTA
Evan Bookbinder 10-24-2014 fixed parseString for SqLn embedded TOR
-->
<!--
@ -210,8 +211,8 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="landspoutTornado" bulletText="LANDSPOUT/VERY WEAK TORNADO" bulletGroup="headline" parseString="IMPACT...EXPECT DAMAGE TO MOBILE HOMES"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="*********** BASIS FOR WARNING (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="dopplerTOR" bulletText="Doppler radar indicated" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-SQUALL LINE&quot;"/>
<bullet bulletName="dopplerSquallTOR" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;SQUALL LINE&quot;"/>
<bullet bulletName="dopplerTOR" bulletText="Doppler radar indicated" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="dopplerSquallTOR" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="confirmedDopplerTOR" bulletText="Confirmed tornado (TDS sig - OBSERVED Tag)" bulletGroup="group1" parseString="SOURCE...RADAR CONFIRMED"/>
<bullet bulletName="spotterTOR" bulletText="Trained weather spotters reported a tornado" bulletGroup="group1" parseString="&quot;SOURCE...WEATHER SPOTTERS&quot;,&quot;-FUNNEL CLOUD&quot;"/>
<bullet bulletName="lawEnforcementTOR" bulletText="Law enforcement reported a tornado" bulletGroup="group1" parseString="SOURCE...LAW ENFORCEMENT"/>
@ -245,7 +246,7 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="baseballHail" bulletText="Baseball size hail (2 3/4&quot;)" bulletGroup="group2" parseString="2.75IN"/>
<bullet bulletName="threeinchHail" bulletText="Three inch hail (3&quot;)" bulletGroup="group2" parseString="3.00IN"/>
<bullet bulletName="grapefruitHail" bulletText="Grapefruit size hail (4&quot;)" bulletGroup="group2" parseString="4.00IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="toggle3" parseString="4.25IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="group2" parseString="4.25IN"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="******** ADDITIONAL REPORTS ********" bulletType="title"/>
<bullet bulletName="addlTorInfo" bulletText="Select to include additional tornado/damage information..."/>
@ -299,7 +300,7 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="baseballHail" bulletText="Baseball size hail (2 3/4&quot;)" bulletGroup="radioset3" parseString="2.75IN"/>
<bullet bulletName="threeinchHail" bulletText="Three inch hail (3&quot;)" bulletGroup="radioset3" parseString="3.00IN"/>
<bullet bulletName="grapefruitHail" bulletText="Grapefruit size hail (4&quot;)" bulletGroup="radioset3" parseString="4.00IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="toggle3" parseString="4.25IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="radioset3" parseString="4.25IN"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="******** TORNADO TAG ********" bulletType="title"/>
<bullet bulletName="svrTorTag" bulletText="SELECT FOR TORNADO...POSSIBLE TAG" parseString="TORNADO...POSSIBLE"/>
@ -347,8 +348,8 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="landspoutTornado" bulletText="LANDSPOUT/VERY WEAK TORNADO" bulletGroup="headline" parseString="IMPACT...EXPECT DAMAGE TO MOBILE HOMES"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="*********** BASIS FOR WARNING (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="dopplerTOR" bulletText="Doppler radar indicated" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-SQUALL LINE&quot;"/>
<bullet bulletName="dopplerSquallTOR" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;SQUALL LINE&quot;"/>
<bullet bulletName="dopplerTOR" bulletText="Doppler radar indicated" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="dopplerSquallTOR" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="confirmedDopplerTOR" bulletText="Confirmed tornado (TDS sig - OBSERVED Tag)" bulletGroup="group1" parseString="SOURCE...RADAR CONFIRMED"/>
<bullet bulletName="spotterTOR" bulletText="Trained weather spotters reported a tornado" bulletGroup="group1" parseString="&quot;SOURCE...WEATHER SPOTTERS&quot;,&quot;-FUNNEL CLOUD&quot;"/>
<bullet bulletName="lawEnforcementTOR" bulletText="Law enforcement reported a tornado" bulletGroup="group1" parseString="SOURCE...LAW ENFORCEMENT"/>
@ -382,7 +383,7 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="baseballHail" bulletText="Baseball size hail (2 3/4&quot;)" bulletGroup="group2" parseString="2.75IN"/>
<bullet bulletName="threeinchHail" bulletText="Three inch hail (3&quot;)" bulletGroup="group2" parseString="3.00IN"/>
<bullet bulletName="grapefruitHail" bulletText="Grapefruit size hail (4&quot;)" bulletGroup="group2" parseString="4.00IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="toggle3" parseString="4.25IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="group2" parseString="4.25IN"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="******** ADDITIONAL REPORTS ********" bulletType="title"/>
<bullet bulletName="addlTorInfo" bulletText="Select to include additional tornado/damage information..."/>
@ -435,7 +436,7 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="baseballHail" bulletText="Baseball size hail (2 3/4&quot;)" bulletGroup="radioset3" parseString="2.75IN"/>
<bullet bulletName="threeinchHail" bulletText="Three inch hail (3&quot;)" bulletGroup="radioset3" parseString="3.00IN"/>
<bullet bulletName="grapefruitHail" bulletText="Grapefruit size hail (4&quot;)" bulletGroup="radioset3" parseString="4.00IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="toggle3" parseString="4.25IN"/>
<bullet bulletName="softballHail" bulletText="Softball size hail (4 1/4&quot;)" bulletGroup="radioset3" parseString="4.25IN"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="******** TORNADO TAG ********" bulletType="title"/>
<bullet bulletName="svrTorTag" bulletText="SELECT FOR TORNADO...POSSIBLE TAG" parseString="TORNADO...POSSIBLE"/>

View file

@ -13,6 +13,8 @@
Mike Dangelo 1/23/2014 changed parseString for defaultCTAs to match iTW.vm statements,
removed cta1 bulletGroup from COR to ensure it is selected when doing a COR for a torEMER
Evan Bookbinder 2-18-2014 added dssEvents hook, 2014 IBW impacts
Evan Bookbinder 10-24-2014 Fixed parse strings for Base TOR option for COR
Fixed parseString for SqLn embedded TOR for COR
-->
<warngenConfig>
@ -82,12 +84,12 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletText="*********** TYPE OF WARNING **********" bulletType="title"/>
<bullet bulletName="torEmergency" bulletText="TORNADO EMERGENCY/CATASTROPHIC TORNADO" bulletGroup="headline" parseString="TORNADO EMERGENCY"/>
<bullet bulletName="considerableTornado" bulletText="CONSIDERABLE TORNADO TAG" bulletGroup="headline" parseString="TORNADO DAMAGE THREAT...CONSIDERABLE"/>
<bullet bulletName="baseTornado" bulletText="BASE TORNADO WARNING" bulletGroup="headline" bulletDefault="true" parseString="IMPACT...MOBILE HOMES WILL BE DAMAGED OR DESTROYED"/>
<bullet bulletName="baseTornado" bulletText="BASE TORNADO WARNING" bulletGroup="headline" bulletDefault="true" parseString="IMPACT...FLYING DEBRIS WILL BE DANGEROUS"/>
<bullet bulletName="landspoutTornado" bulletText="LANDSPOUT/VERY WEAK TORNADO" bulletGroup="headline" parseString="IMPACT...EXPECT DAMAGE TO MOBILE HOMES"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="*********** BASIS FOR WARNING (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="doppler" bulletText="Doppler radar indicated" bulletGroup="group1" bulletDefault="true" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-SQUALL LINE&quot;"/>
<bullet bulletName="dopplerSquall" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;SQUALL LINE&quot;"/>
<bullet bulletName="doppler" bulletText="Doppler radar indicated" bulletGroup="group1" bulletDefault="true" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="dopplerSquall" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="confirmedDoppler" bulletText="Confirmed tornado (TDS sig - OBSERVED Tag)" bulletGroup="group1" parseString="SOURCE...RADAR CONFIRMED"/>
<bullet bulletName="spotter" bulletText="Trained weather spotters reported a tornado" bulletGroup="group1" parseString="&quot;SOURCE...WEATHER SPOTTERS&quot;,&quot;-FUNNEL CLOUD&quot;"/>
<bullet bulletName="lawEnforcement" bulletText="Law enforcement reported a tornado" bulletGroup="group1" parseString="SOURCE...LAW ENFORCEMENT"/>
@ -154,12 +156,12 @@ do not have mobile homes. If you wish to switch defaults or provide a single opt
<bullet bulletText="*********** TYPE OF WARNING **********" bulletType="title"/>
<bullet bulletName="torEmergency" bulletText="TORNADO EMERGENCY/CATASTROPHIC TORNADO" bulletGroup="headline" parseString="TORNADO EMERGENCY"/>
<bullet bulletName="considerableTornado" bulletText="CONSIDERABLE TORNADO TAG" bulletGroup="headline" parseString="TORNADO DAMAGE THREAT...CONSIDERABLE"/>
<bullet bulletName="baseTornado" bulletText="BASE TORNADO WARNING" bulletGroup="headline" bulletDefault="true" parseString="IMPACT...MOBILE HOMES WILL BE DAMAGED OR DESTROYED"/>
<bullet bulletName="baseTornado" bulletText="BASE TORNADO WARNING" bulletGroup="headline" bulletDefault="true" parseString="IMPACT...FLYING DEBRIS WILL BE DANGEROUS"/>
<bullet bulletName="landspoutTornado" bulletText="LANDSPOUT/VERY WEAK TORNADO" bulletGroup="headline" parseString="IMPACT...EXPECT DAMAGE TO MOBILE HOMES"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="*********** BASIS FOR WARNING (CHOOSE 1) **********" bulletType="title"/>
<bullet bulletName="doppler" bulletText="Doppler radar indicated" bulletGroup="group1" bulletDefault="true" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-SQUALL LINE&quot;"/>
<bullet bulletName="dopplerSquall" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;SQUALL LINE&quot;"/>
<bullet bulletName="doppler" bulletText="Doppler radar indicated" bulletGroup="group1" bulletDefault="true" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;-PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="dopplerSquall" bulletText="Squall line w/ embedded tornadoes" bulletGroup="group1" parseString="&quot;SOURCE...RADAR INDICATED&quot;,&quot;PRODUCING BOTH TORNADOES AND EXTENSIVE STRAIGHT LINE&quot;"/>
<bullet bulletName="confirmedDoppler" bulletText="Confirmed tornado (TDS sig - OBSERVED Tag)" bulletGroup="group1" parseString="SOURCE...RADAR CONFIRMED"/>
<bullet bulletName="spotter" bulletText="Trained weather spotters reported a tornado" bulletGroup="group1" parseString="&quot;SOURCE...WEATHER SPOTTERS&quot;,&quot;-FUNNEL CLOUD&quot;"/>
<bullet bulletName="lawEnforcement" bulletText="Law enforcement reported a tornado" bulletGroup="group1" parseString="SOURCE...LAW ENFORCEMENT"/>

View file

@ -15,7 +15,10 @@
Modified Evan Bookbinder 06-26-2013 Added "U" Unknown severity
Modified Phil Kurimski 09-19-2013 added geospatialConfig.xml
Modified Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1
Mike Dangelo - 1/23/2014 multiple changes to CTAs for FFW EMER
Mike Dangelo - 1/23/2014 multiple changes to CTAs for FFW EMER
Evan Bookbinder 10/24/2014 commented out AK additions from baseline and
corrected their bulletGroup="" settings
Mike Rega 10/27/2014 fixed EMER floodSeverity=3 error
-->
<!-- INCLUDE ALL GEOSPTATIAL INFORMATION FOR THIS PRODUCT
@ -108,13 +111,10 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="glacier" bulletText="Glacier-dammed lake outburst" bulletGroup="ic" parseString=".GO." showString=".GO."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="rain" bulletText="Rapid snowmelt (with or without rain)" bulletGroup="ic" parseString=".RS." showString=".RS."/>
<!-- modified by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="VOLCANIC INDUCED SNOWMELT" showString=".SM."/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="VOLCANIC INDUCED DEBRIS FLOW" showString=".SM."/>
<!-- GP end -->
<!-- following two lines from 13.5.2 baseline, may need the more complex parseString added to the GP changes above -->
<!-- <bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;"/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;"/> -->
Alaska end -->
<bullet bulletText="****** REPORTED BY (choose 1) ******" bulletType="title"/>
<bullet bulletName="county" bulletText="County dispatch" bulletGroup="reportedBy" bulletDefault="true" parseString="COUNTY DISPATCH REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Law enforcement" bulletGroup="reportedBy" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
@ -122,12 +122,12 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="damop" bulletText="Dam operator" bulletGroup="reportedBy" parseString="DAM OPERATORS REPORTED"/>
<bullet bulletName="bureau" bulletText="Bureau of reclamation" bulletGroup="reportedBy" parseString="BUREAU OF RECLAMATION REPORTED"/>
<bullet bulletName="public" bulletText="Public" bulletGroup="reportedBy" parseString="THE PUBLIC REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="source" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="source" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="source" parseString="CASCADES VOLCANO OBSERVATORY "/>
<!-- GP end -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="reportedBy" parseString="GAUGE REPORTS "/>
<!-- Uncomment for Alaska
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="reportedBy" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="reportedBy" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="reportedBy" parseString="CASCADES VOLCANO OBSERVATORY "/>
Alaska end -->
<bullet bulletText="************ (OPTIONAL) LOCATIONS IMPACTED **************" bulletType="title"/>
<!-- <bullet bulletName="pathcast" bulletText="Select for pathcast" bulletGroup="pcast" parseString="WILL BE NEAR..."/> -->
<bullet bulletName="listofcities" bulletText="Select for a list of cities" bulletGroup="pcast"/>
@ -175,7 +175,7 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullets>
<bullet bulletText="***CORRECTED PRODUCT. CLICK CREATE TEXT***" bulletType="title"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" bulletGroup="ffwEMER" floodSeverity="3" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" bulletGroup="ffwEMER" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletText="******** FLOOD SEVERITY (choose 1) *******" bulletType="title"/>
<bullet bulletName="sevUnk" bulletText="Unknown" bulletGroup="floodSeverity" floodSeverity="U"/>
<bullet bulletName="sev1" bulletText="Minor flood" bulletGroup="floodSeverity" floodSeverity="1"/>
@ -190,13 +190,10 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="glacier" bulletText="Glacial-dammed lake outburst" bulletGroup="ic" parseString=".GO." showString=".GO."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="rain" bulletText="Rapid rain induced snowmelt" bulletGroup="ic" parseString=".RS." showString=".RS."/>
<!-- modified by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="VOLCANIC INDUCED SNOWMELT" showString=".SM."/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="VOLCANIC INDUCED DEBRIS FLOW" showString=".SM."/>
<!-- GP end -->
<!-- following two lines from 13.5.2 baseline, may need the more complex parseString added to the GP changes above -->
<!-- <bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;"/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;"/> -->
Alaska end -->
<bullet bulletText="****** REPORTED BY (choose 1) ******" bulletType="title"/>
<bullet bulletName="county" bulletText="County dispatch" bulletGroup="reportedBy" bulletDefault="true" parseString="COUNTY DISPATCH REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Law enforcement" bulletGroup="reportedBy" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
@ -204,12 +201,12 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="damop" bulletText="Dam operator" bulletGroup="reportedBy" parseString="DAM OPERATORS REPORTED"/>
<bullet bulletName="bureau" bulletText="Bureau of reclamation" bulletGroup="reportedBy" parseString="BUREAU OF RECLAMATION REPORTED"/>
<bullet bulletName="public" bulletText="The public" bulletGroup="reportedBy" parseString="THE PUBLIC REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="source" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="source" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="source" parseString="CASCADES VOLCANO OBSERVATORY "/>
<!-- GP end -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="reportedBy" parseString="GAUGE REPORTS "/>
<!-- Uncomment for Alaska
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="reportedBy" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="reportedBy" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="reportedBy" parseString="CASCADES VOLCANO OBSERVATORY "/>
Alaska end -->
<!-- end all call to action bullets with "CTA" ex: "obviousNameCTA" -->
<bullet bulletText="************ (OPTIONAL) LOCATIONS IMPACTED **************" bulletType="title"/>
<!-- <bullet bulletName="pathcast" bulletText="Select for pathcast" bulletGroup="pcast" parseString="WILL BE NEAR..."/> -->
@ -256,7 +253,7 @@ turned on unless the corresponding .vm file is turned on in a given template's .
</bulletActionGroup>
<bulletActionGroup action="EXT" phen="FF" sig="W">
<bullets>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" floodSeverity="3" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletText="******** FLOOD SEVERITY (choose 1) *******" bulletType="title"/>
<bullet bulletName="sevUnk" bulletText="Unknown" bulletGroup="floodSeverity" floodSeverity="U"/>
<bullet bulletName="sev1" bulletText="Minor flood" bulletGroup="floodSeverity" floodSeverity="1"/>
@ -271,13 +268,10 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="glacier" bulletText="Glacial-dammed lake outburst" bulletGroup="ic" parseString=".GO." showString=".GO."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="rain" bulletText="Rapid rain induced snowmelt" bulletGroup="ic" parseString=".RS." showString=".RS."/>
<!-- modified by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="VOLCANIC INDUCED SNOWMELT" showString=".SM."/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="VOLCANIC INDUCED DEBRIS FLOW" showString=".SM."/>
<!-- GP end -->
<!-- following two lines from 13.5.2 baseline, may need the more complex parseString added to the GP changes above -->
<!-- <bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;"/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;"/> -->
Alaska end -->
<bullet bulletText="****** REPORTED BY (choose 1) ******" bulletType="title"/>
<bullet bulletName="county" bulletText="County dispatch" bulletGroup="reportedBy" bulletDefault="true" parseString="COUNTY DISPATCH REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Law enforcement" bulletGroup="reportedBy" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
@ -285,12 +279,12 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="damop" bulletText="Dam operator" bulletGroup="reportedBy" parseString="DAM OPERATORS REPORTED"/>
<bullet bulletName="bureau" bulletText="Bureau of reclamation" bulletGroup="reportedBy" parseString="BUREAU OF RECLAMATION REPORTED"/>
<bullet bulletName="public" bulletText="The public" bulletGroup="reportedBy" parseString="THE PUBLIC REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="source" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="source" parseString="CASCADES VOLCANO OBSERVATORY "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="source" parseString="ALASKA VOLCANO OBSERVATORY "/>
<!-- GP end -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="reportedBy" parseString="GAUGE REPORTS "/>
<!-- Uncomment for Alaska
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="reportedBy" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="reportedBy" parseString="CASCADES VOLCANO OBSERVATORY "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="reportedBy" parseString="ALASKA VOLCANO OBSERVATORY "/>
Alaska end -->
<!-- end all call to action bullets with "CTA" ex: "obviousNameCTA" -->
<bullet bulletText="************ (OPTIONAL) LOCATIONS IMPACTED **************" bulletType="title"/>
<!-- <bullet bulletName="pathcast" bulletText="Select for pathcast" bulletGroup="pcast" parseString="WILL BE NEAR..."/> -->

View file

@ -11,12 +11,24 @@
## Phil Kurimski -- SEP 17 2013 FFW Emerg ##
## Mike Rega -- JAN 18 2014 14.2.1 ##
## added Alaska GP changes ##
#####################################################
## Evan Bookbinder -- Oct 24 2014 Fixed floodSeverity code
##########################################################
##
#parse("config.vm")
#set($headline = "")
## set reportType2 to a default value in case nothing is selected for site specific
#set($reportType2 = "THE FAILURE OF")
#if(${list.contains(${bullets}, "sev3")} || ${list.contains(${bullets}, "ffwEmergency")})
#set($sev = "3")
#elseif(${list.contains(${bullets}, "sev1")})
#set($sev = "1")
#elseif(${list.contains(${bullets}, "sev2")})
#set($sev = "2")
#elseif(${list.contains(${bullets}, "sevUnk")})
#set($sev = "U")
#else
#set($sev = "0")
#end
#####################################################################
## set variables to be used in site specific dam break selections
#####################################################################
@ -44,7 +56,6 @@
#set($headline = "FOR A GLACIAL DAMMED LAKE OUTBURST ")
#set($reportType1 = "A GLACIER DAMMED LAKE AT !** **! IS RAPIDLY RELEASING LARGE QUANTITIES OF IMPOUNDED WATER RESULTING IN FLASH FLOODING !** **!")
### GP end
### #set($reportType1 = "A GLACIER AT !** **! HAS MELTED...RELEASING LARGE QUANTITIES OF IMPOUNDED WATER AND CAUSING FLASH FLOODING !** **!")
#elseif(${list.contains(${bullets}, "icejam")})
#set($ic = "IJ")
#set($hycType = "ICE JAM FLOODING")
@ -139,7 +150,7 @@ ${dateUtil.format(${now}, ${timeFormat.header}, ${localtimezone})}
${ugcline}
/${productClass}.${action}.${vtecOffice}.FF.W.${etn}.000000T0000Z-${dateUtil.format(${expire}, ${timeFormat.ymdthmz}, 15)}/
/00000.${floodseverity}.${ic}.000000T0000Z.000000T0000Z.000000T0000Z.OO/
/00000.${sev}.${ic}.000000T0000Z.000000T0000Z.000000T0000Z.OO/
#foreach (${area} in ${areas})
${area.name}##
#if(${includeStateAbbreviation}==true)
@ -228,10 +239,10 @@ THIS IS A TEST MESSAGE.##
#if(${list.contains(${bullets}, "public")})
#set($report = "THE PUBLIC REPORTED ${reportType1}")
#end
### added by GP
#if(${list.contains(${bullets}, "onlyGauge")})
#set($report = "GAUGES INDICATED ${reportType1}")
#end
### added by GP
#if(${list.contains(${bullets}, "CAP")})
#set($report = "THE CIVIL AIR PATROL REPORTED ${reportType1}")
#end
@ -497,14 +508,20 @@ THIS IS A TEST MESSAGE.##
#if(${list.contains(${bullets}, "public")})
#set($report = "THE PUBLIC REPORTED ${reportType1}")
#end
### added by GP
#if(${list.contains(${bullets}, "onlyGauge")})
#set($report = "GAUGES INDICATED ${reportType1}")
#end
## added by GP
#if(${list.contains(${bullets}, "CAP")})
#set($report = "THE CIVIL AIR PATROL REPORTED ${reportType1}")
#end
### GP end
#if(${list.contains(${bullets}, "alaskaVoc")})
#set($report = "THE ALASKA VOLCANO OBSERVATORY REPORTED ${reportType1}")
#end
#if(${list.contains(${bullets}, "cascadeVoc")})
#set($report = "THE CASCADES VOLCANO OBSERVATORY REPORTED ${reportType1}")
#end
## GP end
## Storm current location description
#if(${productClass}=="T")
@ -740,14 +757,20 @@ THIS IS A TEST MESSAGE.##
#if(${list.contains(${bullets}, "public")})
#set($report = "THE PUBLIC REPORTED ${reportType1}")
#end
### added by GP
#if(${list.contains(${bullets}, "onlyGauge")})
#set($report = "GAUGES INDICATED ${reportType1}")
#end
## added by GP
#if(${list.contains(${bullets}, "CAP")})
#set($report = "THE CIVIL AIR PATROL REPORTED ${reportType1}")
#end
### GP end
#if(${list.contains(${bullets}, "alaskaVoc")})
#set($report = "THE ALASKA VOLCANO OBSERVATORY REPORTED ${reportType1}")
#end
#if(${list.contains(${bullets}, "cascadeVoc")})
#set($report = "THE CASCADES VOLCANO OBSERVATORY REPORTED ${reportType1}")
#end
## GP end
## Storm current location description
#if(${productClass}=="T")

View file

@ -11,6 +11,10 @@
Modified Phil Kurimski 09-19-2013 added geospatialConfig.xml
Modified Mike Rega 01-18-2014 added Alaska GP changes for 14.2.1
Modified Phil Kurimski 06-24-2014 fixed Ice Jam Parse String error 14.2.2-9
Modified Evan Bookbinder 10-24-2014 commented out AK additions from baseline and
corrected their bulletGroup="" settings
Added floodSeverity bullets
Modified Mike Rega 10-27-2014 fixed EMER floodSeverity=3 error
-->
<warngenConfig>
@ -97,13 +101,10 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="glacier" bulletText="Glacial-dammed lake outburst" bulletGroup="ic" parseString=".GO." showString=".GO."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="rain" bulletText="Rapid rain induced snowmelt" bulletGroup="ic" parseString=".RS." showString=".RS."/>
<!-- modified by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="VOLCANIC INDUCED SNOWMELT" showString=".SM."/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="VOLCANIC INDUCED DEBRIS FLOW" showString=".SM."/>
<!-- GP end -->
<!-- next two lines from 13.5.2 baseline - may need the more complex parseString for the GP changes above -->
<!-- <bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;"/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;"/> -->
Alaska end -->
<bullet bulletName="siteimminent" bulletText="Dam break - site specific (pick below) - imminent failure" bulletGroup="damic" parseString="THE IMMINENT FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletName="sitefailed" bulletText="Dam break - site specific (pick below) - failure has occurred" bulletGroup="damic" parseString="THE FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletText="" bulletType="title"/>
@ -147,13 +148,10 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="glacier" bulletText="Glacial-dammed lake outburst" bulletGroup="ic" parseString=".GO." showString=".GO."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="rain" bulletText="Rapid rain induced snowmelt" bulletGroup="ic" parseString=".RS." showString=".RS."/>
<!-- modified by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="VOLCANIC INDUCED SNOWMELT" showString=".SM."/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="VOLCANIC INDUCED DEBRIS FLOW" showString=".SM."/>
<!-- GP end -->
<!-- next two lines from 13.5.2 baseline - may need the more complex parseString for the GP changes above -->
<!-- <bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;"/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;" showString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;"/> -->
Alaska end -->
<bullet bulletName="siteimminent" bulletText="Dam break - site specific (pick below) - imminent failure" bulletGroup="damic" parseString="THE IMMINENT FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletName="sitefailed" bulletText="Dam break - site specific (pick below) - failure has occurred" bulletGroup="damic" parseString="THE FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletText="" bulletType="title"/>
@ -185,7 +183,12 @@ turned on unless the corresponding .vm file is turned on in a given template's .
</bulletActionGroup>
<bulletActionGroup action="CON" phen="FF" sig="W">
<bullets>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" floodSeverity="3" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletText="******** FLOOD SEVERITY (choose 1) *******" bulletType="title"/>
<bullet bulletName="sevUnk" bulletText="Unknown" bulletGroup="floodSeverity" floodSeverity="U" parseString=".U."/>
<bullet bulletName="sev1" bulletText="Minor flood" bulletGroup="floodSeverity" floodSeverity="1" parseString=".1."/>
<bullet bulletName="sev2" bulletText="Moderate flood" bulletGroup="floodSeverity" floodSeverity="2" parseString=".2."/>
<bullet bulletName="sev3" bulletText="Major flood" bulletGroup="floodSeverity" floodSeverity="3" parseString=".3."/>
<bullet bulletText="******** PRIMARY CAUSE (choose 1) *******" bulletType="title"/>
<bullet bulletName="dam" bulletText="Dam failure - generic" bulletGroup="damic" parseString="A DAM FAILURE" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletName="levee" bulletText="Levee failure" bulletGroup="ic" parseString="A LEVEE FAILURE" showString="LEVEE FAILURE"/>
@ -193,16 +196,13 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="glacier" bulletText="Glacial-dammed lake outburst" bulletGroup="ic" parseString=".GO." showString=".GO."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="rain" bulletText="Rapid rain induced snowmelt" bulletGroup="ic" parseString="EXTREMELY RAPID RAIN SNOWMELT" showString=".RS."/>
<!-- modified by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="VOLCANIC INDUCED SNOWMELT" showString=".SM."/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="VOLCANIC INDUCED DEBRIS FLOW" showString=".SM."/>
<!-- GP end -->
<!-- next two lines from 13.5.2 baseline - may need the more complex parseString for the GP changes above -->
<!-- <bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;" showString="&quot;VOLCANIC&quot;,&quot;-TORRENT&quot;"/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;" showString="&quot;VOLCANIC&quot;,&quot;TORRENT&quot;"/> -->
Alaska end -->
<bullet bulletName="siteimminent" bulletText="Dam break - site specific (pick below) - imminent failure" bulletGroup="damic" parseString="THE IMMINENT FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletName="sitefailed" bulletText="Dam break - site specific (pick below) - failure has occurred" bulletGroup="damic" parseString="THE FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="****** REPORTED BY (choose 1) ******" bulletType="title"/>
<bullet bulletName="county" bulletText="County dispatch" bulletGroup="reportedBy" parseString="COUNTY DISPATCH REPORTED"/>
<bullet bulletName="lawEnforcement" bulletText="Law enforcement" bulletGroup="reportedBy" parseString="LOCAL LAW ENFORCEMENT REPORTED"/>
@ -210,12 +210,12 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="damop" bulletText="Dam operator" bulletGroup="reportedBy" parseString="DAM OPERATORS REPORTED"/>
<bullet bulletName="bureau" bulletText="Bureau of reclamation" bulletGroup="reportedBy" parseString="BUREAU OF RECLAMATION REPORTED"/>
<bullet bulletName="public" bulletText="The public" bulletGroup="reportedBy" parseString="THE PUBLIC REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="source" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="source" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="source" parseString="CASCADES VOLCANO OBSERVATORY "/>
<!-- GP end -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="reportedBy" parseString="GAUGE REPORTS "/>
<!-- Uncomment for Alaska
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="reportedBy" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="reportedBy" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="reportedBy" parseString="CASCADES VOLCANO OBSERVATORY "/>
Alaska end -->
<bullet bulletText="************ (OPTIONAL) LOCATIONS IMPACTED **************" bulletType="title"/>
<!-- <bullet bulletName="pathcast" bulletText="Select for pathcast" bulletGroup="pcast" parseString="WILL BE NEAR..."/> -->
<bullet bulletName="listofcities" bulletText="Select for a list of cities" bulletGroup="pcast" parseString="&quot;LOCATIONS&quot;,&quot;INCLUDE...&quot;"/>
@ -234,11 +234,11 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="stayAwayCTA" bulletText="Stay away or be swept away" parseString="STAY AWAY OR BE SWEPT AWAY"/>
<bullet bulletName="arroyosCTA" bulletText="Arroyos..." parseString="ARROYOS...STREAMS AND RIVERS CAN BECOME RAGING KILLER CURRENTS"/>
<bullet bulletName="burnAreasCTA" bulletText="Burn Areas..." parseString="MOVE AWAY FROM RECENTLY BURNED AREAS"/>
<!-- added by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcanicFloodCTA" bulletText="Volanic Snowmelt..." parseString="VOLCANIC SNOWMELT"/>
<bullet bulletName="volcanicLaharCTA" bulletText="Volanic Lahar..." parseString="VOLCANIC LAHARS"/>
<bullet bulletName="glacierOutburstCTA" bulletText="Glacier Outburst..." parseString="STAY AWAY FROM"/>
<!-- GP end -->
Alaska end -->
<bullet bulletName="reportFloodingCTA" bulletText="Report flooding to local law enforcement" parseString="PLEASE REPORT TO YOUR LOCAL LAW ENFORCEMENT AGENCY WHEN YOU CAN"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="************************************************************" bulletType="title"/>
@ -274,21 +274,23 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullets>
<bullet bulletText="***CORRECTED PRODUCT. CLICK CREATE TEXT***" bulletType="title"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" floodSeverity="3" bulletGroup="ffwEMER" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletName="ffwEmergency" bulletText="**SELECT FOR FLASH FLOOD EMERGENCY**" bulletGroup="ffwEMER" parseString="FLASH FLOOD EMERGENCY"/>
<bullet bulletText="******** FLOOD SEVERITY (choose 1) *******" bulletType="title"/>
<bullet bulletName="sevUnk" bulletText="Unknown" bulletGroup="floodSeverity" floodSeverity="U" parseString=".U."/>
<bullet bulletName="sev1" bulletText="Minor flood" bulletGroup="floodSeverity" floodSeverity="1" parseString=".1."/>
<bullet bulletName="sev2" bulletText="Moderate flood" bulletGroup="floodSeverity" floodSeverity="2" parseString=".2."/>
<bullet bulletName="sev3" bulletText="Major flood" bulletGroup="floodSeverity" floodSeverity="3" parseString=".3."/>
<bullet bulletText="******** PRIMARY CAUSE (choose 1) *******" bulletType="title"/>
<bullet bulletName="dam" bulletText="Dam failure - generic" bulletGroup="damic" parseString="A DAM FAILURE" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletName="levee" bulletText="Levee failure" bulletGroup="ic" parseString="A LEVEE FAILURE" showString="LEVEE FAILURE"/>
<bullet bulletName="floodgate" bulletText="Floodgate opening" bulletGroup="ic" parseString="FLOODGATE RELEASE" showString="FLOODGATE RELEASE"/>
<bullet bulletName="glacier" bulletText="Glacial-dammed lake outburst" bulletGroup="ic" parseString=".GO." showString=".GO."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString="ICE JAM FLOODING" showString=".IJ."/>
<bullet bulletName="icejam" bulletText="Ice jam" bulletGroup="ic" parseString=".IJ." showString=".IJ."/>
<bullet bulletName="rain" bulletText="Rapid rain induced snowmelt" bulletGroup="ic" parseString="EXTREMELY RAPID RAIN SNOWMELT" showString=".RS."/>
<!-- modified by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="VOLCANIC INDUCED SNOWMELT" showString=".SM."/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="VOLCANIC INDUCED DEBRIS FLOW" showString=".SM."/>
<!-- GP end -->
<!-- next two lines from 13.5.2 baseline - may need the more complex parseString for the GP changes above -->
<!-- <bullet bulletName="volcano" bulletText="Volcano induced snowmelt" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;-MELTING OF SNOW AND ICE&quot;,&quot;-TORRENT&quot;" showString="&quot;VOLCANIC&quot;,&quot;-TORRENT&quot;"/>
<bullet bulletName="volcanoLahar" bulletText="Volcano induced lahar/debris flow" bulletGroup="ic" parseString="&quot;VOLCANIC SNOWMELT&quot;,&quot;MELTING OF SNOW AND ICE&quot;,&quot;TORRENT&quot;" showString="&quot;VOLCANIC&quot;,&quot;TORRENT&quot;"/> -->
Alaska end -->
<bullet bulletName="siteimminent" bulletText="Dam break - site specific (pick below) - imminent failure" bulletGroup="damic" parseString="THE IMMINENT FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletName="sitefailed" bulletText="Dam break - site specific (pick below) - failure has occurred" bulletGroup="damic" parseString="THE FAILURE OF" showString="&quot;DAM&quot;,&quot;.DM.&quot;,&quot;-LEVEE&quot;"/>
<bullet bulletText="" bulletType="title"/>
@ -299,12 +301,12 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="damop" bulletText="Dam operator" bulletGroup="reportedBy" parseString="DAM OPERATORS REPORTED"/>
<bullet bulletName="bureau" bulletText="Bureau of reclamation" bulletGroup="reportedBy" parseString="BUREAU OF RECLAMATION REPORTED"/>
<bullet bulletName="public" bulletText="The public" bulletGroup="reportedBy" parseString="THE PUBLIC REPORTED"/>
<!-- added by GP -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="source" parseString="GAUGE REPORTS "/>
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="source" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="source" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="source" parseString="CASCADES VOLCANO OBSERVATORY "/>
<!-- GP end -->
<bullet bulletName="onlyGauge" bulletText="Gauge reports" bulletGroup="reportedBy" parseString="GAUGE REPORTS "/>
<!-- Uncomment for Alaska
<bullet bulletName="CAP" bulletText="Civil Air Patrol" bulletGroup="reportedBy" parseString="CIVIL AIR PATROL "/>
<bullet bulletName="alaskaVoc" bulletText="Alaska Volcano Observatory" bulletGroup="reportedBy" parseString="ALASKA VOLCANO OBSERVATORY "/>
<bullet bulletName="cascadeVoc" bulletText="Cascades Volcano Observatory" bulletGroup="reportedBy" parseString="CASCADES VOLCANO OBSERVATORY "/>
Alaska end -->
<bullet bulletText="************ (OPTIONAL) LOCATIONS IMPACTED **************" bulletType="title"/>
<!-- <bullet bulletName="pathcast" bulletText="Select for pathcast" bulletGroup="pcast" parseString="WILL BE NEAR..."/> -->
<bullet bulletName="listofcities" bulletText="Select for a list of cities" bulletGroup="pcast" parseString="&quot;LOCATIONS&quot;,&quot;INCLUDE...&quot;"/>
@ -323,11 +325,11 @@ turned on unless the corresponding .vm file is turned on in a given template's .
<bullet bulletName="stayAwayCTA" bulletText="Stay away or be swept away" parseString="STAY AWAY OR BE SWEPT AWAY"/>
<bullet bulletName="arroyosCTA" bulletText="Arroyos..." parseString="ARROYOS...STREAMS AND RIVERS CAN BECOME RAGING KILLER CURRENTS"/>
<bullet bulletName="burnAreasCTA" bulletText="Burn Areas..." parseString="MOVE AWAY FROM RECENTLY BURNED AREAS"/>
<!-- added by GP -->
<!-- Uncomment for Alaska
<bullet bulletName="volcanicFloodCTA" bulletText="Volanic Snowmelt..." parseString="VOLCANIC SNOWMELT"/>
<bullet bulletName="volcanicLaharCTA" bulletText="Volanic Lahar..." parseString="VOLCANIC LAHARS"/>
<bullet bulletName="glacierOutburstCTA" bulletText="Glacier Outburst..." parseString="STAY AWAY FROM"/>
<!-- GP end -->
Alaska end -->
<bullet bulletName="reportFloodingCTA" bulletText="Report flooding to local law enforcement" parseString="PLEASE REPORT TO YOUR LOCAL LAW ENFORCEMENT AGENCY WHEN YOU CAN"/>
<bullet bulletText="" bulletType="title"/>
<bullet bulletText="************************************************************" bulletType="title"/>

View file

@ -1940,9 +1940,10 @@ public class NsharpResourceHandler {
return;
}
if (!fromArchive) {
// start FixMark:nearByStnCompSnd d2dlite
if (!(sndType.contentEquals("NCUAIR") || sndType
.contentEquals("BUFRUA"))) {
// For those sounding report with forecast time, e.g. model/pfc sounding
if (timeLine.contains("V")) { //fix D2D loading issue. 10/8/2014
// if (!(sndType.contentEquals("NCUAIR") || sndType
// .contentEquals("BUFRUA"))) {
// Chin's NOTE:
// Can Not use reference time directly from the stnInfo,
// Timestamp refTime = stnInfo.getReftime()

View file

@ -16,7 +16,7 @@
* 01/08/2014 Chin Chen Only initializing inventory when in NCP
* 01/13/2014 Chin Chen TTR829- when interpolation, edit graph is allowed
* 01/22/2014 Chin Chen DR17003 issue: NSHARP sounding display throws errors when swapping into main pane when show text is turned on.
*
* 10/20/2014 Chin Chen DR16864, D2D does not use unload button. Check to make sure not D2D instance before access unload button.
* </pre>
*
* @author Chin Chen
@ -150,7 +150,7 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
private boolean spcGpCreated = false;
private boolean awcGpCreated = false;
private boolean imD2d = false; // fixMark:NcInventory
public static NsharpPaletteWindow getInstance() {
if (VizPerspectiveListener.getCurrentPerspectiveManager() != null) {
@ -220,7 +220,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
interpBtn.setEnabled(false);
graphModeBtnIcing.setEnabled(false);
graphModeBtnTurb.setEnabled(false);
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
} else if (compareStnIsOn) {
compareStnBtn.setText(COMP_STN_ON);
graphEditBtn.setEnabled(false);
@ -231,7 +232,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
interpBtn.setEnabled(false);
graphModeBtnIcing.setEnabled(false);
graphModeBtnTurb.setEnabled(false);
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
} else if (compareSndIsOn) {
compareSndBtn.setText(COMP_SND_ON);
graphEditBtn.setEnabled(false);
@ -242,7 +244,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
interpBtn.setEnabled(false);
graphModeBtnIcing.setEnabled(false);
graphModeBtnTurb.setEnabled(false);
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
} else if (compareTmIsOn) {
compareTmBtn.setText(COMP_TM_ON);
compareSndBtn.setEnabled(false);
@ -253,7 +256,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
interpBtn.setEnabled(false);
graphModeBtnIcing.setEnabled(false);
graphModeBtnTurb.setEnabled(false);
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
} else if (editGraphOn) {
graphEditBtn.setText(EDIT_GRAPH_ON);
dataEditBtn.setEnabled(false);
@ -264,7 +268,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
interpBtn.setEnabled(false);
graphModeBtnIcing.setEnabled(false);
graphModeBtnTurb.setEnabled(false);
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false); // FixMark:nearByStnCompSnd
}
} else if (currentGraphMode == NsharpConstants.GRAPH_TURB) {
@ -377,7 +382,7 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
public NsharpPaletteWindow() {
super();
instance = this;
boolean imD2d = false; // fixMark:NcInventory
//boolean imD2d = false; // fixMark:NcInventory
if (VizPerspectiveListener.getCurrentPerspectiveManager() != null) {
if (VizPerspectiveListener.getCurrentPerspectiveManager()
.getPerspectiveId().equals(D2D5Pane.ID_PERSPECTIVE)) {
@ -945,7 +950,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(false);
interpBtn.setEnabled(false);
cfgBtn.setEnabled(false);
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
} else {
overlayIsOn = false;
overlayBtn.setText(OVLY_OFF);
@ -958,7 +964,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(true);
interpBtn.setEnabled(true);
cfgBtn.setEnabled(true);
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
}
NsharpResourceHandler rsc = getRscHandler();
if (rsc != null) {
@ -1001,7 +1008,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(false);
interpBtn.setEnabled(false);
cfgBtn.setEnabled(false);
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
} else {
compareStnIsOn = false;
compareStnBtn.setText(COMP_STN_OFF);
@ -1014,7 +1022,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(true);
interpBtn.setEnabled(true);
cfgBtn.setEnabled(true);
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
}
NsharpResourceHandler rsc = getRscHandler();
if (rsc != null) {
@ -1059,7 +1068,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(false);
interpBtn.setEnabled(false);
cfgBtn.setEnabled(false);
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
} else {
compareTmIsOn = false;
compareTmBtn.setText(COMP_TM_OFF);
@ -1072,7 +1082,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(true);
interpBtn.setEnabled(true);
cfgBtn.setEnabled(true);
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
}
NsharpResourceHandler rsc = getRscHandler();
if (rsc != null) {
@ -1115,7 +1126,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(false);
interpBtn.setEnabled(false);
cfgBtn.setEnabled(false);
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
} else {
compareSndIsOn = false;
compareSndBtn.setText(COMP_SND_OFF);
@ -1128,7 +1140,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
graphModeBtnIcing.setEnabled(true);
interpBtn.setEnabled(true);
cfgBtn.setEnabled(true);
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
}
NsharpResourceHandler rsc = getRscHandler();
if (rsc != null) {
@ -1187,7 +1200,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
compareSndBtn.setEnabled(true);
compareStnBtn.setEnabled(true);
overlayBtn.setEnabled(true);
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(true);// FixMark:nearByStnCompSnd
}
} else {
editGraphOn = true;
@ -1200,7 +1214,8 @@ public class NsharpPaletteWindow extends ViewPart implements SelectionListener,
compareSndBtn.setEnabled(false);
compareStnBtn.setEnabled(false);
overlayBtn.setEnabled(false);
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
if (!imD2d)
unloadBtn.setEnabled(false);// FixMark:nearByStnCompSnd
}
NsharpResourceHandler rsc = getRscHandler();
if (rsc != null) {

View file

@ -0,0 +1,254 @@
#!/bin/csh
##
# This software was developed and / or modified by Raytheon Company,
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
#
# U.S. EXPORT CONTROLLED TECHNICAL DATA
# This software product contains export-restricted data whose
# export/transfer/disclosure is restricted by U.S. law. Dissemination
# to non-U.S. persons whether in the United States or abroad requires
# an export license or other authorization.
#
# Contractor Name: Raytheon Company
# Contractor Address: 6825 Pine Street, Suite 340
# Mail Stop B8
# Omaha, NE 68106
# 402.291.0100
#
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
# further licensing information.
##
#
# A script wrapper that is meant to get inventories of gridded data
# from the A-II database. The data is output to stdout as ASCII.
# This version can adapt to use a python stub that calls the
# data access framework.
#
# Usage:
#
# a2invmdl.csh p srcid ctyp lval1 lval2 varAbrev
# p - A literal p. (optional)
# srcid - Unique alphanumeric name for gridded data source.
# ctyp - Level type id (optional)
# lval1 - First level value (optional)
# lval2 - Second level value (optional)
# varAbrev - Variable abreviation. (optional)
#
# Legacy usage, not supported in all cases:
#
# a2invmdl.csh p gproc ggid ctyp lval1 lval2 varAbrev
#
# p - A literal p. (optional)
# gproc - GRIB process number (can be multiple comma delimited)
# ggid - GRIB grid number
# ctyp - Level type id (optional)
# lval1 - First level value (optional)
# lval2 - Second level value (optional)
# varAbrev - Variable abreviation. (optional)
#
# With the new unified GRIB decoder, instead of gproc ggid, it is best
# to supply the srcid, which is like ETA or GFS254; e.g. the directory
# under /awips2/edex/data/hdf5/grid where the data is stored.
#
# Note that now for sources with no <grid> tag in the associated <model>
# entry, the ggid must be supplied as a quoted empty string.
#
# With no arguments after the grid number, returns a list of variables for
# the data source specified by the process and grid id. With only a variable,
# returns information for the list of planes for that variable. With more
# arguments, returns a list of times for that variable and plane.
#
# Level value arguments are meaningless without the level type argument,
# but it is meaningful to provide only a level type.
#
# If the only argument after the process and grid is a literal at sign ('@')
# then what is returned is a list of all times for which there is data
# available for the given process/grid combination.
#
# If the only argument after the process and grid is a literal plus sign (+),
# then what will be returned will be a level inventory for all variables.
#
# The literal p option means preserve the final version of the python
# submitted to the UEngine instead of cleaning it up. The path to the
# finalized python is /tmp/a2rdmdlNNNNN.py where NNNNN is a unix process id.
#
# Gets all available raob data in the A-II database over a specified range of
# times. The data is output to stdout as ASCII.
#
# SOFTWARE HISTORY
#
# Date Ticket# Engineer Description
# ------------ ---------- ----------- --------------------------
# 2014-10-22 3599 nabowle Initial modification. Changed to properly call DAF version.
#
set rmpy = yes
if ( "$1" == "p" ) then
set rmpy = no
shift
endif
#
# Identify directory this script is in, will be one of the directories we
# search for other files in.
#
set mydir = `dirname $0`
set d1 = `echo $mydir | cut -c1`
if ( "$mydir" == '.' ) then
set mydir = $PWD
else if ( "$d1" != "/" ) then
set mydir = $PWD/$mydir
endif
set mydir = `(cd $mydir ; pwd)`
if ( -x $mydir/$0 ) then
set me = $mydir/$0
else
set me = $0
endif
if ( ! $?FXA_HOME ) set FXA_HOME = xxxx
#
# Primarily base stuff on source name, but try to use the old interface.
#
set sss = "$1"
shift
set ids = `echo $sss | tr ',' ' '`
echo "$ids[1]" | grep '^[0-9][0-9]*$' >& /dev/null
if ( $status == 0 || $#ids > 1 ) then
set mroot = /awips2/edex/data/utility/edex_static/base/grib/models
set ids = `echo $ids | tr ' ' '\n' | grep -v '^ *$' | \
sed 's#^#<id>#g' | sed 's#$#<|#g'`
set ids = `echo ${ids}quertyuiop | sed 's/ *//g'`
set ggg = "$1"
shift
if ( "$ggg" == "" ) then
set mmm = `find $mroot -name '*xml' ! -name '*ECMWF*' \
-exec cat '{}' \; | sed 's|-->|~|g' | \
tr '\t' ' ' | sed 's/ *//g' | sed 's|</model>|~|g' | \
tr '\n' ' ' | tr '~' '\n' | grep -E "$ids" | \
grep -v "<grid>" | sed 's/^.*<name>//g' | \
cut '-d<' -f1 | sort -u`
else
set mmm = `find $mroot -name '*xml' -exec cat '{}' \; | \
sed 's|-->|~|g' | \
tr '\t' ' ' | sed 's/ *//g' | sed 's|</model>|~|g' | \
tr '\n' ' ' | tr '~' '\n' | grep -E "$ids" | \
grep "<grid>$ggg<" | sed 's/^.*<name>//g' | \
cut '-d<' -f1 | sort -u`
endif
if ( $#mmm != 1 ) then
echo "$mmm"
echo "Could not look up model name based on $sss '$ggg'"
exit 1
endif
set sss = $mmm
endif
#
# Locate python stub that we will modify to create the final python logic.
#
if ( -e ./a2invmdlStub.py ) then
set stubpy = ./a2invmdlStub.py
else if ( -e $mydir/a2invmdlStub.py ) then
set stubpy = $mydir/a2invmdlStub.py
else if ( -e $FXA_HOME/src/dm/grid/a2invmdlStub.py ) then
set stubpy = $FXA_HOME/src/dm/grid/a2invmdlStub.py
else if ( -e $FXA_HOME/bin/a2invmdlStub.py ) then
set stubpy = $FXA_HOME/bin/a2invmdlStub.py
else
bash -c "echo could not find a2invmdlStub.py 1>&2"
exit
endif
#
# Determine if we are using the data access framework or the uEngine.
#
grep DataAccessLayer $stubpy >& /dev/null
if ( $status == 0 ) then
if ( "$*" == "+" ) then
/awips2/python/bin/python $stubpy --mode fieldplane --srcId $sss
else if ( "$1" == "" ) then
/awips2/python/bin/python $stubpy --mode field --srcId $sss
else if ( "$1" == "@" ) then
/awips2/python/bin/python $stubpy --mode time --srcId $sss
else if ( "$2" == "" ) then
/awips2/python/bin/python $stubpy --mode plane --srcId $sss --varAbrev $1
else if ( "$3" == "" ) then
/awips2/python/bin/python $stubpy --mode time --srcId $sss --lvlName $1 --varAbrev $2
else if ( "$4" == "" ) then
/awips2/python/bin/python $stubpy --mode time --srcId $sss --lvlName $1 --lvlOne $2 --varAbrev $3
else
/awips2/python/bin/python $stubpy --mode time --srcId $sss --lvlName $1 --lvlOne $2 --lvlTwo $3 --varAbrev $4
endif
else
#
if ( "$*" == "+" ) then
set varList = `$me $sss`
foreach onevar ( $varList )
echo ${onevar}:
$me $sss $onevar | tr '\n' ' '
echo
end
exit
endif
#
# Set up the environment we need to run the UEngine.
#
if ( -e ./UEngine.cshsrc ) then
set ueenv = ./UEngine.cshsrc
else if ( -e $mydir/UEngine.cshsrc ) then
set ueenv = $mydir/UEngine.cshsrc
else if ( -e $FXA_HOME/src/dm/point/UEngine.cshsrc ) then
set ueenv = $FXA_HOME/src/dm/point/UEngine.cshsrc
else if ( -e $FXA_HOME/bin/UEngine.cshsrc ) then
set ueenv = $FXA_HOME/bin/UEngine.cshsrc
else
bash -c "echo could not find UEngine.cshsrc 1>&2"
exit
endif
source $ueenv
#
# Modify the text of special tags in stub to create finalized script.
#
set specpy = /tmp/a2invmdl${$}.py
rm -rf $specpy >& /dev/null
touch $specpy
chmod 775 $specpy
set plane = no
if ( "$1" == "" ) then
cat $stubpy | sed "s/MMMMM/field/g" | sed "s/SSSSS/$sss/g" | \
sed 's/^.*TTTTT.*$//g' | sed 's/^.*LLLLL.*$//g' | \
sed 's/^.*22222.*$//g' | sed 's/^.*VVVVV.*$//g' >> $specpy
else if ( "$1" == "@" ) then
cat $stubpy | sed "s/MMMMM/time/g" | sed "s/SSSSS/$sss/g" | \
sed 's/^.*TTTTT.*$//g' | sed 's/^.*LLLLL.*$//g' | \
sed 's/^.*22222.*$//g' | sed 's/^.*VVVVV.*$//g' >> $specpy
else if ( "$2" == "" ) then
set plane = yes
cat $stubpy | sed "s/MMMMM/plane/g" | sed "s/SSSSS/$sss/g" | \
sed 's/^.*TTTTT.*$//g' | sed 's/^.*LLLLL.*$//g' | \
sed 's/^.*22222.*$//g' | sed "s/VVVVV/$1/g" >> $specpy
else if ( "$3" == "" ) then
cat $stubpy | sed "s/MMMMM/time/g" | sed "s/SSSSS/$sss/g" | \
sed "s/TTTTT/$1/g" | sed 's/^.*LLLLL.*$//g' | \
sed 's/^.*22222.*$//g' | sed "s/VVVVV/$2/g" >> $specpy
else if ( "$4" == "" ) then
cat $stubpy | sed "s/MMMMM/time/g" | sed "s/SSSSS/$sss/g" | \
sed "s/TTTTT/$1/g" | sed "s/LLLLL/$2/g"| \
sed 's/^.*22222.*$//g' | sed "s/VVVVV/$3/g" >> $specpy
else
cat $stubpy | sed "s/MMMMM/time/g" | sed "s/SSSSS/$sss/g" | \
sed "s/TTTTT/$1/g" | sed "s/LLLLL/$2/g" | \
sed "s/22222/$3/g" | sed "s/VVVVV/$4/g" >> $specpy
endif
if ( "$plane" == "no" ) then
cd $UE_BIN_PATH
( uengine -r python < $specpy ) |& grep attributes | cut '-d"' -f4
else
cd $UE_BIN_PATH
( uengine -r python < $specpy ) |& sed 's|.*</items>.*|@|g' | \
grep -E 'attributes|@' | cut '-d"' -f4 | tr '\n' ' ' | tr '@' '\n' | \
sed 's/ -999999.0//g' | sed 's/^ *//g' | sed 's/ *$//g'
endif
#if ( "$rmpy" == "yes" ) rm -rf $specpy >& /dev/null
#
endif

View file

@ -0,0 +1,123 @@
##
# This software was developed and / or modified by Raytheon Company,
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
#
# U.S. EXPORT CONTROLLED TECHNICAL DATA
# This software product contains export-restricted data whose
# export/transfer/disclosure is restricted by U.S. law. Dissemination
# to non-U.S. persons whether in the United States or abroad requires
# an export license or other authorization.
#
# Contractor Name: Raytheon Company
# Contractor Address: 6825 Pine Street, Suite 340
# Mail Stop B8
# Omaha, NE 68106
# 402.291.0100
#
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
# further licensing information.
##
# Gets inventories of gridded data from the A-II database. The data is output
# to stdout as ASCII.
#
# SOFTWARE HISTORY
#
# Date Ticket# Engineer Description
# ------------ ---------- ----------- --------------------------
# 2014-10-22 3599 nabowle Initial modification. Convert to DAF.
#
import argparse
import numpy
import sys
from ufpy.dataaccess import DataAccessLayer
def get_args():
parser = argparse.ArgumentParser(conflict_handler="resolve")
parser.add_argument("-h", action="store", dest="host",
help="EDEX server hostname (optional)", metavar="hostname")
parser.add_argument("--srcId", action="store", dest="srcId",
help="Unique alphanumeric name for gridded data source",
metavar="srcId")
parser.add_argument("--varAbrev", action="store", dest="varAbrev",
help="Variable abreviation", metavar="varAbrev")
parser.add_argument("--lvlOne", action="store", dest="lvlOne",
help="Level One value", metavar="lvlOne", type=float)
parser.add_argument("--lvlTwo", action="store", dest="lvlTwo",
help="Level Two value", metavar="lvlTwo", type=float)
parser.add_argument("--lvlName", action="store", dest="lvlName",
help="Master level name", metavar="lvlName")
parser.add_argument("--mode", action="store", dest="mode", default="time",
help="Mode - time, plane, field, or fieldplane")
return parser.parse_args()
def main():
user_args = get_args()()
if user_args.host:
DataAccessLayer.changeEDEXHost(user_args.host)
req = DataAccessLayer.newDataRequest("grid")
if not user_args.srcId:
print >> sys.stderr, "srcId not provided"
return
req.addIdentifier("info.datasetId", user_args.srcId)
if user_args.varAbrev:
req.setParameters(user_args.varAbrev)
if user_args.lvlName is not None:
req.addIdentifier("info.level.masterLevel.name", user_args.lvlName)
if user_args.lvlOne is not None:
req.addIdentifier("info.level.levelonevalue", numpy.float64(user_args.lvlOne))
if user_args.lvlTwo is not None:
req.addIdentifier("info.level.leveltwovalue", numpy.float64(user_args.lvlTwo))
mode = user_args.mode
if mode not in ["time", "plane", "field", "fieldplane"]:
print >> sys.stderr, "mode must be one of time, plane, field, or fieldplane."
return
msg = "";
if mode == "time":
times = DataAccessLayer.getAvailableTimes(req)
for time in times:
timeStr = str(time)
if "--" in timeStr:
timeStr = timeStr[0:-22] + ".0" + timeStr[-22:-1] + ".0" + timeStr[-1]
msg += timeStr[0:19] + ".0" + timeStr[19:] + "\n"
elif mode == "plane":
levels = DataAccessLayer.getAvailableLevels(req)
for level in levels:
msg += level_to_string(level) + "\n"
elif mode == "field":
params = DataAccessLayer.getAvailableParameters(req)
msg = "\n".join(params)
else: #fieldplane
params = DataAccessLayer.getAvailableParameters(req)
for param in params:
msg += param + ":\n"
req.setParameters(param)
levels = DataAccessLayer.getAvailableLevels(req)
if levels:
levelStr = []
for level in levels:
levelStr.append(level_to_string(level))
msg += " ".join(levelStr) + " \n"
print msg.strip("\n")
def level_to_string(level):
name = level.getMasterLevel().getName()
lvlOne = str(level.getLevelonevalue())
lvlTwo = str(level.getLeveltwovalue())
msg = name + " " + lvlOne
if lvlTwo not in ["None", "-999999.0"]:
msg += " " + lvlTwo
return msg
if __name__ == '__main__':
main()

View file

@ -0,0 +1,284 @@
#!/bin/csh
##
# This software was developed and / or modified by Raytheon Company,
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
#
# U.S. EXPORT CONTROLLED TECHNICAL DATA
# This software product contains export-restricted data whose
# export/transfer/disclosure is restricted by U.S. law. Dissemination
# to non-U.S. persons whether in the United States or abroad requires
# an export license or other authorization.
#
# Contractor Name: Raytheon Company
# Contractor Address: 6825 Pine Street, Suite 340
# Mail Stop B8
# Omaha, NE 68106
# 402.291.0100
#
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
# further licensing information.
##
#
# A script wrapper that is meant to get inventories of radar data
# from the A-II database. The data is output to stdout as ASCII.
# This version can adapt to use a python stub that calls the
# data access framework.
#
# Usage:
#
# a2invrad.csh p radar date time msgcode elev
#
# p - A literal p.
# radar - four character radar id
# date - yyyy-mo-dd
# time - hh:mm
# msgcode - RPG message code
# elev - tilt angle/layer value. defaults to 0.
#
# All arguments are optional, but must retain the specified order.
#
# The literal p option means preserve the final version of the python
# submitted to the UEngine instead of cleaning it up. The path to the
# finalized python is /tmp/a2invradNNNNN.py where NNNNN is a unix process id.
# This argument does not change the output of the script.
#
# If no radar id is supplied, the only other useable arguments are the
# date and time, and what is returned is a list of radars.
#
# The date and time must be supplied together. If not supplied, then the
# information returned covers all times, otherwise +/- one minute from
# the supplied date and time.
#
# If the message code is not supplied, or is a literal '+', then what is
# listed is the available message code for the specified radar. The plus
# sign causes some descriptive information to be supplied with the returned
# codes.
#
# If the message code is supplied and the tilt/layer is a literal '+',
# then what is returned is a list of tilts available for the specified
# message code.
#
# When a message code is supplied but no tilt is supplied, this is meant
# to return a list of times for a non-tilt based product, such as storm
# total precip. Otherwise if a tilt/layer is supplied, this is meant
# to return a list of times for product that are for a specific tilt,
# like base reflectivity.
#
# When tilt angles are specified on the command line, or are returned
# in response to a tilt angle argument of '+', these tilt angles are
# primary tilt angles for a range of tilts. When tilt angles are returned
# with a time inventory, then these are the actual tilt angle of the
# data received.
#
# Gets inventories of radar grid data from the A-II database. The data is
# output to stdout as ASCII. Inventories are limited to Radial and Raster
# formats.
#
# SOFTWARE HISTORY
#
# Date Ticket# Engineer Description
# ------------ ---------- ----------- --------------------------
# 2014-10-28 3600 nabowle Initial modification. Call DAF properly.
#
#
set rmpy = yes
if ( "$1" == "p" ) then
set rmpy = no
shift
endif
#
# Identify directory this script is in, will be one of the directories we
# search for other files in.
#
set mydir = `dirname $0`
set d1 = `echo $mydir | cut -c1`
if ( "$mydir" == '.' ) then
set mydir = $PWD
else if ( "$d1" != "/" ) then
set mydir = $PWD/$mydir
endif
set mydir = `(cd $mydir ; pwd)`
if ( ! $?FXA_HOME ) set FXA_HOME = xxxx
set fxa_home = $FXA_HOME
if ( $?STAGING ) then
set fxa_home = $STAGING/D-2D
endif
#
# Locate python stub that we will modify to create the final python logic.
#
if ( -e ./a2invradStub.py ) then
set stubpy = ./a2invradStub.py
else if ( -e $mydir/a2invradStub.py ) then
set stubpy = $mydir/a2invradStub.py
else if ( -e $fxa_home/src/dm/radar/a2invradStub.py ) then
set stubpy = $fxa_home/src/dm/radar/a2invradStub.py
else if ( -e $FXA_HOME/bin/a2invradStub.py ) then
set stubpy = $FXA_HOME/bin/a2invradStub.py
else
bash -c "echo could not find a2invradStub.py 1>&2"
exit
endif
set rrr = `echo $1 | grep '[a-z][a-z][a-z][a-z]'`
if ( "$rrr" != "" ) shift
set lastcmd = cat
#
# Determine if we are using the data access framework or the uEngine.
#
grep DataAccessLayer $stubpy >& /dev/null
if ( $status == 0 ) then
set mydate = `echo "$1" | grep '.*-.*-'`
set mytime = `echo "$2" | grep ':'`
if ( "$mydate" != "" && "$mytime" != "" ) then
shift
shift
set userargs = "--date ${mydate} --time ${mytime}"
else
set userargs = ""
endif
if ( "$rrr" == "" ) then
#done
else if ( "$1" == "" ) then
set userargs = "$userargs --icao $rrr"
else if ( "$1" == "+" ) then
set userargs = "$userargs --icao $rrr"
if ( -e ./msgCodeSeds.txt ) then
set mctrans = $PWD/msgCodeSeds.txt
else if ( -e $mydir/msgCodeSeds.txt ) then
set mctrans = $mydir/msgCodeSeds.txt
else if ( -e $fxa_home/src/dm/radar/msgCodeSeds.txt ) then
set mctrans = $fxa_home/src/dm/radar/msgCodeSeds.txt
else if ( -e $FXA_HOME/data/msgCodeSeds.txt ) then
set mctrans = $FXA_HOME/data/msgCodeSeds.txt
else
bash -c "echo could not find msgCodeSeds.txt 1>&2"
exit
endif
set lastcmd = "sed -f $mctrans"
else if ( "$2" == "" ) then
set userargs = "$userargs --icao $rrr --productCode $1 --angle 0.0 --outputDate"
else if ( "$2" == "+" ) then
set userargs = "$userargs --icao $rrr --productCode $1 --outputPrimary"
else
set userargs = "$userargs --icao $rrr --productCode $1 --angle $2 --outputTrue --outputDate"
endif
/awips2/python/bin/python $stubpy ${userargs} | $lastcmd
else
#
# Set up the environment we need to run the UEngine.
#
set method = "uengine"
if ( -e ./UEngine.cshsrc ) then
set ueenv = ./UEngine.cshsrc
else if ( -e $mydir/UEngine.cshsrc ) then
set ueenv = $mydir/UEngine.cshsrc
else if ( -e $FXA_HOME/src/dm/point/UEngine.cshsrc ) then
set ueenv = $FXA_HOME/src/dm/point/UEngine.cshsrc
else if ( -e $FXA_HOME/bin/UEngine.cshsrc ) then
set ueenv = $FXA_HOME/bin/UEngine.cshsrc
else
bash -c "echo could not find UEngine.cshsrc 1>&2"
exit
endif
source $ueenv
#
# Set range of time we will request this information over, will default to
# essentially forever.
#
set aaa = "1970-01-01 00:00:00.0"
set bbb = "2038-01-01 00:00:00.0"
set mydate = `echo "$1" | grep '.*-.*-'`
set mytime = `echo "$2" | grep ':'`
if ( "$mydate" != "" && "$mytime" != "" ) then
shift
shift
if ( -x ./gtasUtil ) then
set gtasUtil = ./gtasUtil
else if ( -x $mydir/gtasUtil ) then
set gtasUtil = $mydir/gtasUtil
else if ( -x $fxa_home/src/dm/point/gtasUtil ) then
set gtasUtil = $fxa_home/src/dm/point/gtasUtil
else if ( -x $FXA_HOME/bin/gtasUtil ) then
set gtasUtil = $FXA_HOME/bin/gtasUtil
else
bash -c "echo could not find gtasUtil executable 1>&2"
exit
endif
set aaa = `$gtasUtil = $mydate $mytime -60`
set bbb = `$gtasUtil = $mydate $mytime 60`
endif
#
# Modify the text of special tags in stub to create finalized script.
#
set binary = no
set specpy = /tmp/a2invrad${$}.py
rm -rf $specpy >& /dev/null
touch $specpy
chmod 775 $specpy
if ( "$rrr" == "" ) then
cat $stubpy | grep -v "KKKK" | grep -v "MMMM" | grep -v "EEEE" | \
sed "s/AAAAA/$aaa/g" | sed "s/BBBBB/$bbb/g" | \
grep -v 'Code")' | grep -v 'Time")' | grep -v 'Angle")' \
>> $specpy
else if ( "$1" == "" ) then
cat $stubpy | sed "s/KKKK/$rrr/g" | grep -v "MMMM" | \
sed "s/AAAAA/$aaa/g" | sed "s/BBBBB/$bbb/g" | grep -v 'icao")' | \
sed 's/^.*EEEE.*$//g' | grep -v 'Time")' | grep -v 'Angle")' \
>> $specpy
else if ( "$1" == "+" ) then
cat $stubpy | sed "s/KKKK/$rrr/g" | grep -v "MMMM" | \
sed "s/AAAAA/$aaa/g" | sed "s/BBBBB/$bbb/g" | grep -v 'icao")' | \
sed 's/^.*EEEE.*$//g' | grep -v 'Time")' | grep -v 'Angle")' \
>> $specpy
if ( -e ./msgCodeSeds.txt ) then
set mctrans = $PWD/msgCodeSeds.txt
else if ( -e $mydir/msgCodeSeds.txt ) then
set mctrans = $mydir/msgCodeSeds.txt
else if ( -e $fxa_home/src/dm/radar/msgCodeSeds.txt ) then
set mctrans = $fxa_home/src/dm/radar/msgCodeSeds.txt
else if ( -e $FXA_HOME/data/msgCodeSeds.txt ) then
set mctrans = $FXA_HOME/data/msgCodeSeds.txt
else
bash -c "echo could not find msgCodeSeds.txt 1>&2"
exit
endif
set lastcmd = "sed -f $mctrans"
else if ( "$2" == "" ) then
cat $stubpy | sed "s/KKKK/$rrr/g" | sed "s/MMMM/$1/g" | \
sed "s/AAAAA/$aaa/g" | sed "s/BBBBB/$bbb/g" | grep -v 'icao")' | \
sed 's/EEEE/0.0/g' | grep -v 'Angle")' | grep -v 'Code")' \
>> $specpy
else if ( "$2" == "+" ) then
cat $stubpy | sed "s/KKKK/$rrr/g" | sed "s/MMMM/$1/g" | \
sed "s/AAAAA/$aaa/g" | sed "s/BBBBB/$bbb/g" | grep -v 'icao")' | \
sed 's/^.*EEEE.*$//g' | grep -v 'Time")' | grep -v 'Code")' | \
sed 's/true/primary/g' >> $specpy
else
cat $stubpy | sed "s/KKKK/$rrr/g" | sed "s/MMMM/$1/g" | \
sed "s/AAAAA/$aaa/g" | sed "s/BBBBB/$bbb/g" | grep -v 'icao")' | \
sed "s/EEEE/$2/g" | grep -v 'Code")' >> $specpy
set binary = yes
endif
#
# Submit the temporary python script stripping xml stuff, then remove it
#
if ( "$binary" == "yes" ) then
cd $UE_BIN_PATH
( uengine -r python < $specpy ) |& sed 's|.*</items>.*|@|g' | \
grep -E 'attributes|@' | cut '-d"' -f4 | tr '\n' ' ' | tr '@' '\n' | \
sed 's/00000.*$//g' | sed 's/^ *//g' | sed 's/ *$//g'
else
cd $UE_BIN_PATH
( uengine -r python < $specpy ) |& grep attributes | cut '-d"' -f4 | \
$lastcmd
endif
if ( "$rmpy" == "yes" ) rm -rf $specpy >& /dev/null
endif

View file

@ -0,0 +1,172 @@
##
# This software was developed and / or modified by Raytheon Company,
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
#
# U.S. EXPORT CONTROLLED TECHNICAL DATA
# This software product contains export-restricted data whose
# export/transfer/disclosure is restricted by U.S. law. Dissemination
# to non-U.S. persons whether in the United States or abroad requires
# an export license or other authorization.
#
# Contractor Name: Raytheon Company
# Contractor Address: 6825 Pine Street, Suite 340
# Mail Stop B8
# Omaha, NE 68106
# 402.291.0100
#
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
# further licensing information.
##
# Gets inventories of radar grid data from the A-II database. The data is
# output to stdout as ASCII. Inventories are limited to Radial and Raster
# formats.
#
# SOFTWARE HISTORY
#
# Date Ticket# Engineer Description
# ------------ ---------- ----------- --------------------------
# 2014-10-27 3600 nabowle Initial modification. Convert to DAF.
#
import argparse
import numpy
import sys
from datetime import datetime
from datetime import timedelta
from ufpy.dataaccess import DataAccessLayer
from dynamicserialize.dstypes.com.raytheon.uf.common.time import TimeRange
from dynamicserialize.dstypes.com.raytheon.uf.common.dataplugin.level import Level
def get_args():
parser = argparse.ArgumentParser(conflict_handler="resolve")
parser.add_argument("-h", action="store", dest="host",
help="EDEX server hostname (optional)", metavar="hostname")
parser.add_argument("--icao", action="store", dest="icao",
help="The ICAO (optional)", metavar="icao")
parser.add_argument("--productCode", action="store", dest="productCode",
help="Product Code (optional)", metavar="productCode")
parser.add_argument("--angle", action="store", dest="angle", type=float,
help="The Primary Elevation Angle (optional)",
metavar="angle")
parser.add_argument("--date", action="store", dest="date",
help="A date to find data within a minute of. (optional, --time required if provided)",
metavar="YYYY-MM-DD")
parser.add_argument("--time", action="store", dest="time",
help="A time to find data within a minute of. (optional, --date required if provided)",
metavar="HH:MM")
parser.add_argument("--outputDate", action="store_true",
dest="outputDate", help="Output the datetime (optional)")
parser.add_argument("--outputTrue", action="store_const",
dest="outputAngle", const="true",
help="Output true elevation angle, if relevant. (optional,"
+ " exclusive with --outputPrimary)")
parser.add_argument("--outputPrimary", action="store_const",
dest="outputAngle", const="primary",
help="Output primary elevation angle, if relevant. "
+ "(optional, exclusive with --outputTrue)")
return parser.parse_args()
def main():
user_args = get_args()
if user_args.host:
DataAccessLayer.changeEDEXHost(user_args.host)
if (user_args.date and not user_args.time) or (user_args.time and not user_args.date):
print >> sys.stderr, "date and time must be provided together"
return
# If a time range is provided, results will be filtered based on available times
timeRange = None
if user_args.date:
midRange = datetime.strptime( user_args.date + " " + user_args.time, "%Y-%m-%d %H:%M")
beginRange = midRange - timedelta(0, 60)
endRange = midRange + timedelta(0, 60)
timeRange = TimeRange(beginRange, endRange)
req = create_request(user_args)
if user_args.icao:
if user_args.productCode: # retrieve available times and/or true or primary elevation angles
if timeRange:
tr = timeRange
else:
tr = []
lines = set()
radars = DataAccessLayer.getGridData(req, tr)
for radar in radars:
line = ""
if user_args.outputDate:
line = str(radar.getDataTime()) + ".0"
if user_args.outputAngle:
line += " "
if user_args.outputAngle == "true":
line += "%.1f"%float(radar.getLocationName().split("_")[1])
elif user_args.outputAngle == "primary":
line += radar.getLevel()[0:3] #Trim "TILT"
lines.add(line)
msg = "\n".join(lines)
else: #retrieve available product codes
unfiltered = DataAccessLayer.getAvailableParameters(req)
productCodes = []
for parameter in unfiltered: #filter to just productCodes
if parameter.isdigit():
productCodes.append(parameter)
if timeRange:
unfiltered = productCodes
productCodes = []
for productCode in unfiltered:
req = create_request(user_args)
req.setParameters(productCode)
if data_in_time_range(req, timeRange):
productCodes.append(productCode)
msg = "\n".join(productCodes)
else: # retrieve available icaos
icaos = DataAccessLayer.getAvailableLocationNames(req)
if timeRange:
unfiltered = icaos
icaos = []
for icao in unfiltered:
req = create_request(user_args)
req.addIdentifier("icao", icao)
if data_in_time_range(req, timeRange):
icaos.append(icao)
msg = "\n".join(icaos)
print msg.strip()
def create_request(user_args):
req = DataAccessLayer.newDataRequest("radar")
if user_args.icao:
req.addIdentifier("icao", user_args.icao)
if user_args.productCode:
req.setParameters(user_args.productCode)
if user_args.angle is not None:
level = Level()
level.setLevelonevalue(user_args.angle)
req.setLevels(level)
return req
def data_in_time_range(req, timeRange):
times = DataAccessLayer.getAvailableTimes(req)
for time in times:
if timeRange.contains(time.getValidPeriod()):
return True
return False
if __name__ == '__main__':
main()

View file

@ -0,0 +1,174 @@
#!/bin/csh
##
# This software was developed and / or modified by Raytheon Company,
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
#
# U.S. EXPORT CONTROLLED TECHNICAL DATA
# This software product contains export-restricted data whose
# export/transfer/disclosure is restricted by U.S. law. Dissemination
# to non-U.S. persons whether in the United States or abroad requires
# an export license or other authorization.
#
# Contractor Name: Raytheon Company
# Contractor Address: 6825 Pine Street, Suite 340
# Mail Stop B8
# Omaha, NE 68106
# 402.291.0100
#
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
# further licensing information.
##
#
# A script wrapper that is meant to get inventories of satellite data
# from the A-II database. The data is output to stdout as ASCII.
# This version can adapt to use a python stub that calls the
# data access framework.
#
# Usage:
#
# a2invsat.csh {p} sector channel {satid}
#
# p - A literal p. (optional)
# sector - sector id
# channel - channel id
# satid - (optional) satellite id
#
# Returns a list of times with data for the specified sector/channel.
#
# The ids can be either D-2D integer ids, or AWIPS-II ascii ids, in which
# case they need to be quoted on the command line.
#
# Integer ids can be looked up in a2satInfo.txt, channel id corresponds to
# the physicalElement, and satid corresponds to the creatingEntity.
#
# The literal p option means preserve the final version of the python
# submitted to the UEngine instead of cleaning it up. The path to the
# finalized python is /tmp/a2invsatNNNNN.py where NNNNN is a unix process id.
#
#
# SOFTWARE HISTORY
#
# Date Ticket# Engineer Description
# ------------ ---------- ----------- --------------------------
# 2014-10-23 3601 nabowle Initial modification. Properly calls DAF. Make a2satInfo.txt optional.
#
set rmpy = yes
if ( "$1" == "p" ) then
set rmpy = no
shift
endif
#
# Identify directory this script is in, will be one of the directories we
# search for other files in.
#
set mydir = `dirname $0`
set d1 = `echo $mydir | cut -c1`
if ( "$mydir" == '.' ) then
set mydir = $PWD
else if ( "$d1" != "/" ) then
set mydir = $PWD/$mydir
endif
set mydir = `(cd $mydir ; pwd)`
if ( ! $?FXA_HOME ) set FXA_HOME = xxxx
#
# Locate python stub that we will modify to create the final python logic.
#
if ( -e ./a2invsatStub.py ) then
set stubpy = ./a2invsatStub.py
else if ( -e $mydir/a2invsatStub.py ) then
set stubpy = $mydir/a2invsatStub.py
else if ( -e $FXA_HOME/src/dm/sat/a2invsatStub.py ) then
set stubpy = $FXA_HOME/src/dm/sat/a2invsatStub.py
else if ( -e $FXA_HOME/bin/a2invsatStub.py ) then
set stubpy = $FXA_HOME/bin/a2invsatStub.py
else
bash -c "echo could not find a2invsatStub.py 1>&2"
exit
endif
#
# Locate file containing mapping between D-2D interger ids and AWIPS-II ascii
# ids for sectors, channels, and satellites.
#
if ( -e ./a2satInfo.txt ) then
set satInf = ./a2satInfo.txt
else if ( -e $mydir/a2satInfo.txt ) then
set satInf = $mydir/a2satInfo.txt
else if ( -e $FXA_HOME/src/dm/sat/a2satInfo.txt ) then
set satInf = $FXA_HOME/src/dm/sat/a2satInfo.txt
else if ( -e $FXA_HOME/data/a2satInfo.txt ) then
set satInf = $FXA_HOME/data/a2satInfo.txt
else
set satInf = ""
set sss = "$1"
set ccc = "$2"
if ( "$3" == "" ) then
set eee = ""
else
set eee = "$3"
endif
endif
#
#
if ( $satInf != "" ) then
set sss = `grep "^ *$1|.*sectorID" $satInf | cut '-d|' -f3`
if ( "$sss" == "" ) set sss = "$1"
set ccc = `grep "^ *$2|.*physicalElement" $satInf | cut '-d|' -f3`
if ( "$ccc" == "" ) set ccc = "$2"
if ( "$3" == "" ) then
set eee = ""
else
set eee = `grep "^ *$3|.*creatingEntity" $satInf | cut '-d|' -f3`
if ( "$eee" == "" ) set eee = "$3"
endif
endif
#
# Determine if we are using the data access framework or the uEngine.
#
grep DataAccessLayer $stubpy >& /dev/null
if ( $status == 0 ) then
if ( "$eee" == "" ) then
/awips2/python/bin/python $stubpy --sectorID "$sss" --physicalElement "$ccc"
else
/awips2/python/bin/python $stubpy --sectorID "$sss" --physicalElement "$ccc" --creatingEntity "$eee"
endif
else
#
# Set up the environment we need to run the UEngine.
#
if ( -e ./UEngine.cshsrc ) then
set ueenv = ./UEngine.cshsrc
else if ( -e $mydir/UEngine.cshsrc ) then
set ueenv = $mydir/UEngine.cshsrc
else if ( -e $FXA_HOME/src/dm/point/UEngine.cshsrc ) then
set ueenv = $FXA_HOME/src/dm/point/UEngine.cshsrc
else if ( -e $FXA_HOME/bin/UEngine.cshsrc ) then
set ueenv = $FXA_HOME/bin/UEngine.cshsrc
else
bash -c "echo could not find UEngine.cshsrc 1>&2"
exit
endif
source $ueenv
#
# Modify the text of special tags in stub to create finalized script.
#
set specpy = /tmp/a2invsat${$}.py
rm -rf $specpy >& /dev/null
touch $specpy
chmod 775 $specpy
if ( "$eee" == "" ) then
cat $stubpy | sed "s/SSSSS/$sss/g" | sed "s/CCCCC/$ccc/g" | \
sed 's/^.*EEEEE.*$//g' >> $specpy
else
cat $stubpy | sed "s/SSSSS/$sss/g" | sed "s/CCCCC/$ccc/g" | \
sed "s/EEEEE/$eee/g" >> $specpy
endif
cd $UE_BIN_PATH
( uengine -r python < $specpy ) |& grep attributes | cut '-d"' -f4
if ( "$rmpy" == "yes" ) rm -rf $specpy >& /dev/null
endif

View file

@ -0,0 +1,76 @@
##
# This software was developed and / or modified by Raytheon Company,
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
#
# U.S. EXPORT CONTROLLED TECHNICAL DATA
# This software product contains export-restricted data whose
# export/transfer/disclosure is restricted by U.S. law. Dissemination
# to non-U.S. persons whether in the United States or abroad requires
# an export license or other authorization.
#
# Contractor Name: Raytheon Company
# Contractor Address: 6825 Pine Street, Suite 340
# Mail Stop B8
# Omaha, NE 68106
# 402.291.0100
#
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
# further licensing information.
##
# Gets inventories of satellite data from the A-II database. The data is output
# to stdout as ASCII.
#
# SOFTWARE HISTORY
#
# Date Ticket# Engineer Description
# ------------ ---------- ----------- --------------------------
# 2014-10-23 3601 nabowle Initial modification. Convert to DAF.
#
import argparse
import numpy
import sys
from ufpy.dataaccess import DataAccessLayer
def get_args():
parser = argparse.ArgumentParser(conflict_handler="resolve")
parser.add_argument("-h", action="store", dest="host",
help="EDEX server hostname (optional)", metavar="hostname")
parser.add_argument("--sectorID", action="store", dest="sectorID",
help="The sector ID.", metavar="sectorID")
parser.add_argument("--physicalElement", action="store", dest="physicalElement",
help="The physical element.", metavar="physicalElement")
parser.add_argument("--creatingEntity", action="store", dest="creatingEntity",
help="(optional) The creating entity", metavar="creatingEntity")
return parser.parse_args()
def main():
user_args = get_args()
if user_args.host:
DataAccessLayer.changeEDEXHost(user_args.host)
req = DataAccessLayer.newDataRequest("satellite")
if not user_args.sectorID or not user_args.physicalElement:
print >> sys.stderr, "sectorID or physicalElement not provided"
return
req.setParameters(user_args.physicalElement)
req.addIdentifier("sectorID", user_args.sectorID)
if user_args.creatingEntity:
req.addIdentifier("creatingEntity", user_args.creatingEntity)
msg = "";
times = DataAccessLayer.getAvailableTimes(req)
for time in times:
timeStr = str(time)
msg += timeStr[0:19] + ".0" + timeStr[19:] + "\n"
print msg.strip()
if __name__ == '__main__':
main()

View file

@ -8,7 +8,7 @@
Name: awips2-tools
Summary: AWIPS II Tools Distribution
Version: 1.8.5
Release: 2.el6
Release: 3.el6
Group: AWIPSII
BuildRequires: awips2-python-h5py
BuildRoot: /tmp