Home » openjdk-7 » javax.sound » sampled » [javadoc | source]
javax.sound.sampled
abstract public class: FloatControl [javadoc | source]
java.lang.Object
   javax.sound.sampled.Control
      javax.sound.sampled.FloatControl
A FloatControl object provides control over a range of floating-point values. Float controls are often represented in graphical user interfaces by continuously adjustable objects such as sliders or rotary knobs. Concrete subclasses of FloatControl implement controls, such as gain and pan, that affect a line's audio signal in some way that an application can manipulate. The FloatControl.Type inner class provides static instances of types that are used to identify some common kinds of float control.

The FloatControl abstract class provides methods to set and get the control's current floating-point value. Other methods obtain the possible range of values and the control's resolution (the smallest increment between returned values). Some float controls allow ramping to a new value over a specified period of time. FloatControl also includes methods that return string labels for the minimum, maximum, and midpoint positions of the control.

Nested Class Summary:
public static class  FloatControl.Type  An instance of the FloatControl.Type inner class identifies one kind of float control. Static instances are provided for the common types. 
Constructor:
 protected FloatControl(Type type,
    float minimum,
    float maximum,
    float precision,
    int updatePeriod,
    float initialValue,
    String units) 
    Constructs a new float control object with the given parameters. The labels for the minimum, maximum, and mid-point values are set to zero-length strings.
    Parameters:
    type - the kind of control represented by this float control object
    minimum - the smallest value permitted for the control
    maximum - the largest value permitted for the control
    precision - the resolution or granularity of the control. This is the size of the increment between discrete valid values.
    updatePeriod - the smallest time interval, in microseconds, over which the control can change from one discrete value to the next during a shift
    initialValue - the value that the control starts with when constructed
    units - the label for the units in which the control's values are expressed, such as "dB" or "frames per second"
    Throws:
    IllegalArgumentException - if {@code minimum} is greater than {@code maximum} or {@code initialValue} does not fall within the allowable range
 protected FloatControl(Type type,
    float minimum,
    float maximum,
    float precision,
    int updatePeriod,
    float initialValue,
    String units,
    String minLabel,
    String midLabel,
    String maxLabel) 
    Constructs a new float control object with the given parameters
    Parameters:
    type - the kind of control represented by this float control object
    minimum - the smallest value permitted for the control
    maximum - the largest value permitted for the control
    precision - the resolution or granularity of the control. This is the size of the increment between discrete valid values.
    updatePeriod - the smallest time interval, in microseconds, over which the control can change from one discrete value to the next during a shift
    initialValue - the value that the control starts with when constructed
    units - the label for the units in which the control's values are expressed, such as "dB" or "frames per second"
    minLabel - the label for the minimum value, such as "Left" or "Off"
    midLabel - the label for the midpoint value, such as "Center" or "Default"
    maxLabel - the label for the maximum value, such as "Right" or "Full"
    Throws:
    IllegalArgumentException - if {@code minimum} is greater than {@code maximum} or {@code initialValue} does not fall within the allowable range
Method from javax.sound.sampled.FloatControl Summary:
getMaxLabel,   getMaximum,   getMidLabel,   getMinLabel,   getMinimum,   getPrecision,   getUnits,   getUpdatePeriod,   getValue,   setValue,   shift,   toString
Methods from javax.sound.sampled.Control:
getType,   toString
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from javax.sound.sampled.FloatControl Detail:
 public String getMaxLabel() 
    Obtains the label for the maximum value, such as "Right" or "Full."
 public float getMaximum() 
    Obtains the maximum value permitted.
 public String getMidLabel() 
    Obtains the label for the mid-point value, such as "Center" or "Default."
 public String getMinLabel() 
    Obtains the label for the minimum value, such as "Left" or "Off."
 public float getMinimum() 
    Obtains the minimum value permitted.
 public float getPrecision() 
    Obtains the resolution or granularity of the control, in the units that the control measures. The precision is the size of the increment between discrete valid values for this control, over the set of supported floating-point values.
 public String getUnits() 
    Obtains the label for the units in which the control's values are expressed, such as "dB" or "frames per second."
 public int getUpdatePeriod() 
    Obtains the smallest time interval, in microseconds, over which the control's value can change during a shift. The update period is the inverse of the frequency with which the control updates its value during a shift. If the implementation does not support value shifting over time, it should set the control's value to the final value immediately and return -1 from this method.
 public float getValue() 
    Obtains this control's current value.
 public  void setValue(float newValue) 
    Sets the current value for the control. The default implementation simply sets the value as indicated. If the value indicated is greater than the maximum value, or smaller than the minimum value, an IllegalArgumentException is thrown. Some controls require that their line be open before they can be affected by setting a value.
 public  void shift(float from,
    float to,
    int microseconds) 
    Changes the control value from the initial value to the final value linearly over the specified time period, specified in microseconds. This method returns without blocking; it does not wait for the shift to complete. An implementation should complete the operation within the time specified. The default implementation simply changes the value to the final value immediately.
 public String toString() 
    Provides a string representation of the control