From 94310472cb5cdc3da5e2177392a13b644ab1a2f5 Mon Sep 17 00:00:00 2001
From: Laura DeCicco <ldecicco@usgs.gov>
Date: Wed, 20 Nov 2013 11:28:18 -0600
Subject: [PATCH] Added a check to the conversion to make sure the pcode is
 00060. If not, the conversion factor is 1.

---
 R/getDVData.r | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/R/getDVData.r b/R/getDVData.r
index b2b4254a..d98ee3b1 100644
--- a/R/getDVData.r
+++ b/R/getDVData.r
@@ -10,7 +10,8 @@
 #' @param EndDate string ending date for data retrieval in the form YYYY-MM-DD.
 #' @param interactive logical Option for interactive mode.  If true, there is user interaction for error handling and data checks.
 #' @param convert logical Option to include a conversion from cfs to cms (35.314667). The default is TRUE, 
-#' which is appropriate for using NWIS data in the EGRET package.  Set this to FALSE to not include the conversion.
+#' which is appropriate for using NWIS data in the EGRET package.  Set this to FALSE to not include the conversion. If the parameter code is not 00060 (NWIS discharge),
+#' there is no conversion applied.
 #' @param format string, can be "tsv" or "xml", and is only applicable for daily and unit value requests.  "tsv" returns results faster, but there is a possiblitiy that an incomplete file is returned without warning. XML is slower, 
 #' but will offer a warning if the file was incomplete (for example, if there was a momentary problem with the internet connection). It is possible to safely use the "tsv" option, 
 #' but the user must carefully check the results to see if the data returns matches what is expected. The default is "tsv".
@@ -21,12 +22,17 @@
 #' @examples
 #' # These examples require an internet connection to run
 #' Daily <- getDVData('01594440','00060', '1985-01-01', '1985-03-31')
+#' DailyCFS <- getDVData('01594440','00060', '1985-01-01', '1985-03-31',convert=FALSE)
+#' DailySuspSediment <- getDVData('01594440','80154', '1985-01-01', '1985-03-31')
 getDVData <- function (siteNumber,ParameterCd,StartDate,EndDate,interactive=TRUE,convert=TRUE,format="tsv"){
   data <- retrieveNWISData(siteNumber,ParameterCd,StartDate,EndDate,interactive=interactive,format=format)
   
   #  need to setup conversion factor because the NWIS data are in cfs but we store in cms
   names(data) <- c('agency', 'site', 'dateTime', 'value', 'code')  # do a merge instead?
-  qConvert<- ifelse(convert,35.314667,1)
+  
+  qConvert <- ifelse("00060" == ParameterCd, 35.314667, 1)
+  qConvert<- ifelse(convert,qConvert,1)
+  
   localDaily <- populateDaily(data,qConvert,interactive=interactive)
   return (localDaily)
 }
-- 
GitLab