stella.parameter
Class TargetFunction

java.lang.Object
  extended by util.PropertyContainer
      extended by util.PropertyResources
          extended by util.PropertyBundles
              extended by stella.parameter.AbstractParameter
                  extended by stella.parameter.AbstractTargetParameter
                      extended by stella.parameter.AbstractTargetValue
                          extended by stella.parameter.TargetFunction
All Implemented Interfaces:
Cloneable, Parameter, TargetDependingValue, ParameterDepending, TargetDepending, TargetDependingParameter, Value, ExitCleaning, Initializable, LocalizedSupplying, PropertySupplying, Reloadable, ResourceSupplying
Direct Known Subclasses:
TargetFilterFunction

public class TargetFunction
extends AbstractTargetValue
implements ParameterDepending, Reloadable

A parameter that calculates its actual target value (like an exposure time) as a function of an other target depending parameter like the airmass. The correct use of this parameter is as follows:

An example would be to have a parameter properties like:
   param.prop:
     forsetup=expose
     forparameter=AirmassTarget
     parametername=AdjustingExposureTime
                    ...
   target.xml:
     
     Who cares?
     
        FunctionClass
        StepFunction
     
     
        FunctionDefinition
        1,2;1.25,3;
     
     


Nested Class Summary
 
Nested classes/interfaces inherited from class util.PropertyResources
PropertyResources.URLResource
 
Field Summary
private  Value argument
          The target value that gives us the arguemtn to the function.
static String KEY_FORPARAMETER
          The name of the airmass of the target parameter.
static String KEY_FORSETUP
          The name of the parameter that gives the ra of the first point.
private  Function z
          The function we evaluate.
 
Fields inherited from class stella.parameter.AbstractTargetParameter
KEY_INDEX
 
Fields inherited from class stella.parameter.AbstractParameter
KEY_FORMAT, KEY_NAME, KEY_PRESERVE, UNKNOWN
 
Fields inherited from class util.PropertyBundles
KEY_LOCALECOUNTRY, KEY_LOCALELANGUAGE, KEY_RESOURCEBUNDLES
 
Fields inherited from class util.PropertyResources
KEY_NOINITONCREATE, localurl, locate, POSTFIX_DIR, POSTFIX_EXT, POSTFIX_FILE, POSTFIX_LIST, POSTFIX_URL, urlset
 
Fields inherited from class util.PropertyContainer
KEY_LISTSEPARATOR, KEY_MAPKEYVALUECHAR, KEY_MAPSEPARATOR
 
Fields inherited from interface util.PropertySupplying
CONFIG, KEY_CLASS
 
Fields inherited from interface util.ResourceSupplying
KEY_URLRESOURCES, KEY_URLUSECONFIG, KEY_URLUSECURRENT, KEY_URLUSEHOME
 
Constructor Summary
TargetFunction(Map<String,String> prop)
          Constructs a new global representing the actual object distance to some other point in the sky.
 
Method Summary
private  Function extractFunction(TargetDefinition star)
          From a target, we rty to extract the function.
 Number getForTarget(TargetDefinition star)
          Gets the declination of the target star.
protected  String getSetupId(TargetDefinition star)
          The basic functionality returns my properties setting of the KEY_FORSETUP key.
 Number getValue()
          Returns the ra of the actual target.
 void registerParameter(Parameter what)
          Registers the parameters giving the ra, dec of two points.
 void registerTarget(TargetDefinition star)
          Registers a target to this parameter.
 double rescanned(String key, String old, String newval)
          As any parameter depending instance we fail if the parameter we depend on is now a different one.
 Number setValue(Number val)
          Sets the distance.
 
Methods inherited from class stella.parameter.AbstractTargetValue
get, set
 
Methods inherited from class stella.parameter.AbstractTargetParameter
getAsStar, getConstant, getFormattedFor, getSetup
 
Methods inherited from class stella.parameter.AbstractParameter
createParameter, delivers, exit, getFormatted, getFormatted, getName, getPreserveFile, getString, getString, init, register, setName, toString
 
Methods inherited from class util.PropertyBundles
clone, getLocalized, getLocalized, getLocalizedString, getLocalizedString, loadResource
 
Methods inherited from class util.PropertyResources
createFrom, createFrom, createFrom, getApplet, getAsResources, getLocalClassLoader, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, keyCreate, keyCreate, reload, setApplet
 
Methods inherited from class util.PropertyContainer
augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, reload, removeProperty, setObject, setProperties, setProperty, stringProperties
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface util.Reloadable
reload
 
Methods inherited from interface stella.TargetDependingParameter
getFormattedFor
 
Methods inherited from interface stella.Parameter
getFormatted, getName, getString
 
Methods inherited from interface util.PropertySupplying
defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringProperties
 
Methods inherited from interface util.Initializable
init
 
Methods inherited from interface util.ResourceSupplying
getResource, getResourceAsStream, getResources
 

Field Detail

KEY_FORSETUP

public static final String KEY_FORSETUP
The name of the parameter that gives the ra of the first point.

See Also:
Constant Field Values

KEY_FORPARAMETER

public static final String KEY_FORPARAMETER
The name of the airmass of the target parameter.

See Also:
Constant Field Values

z

private Function z
The function we evaluate.


argument

private Value argument
The target value that gives us the arguemtn to the function.

Constructor Detail

TargetFunction

public TargetFunction(Map<String,String> prop)
Constructs a new global representing the actual object distance to some other point in the sky.

Method Detail

rescanned

public double rescanned(String key,
                        String old,
                        String newval)
As any parameter depending instance we fail if the parameter we depend on is now a different one.

Specified by:
rescanned in interface Reloadable
Overrides:
rescanned in class AbstractParameter

registerParameter

public void registerParameter(Parameter what)
Registers the parameters giving the ra, dec of two points. No checks for types are made, only the parameter name counts.

Specified by:
registerParameter in interface ParameterDepending

registerTarget

public void registerTarget(TargetDefinition star)
Registers a target to this parameter. We scan for the setup of the given name, and try to parse a Function out of it.

Specified by:
registerTarget in interface TargetDepending

getForTarget

public Number getForTarget(TargetDefinition star)
Gets the declination of the target star.

Specified by:
getForTarget in interface TargetDependingValue
Specified by:
getForTarget in interface TargetDependingParameter
Returns:
A Double holding the target star's declination.

getValue

public Number getValue()
Returns the ra of the actual target. Returns null if the ra has not been set previously.

Specified by:
getValue in interface Value

setValue

public Number setValue(Number val)
                throws UnsupportedOperationException
Sets the distance. This is a read-only variable, therefore this method throws an UnsupportedOperationException.

Specified by:
setValue in interface Value
Throws:
UnsupportedOperationException

getSetupId

protected String getSetupId(TargetDefinition star)
The basic functionality returns my properties setting of the KEY_FORSETUP key. Target functions that need more flexibilty should override here and provide their own implementation of retrieving the target specific ID. A simple case would be to add a filter name here, like return super.getSetupId()+filterparameter.get().toString()


extractFunction

private Function extractFunction(TargetDefinition star)
From a target, we rty to extract the function.