public abstract class Probe extends ModelAgentBase
ModelComponent.NavpanelVisibility| Modifier and Type | Field and Description | 
|---|---|
| static PropertyList | myProps | 
| static boolean | useOldSaveMethod | 
| static boolean | writeStartStopTimeInSeconds | 
enforceUniqueCompositeNames, enforceUniqueNames, myNumber, NULL_OBJ, useCompactPathNames| Constructor and Description | 
|---|
| Probe() | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract void | apply(double t)Called when the probe is being applied to a model | 
| ComponentState | createState(ComponentState prevState)Factory routine to create a state object for this component, which can
 then be used as an argument for  HasState.setState(artisynth.core.modelbase.ComponentState)andHasState.getState(artisynth.core.modelbase.ComponentState). | 
| PropertyList | getAllPropertyInfo()Returns a list giving static information about all properties exported by
 this object. | 
| java.io.File | getAttachedFile() | 
| java.lang.String | getAttachedFileName() | 
| java.util.Iterator<? extends HierarchyNode> | getChildren() | 
| static double | getDefaultScale() | 
| static double | getDefaultStartTime() | 
| static double | getDefaultStopTime() | 
| static double | getDefaultUpdateInterval() | 
| double | getDuration() | 
| void | getInitialState(ComponentState newstate,
               ComponentState oldstate)Gets an initial state for this component and returns the value in
  state. | 
| Property | getProperty(java.lang.String name)Returns a property associated with a specified path name. | 
| double | getScale() | 
| double | getStartTime() | 
| void | getState(ComponentState state)Get the current state of this component. | 
| double | getStopTime() | 
| double | getTimelineTime(double t) | 
| java.lang.Integer | getTrack()Returns the Timeline track number associated with this probe. | 
| double | getUpdateInterval() | 
| double | getVirtualTime(double sec) | 
| boolean | hasAttachedFile() | 
| boolean | hasChildren() | 
| boolean | hasState()Queries if this component has state. | 
| boolean | isAttachedFileRelative() | 
| boolean | isCloneable() | 
| boolean | isEventTime(double t) | 
| boolean | isInput()Returns true if this probe is an input probe, and false otherwise. | 
| boolean | isPrintable() | 
| boolean | isScalable() | 
| boolean | isSettable() | 
| void | load() | 
| double | nextEventTime(double t) | 
| void | print(double sec) | 
| void | save() | 
| void | scan(ReaderTokenizer rtok,
    java.lang.Object ref)Scans this element from a ReaderTokenizer. | 
| void | setAttachedFileName(java.lang.String fileName) | 
| void | setData(double sec) | 
| void | setInterval(double startTime,
           double stopTime) | 
| void | setName(java.lang.String name)Sets the name of this component. | 
| void | setScalable(boolean enable) | 
| void | setScale(double s) | 
| void | setStartStopTimes(double startTime,
                 double stopTime) | 
| void | setStartTime(double t) | 
| void | setState(ComponentState state)Set the state of this component. | 
| void | setStopTime(double t) | 
| void | setTrack(int num)Sets the Timeline track number associated with this probe. | 
| void | setUpdateInterval(double t) | 
dispose, finalize, getModel, initialize, isActive, setActive, setModel, setModelFromComponent, writecheckFlag, checkName, checkNameUniqueness, clearFlag, clone, connectToHierarchy, copy, createTempFlag, disconnectFromHierarchy, getGrandParent, getHardReferences, getName, getNameRange, getNavpanelVisibility, getNavpanelVisibility, getNumber, getParent, getSoftReferences, isConnectedToHierarchy, isFixed, isMarked, isSelected, isWritable, makeValidName, makeValidName, notifyParentOfChange, postscan, printReferences, recursivelyContained, recursivelyContains, removeTempFlag, setFixed, setFlag, setMarked, setNavpanelVisibility, setNavpanelVisibility, setNumber, setParent, setSelected, updateReferencesequals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitconnectToHierarchy, disconnectFromHierarchy, getHardReferences, getName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, isFixed, isMarked, isSelected, notifyParentOfChange, postscan, setFixed, setMarked, setNumber, setParent, setSelected, updateReferencesisWritablepublic static boolean useOldSaveMethod
public static boolean writeStartStopTimeInSeconds
public static PropertyList myProps
public PropertyList getAllPropertyInfo()
HasPropertiesgetAllPropertyInfo in interface HasPropertiesgetAllPropertyInfo in class ModelAgentBasepublic static double getDefaultStartTime()
public static double getDefaultStopTime()
public static double getDefaultScale()
public static double getDefaultUpdateInterval()
public Property getProperty(java.lang.String name)
ModelComponentBase.' characters. A sub-property
 exists if the value of a property is itself an object which exports
 properties. It is only possible to obtain a sub-property handle if each of
 its ancestor properties exports their values by reference.getProperty in interface HasPropertiesgetProperty in class ModelComponentBasename - name of the desired property or sub-propertypublic double getStartTime()
