private static void DetermineHoLoValues( string qualifier, object value, out object valueHi, out object valueLo )
{
valueLo = null;
valueHi = null;
if (!string.IsNullOrEmpty( qualifier ))
{
//--- If it is a string try to convert it to a double ---//
if (value is string)
{
double d;
if (double.TryParse( (string) value, out d ))
value = d;
}
if ("pk_pk".Equals( qualifier ))
{
if (value is double)
{
double d = (double) value;
double pk = ( (double) value )/2;
valueHi = pk;
valueLo = pk - d;
}
}
else if ("pk".Equals( qualifier ))
{
if (value is double)
{
double pk = (double) value;
valueHi = pk;
valueLo = pk - 2*pk;
}
}
else if ("pk_pos".Equals( qualifier ))
{
if (value is double)
{
double pk = (double) value;
valueHi = pk;
valueLo = pk - 2*pk;
}
}
else if ("pk_neg".Equals( qualifier ))
{
if (value is double)
{
double d = (double) value;
valueLo = d < 0 ? d : -1*d;
valueHi = d < 0 ? -1*d : d;
}
}
else if ("trms".Equals( qualifier ))
{
if (value is double)
{
double d = (double) value;
double pk = .707*d;
valueHi = pk;
valueLo = -1*pk;
}
}
else if ("av".Equals( qualifier ))
{
if (value is double)
{
double d = Math.Abs( (double) value );
double pk = d/.637;
valueHi = pk;
valueLo = -1*pk;
}
}
}
if (valueLo == null)
valueLo = value;
if (valueHi == null)
valueHi = value;
}