Edit C:\Program Files\Java\jdk1.8.0_121\javafx\scene\media\EqualizerBand.java
/* * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package javafx.scene.media; import javafx.beans.property.DoubleProperty; import javafx.beans.property.DoublePropertyBase; /** * The <code>EqualizerBand</code> class provides control for each band in the * {@link AudioEqualizer}. * * @see AudioEqualizer * @since JavaFX 2.0 */ public final class EqualizerBand { /** * Minimum possible gain value. * In the current implementation this value is <code>-24.0</code> dB. */ public static final double MIN_GAIN = com.sun.media.jfxmedia.effects.EqualizerBand.MIN_GAIN; /** * Maximum possible gain value. * In the current implementation this value is <code>12.0</code> dB. */ public static final double MAX_GAIN = com.sun.media.jfxmedia.effects.EqualizerBand.MAX_GAIN; /** * <code>EqualizerBand</code> default constructor. It creates an instance with * <code>centerFrequency</code>, <code>bandwidth</code> and <code>gain</code> set to 0. */ public EqualizerBand() {} /** * Custom <code>EqualizerBand</code> constructor. It creates an instance * from the <code>centerFrequency</code>, <code>bandwidth</code> and * <code>gain</code> parameters. The <code>gain</code> specifies the amount * of amplification (<code>gain > 0.0</code> dB) or attenuation * (<code>gain < 0.0</code> dB) to be applied to the center frequency of * the band. The bandwidth is the frequency spread between the upper and * lower edges of the equalizer transfer function which have half the dB gain * of the peak (center frequency). * * @param centerFrequency a positive value specifying the center * frequency of the band in Hertz. * @param bandwidth a positive value specifying the bandwidth of the band in Hertz. * @param gain the gain in decibels to be applied to the band in the range * [{@link #MIN_GAIN}, {@link #MAX_GAIN}] dB. */ public EqualizerBand(double centerFrequency, double bandwidth, double gain) { setCenterFrequency(centerFrequency); setBandwidth(bandwidth); setGain(gain); } /* * Package private write only property. * */ private final Object disposeLock = new Object(); private com.sun.media.jfxmedia.effects.EqualizerBand jfxBand; void setJfxBand(com.sun.media.jfxmedia.effects.EqualizerBand jfxBand) { synchronized (disposeLock) { this.jfxBand = jfxBand; } } /** * Center frequency of the band in Hertz. The default value is * <code>0.0</code> Hz. */ private DoubleProperty centerFrequency; /** * Set the center frequency on the band in Hertz. * @param value the center frequency which must be a positive value in Hz. */ public final void setCenterFrequency(double value) { centerFrequencyProperty().set(value); } /** * Retrieve the center frequency of the band. * @return the center frequency on the band in Hertz. */ public final double getCenterFrequency() { return centerFrequency == null ? 0.0 : centerFrequency.get(); } public DoubleProperty centerFrequencyProperty() { if (centerFrequency == null) { centerFrequency = new DoublePropertyBase() { @Override protected void invalidated() { synchronized (disposeLock) { double value = centerFrequency.get(); if (jfxBand != null && value > 0.0) { jfxBand.setCenterFrequency(value); } } } @Override public Object getBean() { return EqualizerBand.this; } @Override public String getName() { return "centerFrequency"; } }; } return centerFrequency; } /** * Bandwidth of the band in Hertz. The default value is * <code>0.0</code> Hz. */ private DoubleProperty bandwidth; /** * Set the bandwidth of the band in Hertz. * @param value the bandwidth which must be a positive value in Hz. */ public final void setBandwidth(double value) { bandwidthProperty().set(value); } /** * Retrieve the bandwidth of the band. * @return the bandwidth of the band in Hertz. */ public final double getBandwidth() { return bandwidth == null ? 0.0 : bandwidth.get(); } public DoubleProperty bandwidthProperty() { if (bandwidth == null) { bandwidth = new DoublePropertyBase() { @Override protected void invalidated() { synchronized (disposeLock) { double value = bandwidth.get(); if (jfxBand != null && value > 0.0) { jfxBand.setBandwidth(value); } } } @Override public Object getBean() { return EqualizerBand.this; } @Override public String getName() { return "bandwidth"; } }; } return bandwidth; } /** * The gain to be applied to the frequencies of this band. The default value * is <code>0.0</code> dB. */ private DoubleProperty gain; /** * Set the gain of the band in dB. Gain property is limited to be * within the interval {@link #MIN_GAIN} to {@link #MAX_GAIN}. * @param value the gain in the range * [{@link #MIN_GAIN}, {@link #MAX_GAIN}]. */ public final void setGain(double value) { gainProperty().set(value); } /** * Retrieve the gain to be applied to the band. * @return the gain of the band in dB. */ public final double getGain() { return gain == null ? 0.0 : gain.get(); } public DoubleProperty gainProperty() { if (gain == null) { gain = new DoublePropertyBase() { @Override protected void invalidated() { synchronized (disposeLock) { if (jfxBand != null) { jfxBand.setGain(gain.get()); } } } @Override public Object getBean() { return EqualizerBand.this; } @Override public String getName() { return "gain"; } }; } return gain; } }
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de