public void setStartTime(double t)
public double getStopTime()
public void setStopTime(double t)
public double getDuration()
public void setInterval(double startTime,
                        double stopTime)
public void setStartStopTimes(double startTime,
                              double stopTime)
public double getScale()
public void setScale(double s)
public void setScalable(boolean enable)
public boolean isScalable()
public double getUpdateInterval()
public void setUpdateInterval(double t)
public void setName(java.lang.String name)
notifyParentOfChange with a NameChangeEvent so that it's
 parent can update the name map entry and other ancestors can adjust for
 the new name.
 
 
 Component names can be specified as null. However, if not null, they
 should have non-zero length and should not begin with a digit or contain
 the characters '.' or '/'. Implementations can use ModelComponentBase.checkName() to determine if a proposed name is valid.
setName in interface ModelComponentsetName in class ModelComponentBasename - new component namepublic boolean hasChildren()
hasChildren in interface HierarchyNodehasChildren in class ModelComponentBasepublic java.util.Iterator<? extends HierarchyNode> getChildren()
getChildren in interface HierarchyNodegetChildren in class ModelComponentBasepublic boolean isEventTime(double t)
public double nextEventTime(double t)
public abstract void apply(double t)
public boolean isCloneable()
public void save()
          throws java.io.IOException
java.io.IOExceptionpublic void load()
          throws java.io.IOException
java.io.IOExceptionpublic double getVirtualTime(double sec)
public double getTimelineTime(double t)
public void scan(ReaderTokenizer rtok, java.lang.Object ref) throws java.io.IOException
ModelComponentBasewrite.scan in interface ModelComponentscan in interface Scannablescan in class ModelComponentBasertok - Tokenizer from which to scan the elementref - optional reference object which can be used for resolving references to
 other objectsjava.io.IOException - if an I/O or formatting error occuredpublic boolean isAttachedFileRelative()
public java.io.File getAttachedFile()
public void setAttachedFileName(java.lang.String fileName)
public java.lang.String getAttachedFileName()
public boolean hasAttachedFile()
public void setTrack(int num)
num - new track numberpublic java.lang.Integer getTrack()
public boolean isInput()
public boolean isSettable()
public void setData(double sec)
public boolean isPrintable()
public void print(double sec)
public boolean hasState()
ModelComponenthasState in interface ModelComponenthasState in class ModelComponentBasetrue if this component has statepublic ComponentState createState(ComponentState prevState)
HasStateHasState.setState(artisynth.core.modelbase.ComponentState) and HasState.getState(artisynth.core.modelbase.ComponentState). The state object does not have to be set to the component's
 current state.  If the component does not have any state information,
 this method should return an instance of
 EmptyState.prevState - If non-null, supplies a previous state that
 was created by this component and which can be used to provide
 pre-sizing hints.public void getState(ComponentState state)
HasStatestate - receives the state informationpublic void setState(ComponentState state)
HasStatestate - state to be copiedpublic void getInitialState(ComponentState newstate, ComponentState oldstate)
HasStatestate. If prevstate is non-null, then it is
 assumed to contain a previous initial state value returned by this
 method, and state should be set to be as consistent with
 this previous state as possible. For example, suppose that this component
 currently contains subcomponents A, B, and C, while the
 prevstate contains the state from a previous time when it
 had components B, C, and D. Then state should contain
 substate values for B and C that are taken from
 prevstate. To facilitate this, the information returned in
 state should contain additional information such as the
 identities of all the (current) sub-components.newstate - receives the state informationoldstate - previous state information; may be null.