Package net.sf.freecol.common.option
Class AudioMixerOption
- java.lang.Object
-
- net.sf.freecol.common.model.FreeColObject
-
- net.sf.freecol.common.model.FreeColSpecObject
-
- net.sf.freecol.common.option.AbstractOption<AudioMixerOption.MixerWrapper>
-
- net.sf.freecol.common.option.AudioMixerOption
-
- All Implemented Interfaces:
java.lang.Cloneable
,java.lang.Comparable<FreeColObject>
,ObjectWithId
,Option<AudioMixerOption.MixerWrapper>
public class AudioMixerOption extends AbstractOption<AudioMixerOption.MixerWrapper>
Option for selecting an audio mixer.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AudioMixerOption.MixerWrapper
A wrapper for the mixer, including the Mixer.Info including a potentially null value.
-
Field Summary
Fields Modifier and Type Field Description private static java.util.List<AudioMixerOption.MixerWrapper>
audioMixers
The available audio mixers.static java.lang.String
AUTO_NAME
Autodetect the mixer?private static javax.sound.sampled.Mixer
AUTODETECTED_MIXER
The autodetected mixer.private static AudioMixerOption.MixerWrapper
DEFAULT_MIXER_WRAPPER
The default mixer wrapper around the autodetected mixer.private static java.util.logging.Logger
logger
static java.lang.String
TAG
private AudioMixerOption.MixerWrapper
value
The value of this option.-
Fields inherited from class net.sf.freecol.common.option.AbstractOption
ACTION_TAG, DEFAULT_VALUE_TAG, isDefined
-
Fields inherited from class net.sf.freecol.common.model.FreeColObject
ARRAY_SIZE_TAG, DEFAULT_CLASS_INDEX, fcoComparator, ID_ATTRIBUTE_TAG, PARTIAL_ATTRIBUTE_TAG, VALUE_TAG
-
-
Constructor Summary
Constructors Constructor Description AudioMixerOption(Specification specification)
Creates a newAudioMixerOption
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AudioMixerOption
cloneOption()
Clone this option.java.util.List<AudioMixerOption.MixerWrapper>
getChoices()
Gets a list of the available audio mixers.private AudioMixerOption.MixerWrapper
getMixerWrapperByName(java.lang.String name)
Gets a mixer wrapper by name.AudioMixerOption.MixerWrapper
getValue()
Gets the value of this option.java.lang.String
getXMLTagName()
Get the serialization tag for this object.protected void
setValue(java.lang.String valueString, java.lang.String defaultValueString)
Sets the value of this option from the given string representation.void
setValue(AudioMixerOption.MixerWrapper newValue)
Sets the value of this option.java.lang.String
toString()
protected void
writeAttributes(FreeColXMLWriter xw)
Write the attributes of this object to a stream.-
Methods inherited from class net.sf.freecol.common.option.AbstractOption
generateChoices, getEnabledBy, getGroup, isNullValueOK, readAttributes, readOption, setGroup, setValues
-
Methods inherited from class net.sf.freecol.common.model.FreeColSpecObject
copyIn, getSpecification, setSpecification
-
Methods inherited from class net.sf.freecol.common.model.FreeColObject
addAbility, addFeatures, addModifier, addPropertyChangeListener, addPropertyChangeListener, apply, apply, applyModifiers, applyModifiers, arrayKey, compareIds, compareTo, containsAbilityKey, containsModifierKey, copy, copy, copy, copy, copyInCast, dumpObject, equals, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAbilities, getAbilities, getAbilities, getAbilities, getClassIndex, getDefenceModifiers, getDisplayObject, getFeatureContainer, getFreeColObjectClass, getFreeColObjectClassByName, getGame, getId, getIdNumber, getIdType, getIdTypeByName, getModifiers, getModifiers, getModifiers, getModifiers, getObjectClassIndex, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeSupport, getSortedAbilities, getSortedModifiers, getSuffix, getSuffix, hasAbility, hasAbility, hasAbility, hashCode, hasListeners, hasModifier, hasModifier, hasModifier, idEquals, invokeMethod, logFreeColObjects, readChild, readChildren, readFromXML, readFromXMLPartial, removeAbilities, removeAbility, removeFeatures, removeModifier, removeModifiers, removePropertyChangeListener, removePropertyChangeListener, save, save, save, save, serialize, serialize, serialize, serialize, setGame, setId, toXML, toXML, toXMLPartial, toXMLPartial, writeChildren
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.sf.freecol.common.ObjectWithId
getId
-
Methods inherited from interface net.sf.freecol.common.option.Option
readFromXML, toXML
-
-
-
-
Field Detail
-
logger
private static java.util.logging.Logger logger
-
TAG
public static final java.lang.String TAG
- See Also:
- Constant Field Values
-
AUTO_NAME
public static final java.lang.String AUTO_NAME
Autodetect the mixer?
-
AUTODETECTED_MIXER
private static final javax.sound.sampled.Mixer AUTODETECTED_MIXER
The autodetected mixer.
-
DEFAULT_MIXER_WRAPPER
private static final AudioMixerOption.MixerWrapper DEFAULT_MIXER_WRAPPER
The default mixer wrapper around the autodetected mixer.
-
audioMixers
private static final java.util.List<AudioMixerOption.MixerWrapper> audioMixers
The available audio mixers.
-
value
private AudioMixerOption.MixerWrapper value
The value of this option.
-
-
Constructor Detail
-
AudioMixerOption
public AudioMixerOption(Specification specification)
Creates a newAudioMixerOption
.- Parameters:
specification
- TheSpecification
to refer to.
-
-
Method Detail
-
getMixerWrapperByName
private AudioMixerOption.MixerWrapper getMixerWrapperByName(java.lang.String name)
Gets a mixer wrapper by name.- Parameters:
name
- The mixer wrapper name.- Returns:
- The mixer wrapper with the name given, or null if none.
-
getChoices
public java.util.List<AudioMixerOption.MixerWrapper> getChoices()
Gets a list of the available audio mixers.- Returns:
- The available mixers.
-
cloneOption
public AudioMixerOption cloneOption()
Clone this option.- Specified by:
cloneOption
in interfaceOption<AudioMixerOption.MixerWrapper>
- Specified by:
cloneOption
in classAbstractOption<AudioMixerOption.MixerWrapper>
- Returns:
- A clone of this option.
-
getValue
public final AudioMixerOption.MixerWrapper getValue()
Gets the value of this option.- Specified by:
getValue
in interfaceOption<AudioMixerOption.MixerWrapper>
- Specified by:
getValue
in classAbstractOption<AudioMixerOption.MixerWrapper>
- Returns:
- The value of this
Option
.
-
setValue
public final void setValue(AudioMixerOption.MixerWrapper newValue)
Sets the value of this option.- Specified by:
setValue
in interfaceOption<AudioMixerOption.MixerWrapper>
- Specified by:
setValue
in classAbstractOption<AudioMixerOption.MixerWrapper>
- Parameters:
newValue
- The new value of thisOption
.
-
setValue
protected void setValue(java.lang.String valueString, java.lang.String defaultValueString)
Sets the value of this option from the given string representation. Both parameters must not be null at the same time. This method does nothing. Override it if the option has a suitable string representation.- Overrides:
setValue
in classAbstractOption<AudioMixerOption.MixerWrapper>
- Parameters:
valueString
- The string representation of the value of thisOption
.defaultValueString
- The string representation of the default value of thisOption
.
-
writeAttributes
protected void writeAttributes(FreeColXMLWriter xw) throws javax.xml.stream.XMLStreamException
Write the attributes of this object to a stream. To be overridden if required by any object that has attributes and uses the toXML(FreeColXMLWriter, String) call.- Overrides:
writeAttributes
in classAbstractOption<AudioMixerOption.MixerWrapper>
- Parameters:
xw
- TheFreeColXMLWriter
to write to.- Throws:
javax.xml.stream.XMLStreamException
- if there are any problems writing to the stream.
-
getXMLTagName
public java.lang.String getXMLTagName()
Get the serialization tag for this object.- Specified by:
getXMLTagName
in classFreeColObject
- Returns:
- The tag.
-
toString
public java.lang.String toString()
- Specified by:
toString
in interfaceOption<AudioMixerOption.MixerWrapper>
- Overrides:
toString
in classFreeColObject
-
-