void Delay::setParameter(int parameter, float value)
{
#if !defined(ASSUME_SAFE_RANGES)
  value = common::cclampf(value,0.0f,1.0f);
#endif
  switch(parameter)
  {
    case FX::k_delay_mode:
      setMode(value);
      break;

    case FX::k_delay_mix:
      //dummy
      break;

    case FX::k_delay_time:
      setDelayTime(value);
      break;

    case FX::k_delay_feedback:
      setFeedback(value);
      break;

    case FX::k_delay_lowpass_cutoff:
      setLowpassCutoff(value);
      break;

    case FX::k_delay_highpass_cutoff:
      setHighpassCutoff(value);
      break;

    default:
      break;
  }
}
ChromoConditions::ChromoConditions(double iColumnLength,
                                   double iColumnDiameter,
                                   double iColumnPoreSize,
                                   Gradient iGradient,
                                   double iSecondSolventConcentrationA,
                                   double iSecondSolventConcentrationB,
                                   double iDelayTime,
                                   double iFlowRate,
                                   double iDV,
                                   double iColumnRelativeStrength,
                                   double iColumnVpToVtot,
                                   double iColumnPorosity,
                                   double iTemperature)
                                   throw(ChromoConditionsException)
{
    // Set an empty gradient to prevent recalculation of SSConcentrations.
    mGradient = Gradient();
    setMixingCorrection(false);
    setColumnLength(iColumnLength);
    setColumnDiameter(iColumnDiameter);
    setColumnPoreSize(iColumnPoreSize);
    setColumnVpToVtot(iColumnVpToVtot);
    setColumnPorosity(iColumnPorosity);
    setTemperature(iTemperature);
    setColumnRelativeStrength(iColumnRelativeStrength);
    setFlowRate(iFlowRate);
    setDV(iDV);
    setDelayTime(iDelayTime);
    setSecondSolventConcentrationA(iSecondSolventConcentrationA);
    setSecondSolventConcentrationB(iSecondSolventConcentrationB);
    setGradient(iGradient);
}