Interface Delay

All Superinterfaces:
X3DChildNode, X3DNode, X3DSoundNode, X3DSoundProcessingNode, X3DTimeDependentNode
All Known Implementing Classes:
Delay

public interface Delay extends X3DSoundProcessingNode
Delay causes a time delay between the arrival of input data and subsequent propagation to the output.

X3D node tooltip: (X3D version 4.0 draft) [X3DSoundProcessingNode] Delay causes a time delay between the arrival of input data and subsequent propagation to the output.
Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
See Also:
SAI Java Specification, X3D Abstract Specification: Delay, X3D Tooltips: Delay, X3D Scene Authoring Hints
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addChildren​(X3DNode[] newValue)
    Add array of children nodes to array of existing nodes (if any).
    int
    Provide int value from outputOnly SFInt32 field named channelCount.
    Provide String enumeration value (baseType SFString) ["max" | "clamped-max" | "explicit"] from inputOutput SFString field named channelCountMode.
    Provide String enumeration value (baseType SFString) ["speakers" | "discrete"] from inputOutput SFString field named channelInterpretation.
    Provide array of org.web3d.x3d.sai.Core.X3DNode results (using an array consisting of properly typed nodes or ProtoInstances) with acceptable node types limited to Analyser|AudioClip|AudioDestination|BiquadFilter|BufferAudioSource|ChannelMerger|ChannelSelector|ChannelSplitter|Convolver|Delay|DynamicsCompressor|Gain|ListenerPointSource|MicrophoneSource|MovieTexture|OscillatorSource|Sound|SpatialSound|StreamAudioDestination|StreamAudioSource|WaveShaper, from inputOutput MFNode field children.
    double
    Provide double value in seconds within allowed range of [0,infinity) from inputOutput SFTime field named delayTime.
    Provide String value from inputOutput SFString field named description.
    double
    Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named elapsedTime.
    boolean
    Provide boolean value from inputOutput SFBool field named enabled.
    float
    Provide float value from inputOutput SFFloat field named gain.
    boolean
    Provide boolean value from outputOnly SFBool field named isActive.
    boolean
    Provide boolean value from outputOnly SFBool field named isPaused.
    double
    Provide double value in seconds within allowed range of [0,infinity) from inputOutput SFTime field named maxDelayTime.
    Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    double
    Provide double value in seconds from inputOutput SFTime field named pauseTime.
    double
    Provide double value in seconds from inputOutput SFTime field named resumeTime.
    double
    Provide double value in seconds from inputOutput SFTime field named startTime.
    double
    Provide double value in seconds from inputOutput SFTime field named stopTime.
    double
    Provide double value in seconds within allowed range of [0,infinity) from inputOutput SFTime field named tailTime.
    Accessor method to assign String enumeration value ("max" | "clamped-max" | "explicit") to inputOutput SFString field named channelCountMode.
    Accessor method to assign String enumeration value ("speakers" | "discrete") to inputOutput SFString field named channelInterpretation.
    void
    setChildren​(X3DNode newValue)
    Set single children node, replacing prior array of existing nodes (if any).
    setChildren​(X3DNode[] newValue)
    Accessor method to assign org.web3d.x3d.sai.Core.X3DNode array (using an array consisting of properly typed nodes or ProtoInstances) to inputOutput MFNode field children.
    setDelayTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named delayTime.
    setDescription​(String newValue)
    Accessor method to assign String value to inputOutput SFString field named description.
    setEnabled​(boolean newValue)
    Accessor method to assign boolean value to inputOutput SFBool field named enabled.
    setGain​(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named gain.
    setMaxDelayTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named maxDelayTime.
    Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    setPauseTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named pauseTime.
    setResumeTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named resumeTime.
    setStartTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named startTime.
    setStopTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named stopTime.
    setTailTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named tailTime.
  • Method Details

    • getChannelCount

      int getChannelCount()
      Provide int value from outputOnly SFInt32 field named channelCount.

      Tooltip: [0,+infinity) channelCount reports number of channels provided by input nodes.
      Specified by:
      getChannelCount in interface X3DSoundProcessingNode
      Returns:
      value of channelCount field
    • getChannelCountMode

      String getChannelCountMode()
      Provide String enumeration value (baseType SFString) ["max" | "clamped-max" | "explicit"] from inputOutput SFString field named channelCountMode.

      Tooltip: channelCountMode determines how individual channels are counted when up-mixing and down-mixing connections to any inputs.
      Specified by:
      getChannelCountMode in interface X3DSoundProcessingNode
      Returns:
      value of channelCountMode field
    • setChannelCountMode

      Delay setChannelCountMode(String newValue)
      Accessor method to assign String enumeration value ("max" | "clamped-max" | "explicit") to inputOutput SFString field named channelCountMode.

      Tooltip: channelCountMode determines how individual channels are counted when up-mixing and down-mixing connections to any inputs.
      Specified by:
      setChannelCountMode in interface X3DSoundProcessingNode
      Parameters:
      newValue - is new value for the channelCountMode field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getChannelInterpretation

      String getChannelInterpretation()
      Provide String enumeration value (baseType SFString) ["speakers" | "discrete"] from inputOutput SFString field named channelInterpretation.

      Tooltip: channelInterpretation determines how individual channels are treated when up-mixing and down-mixing connections to any inputs.
      Specified by:
      getChannelInterpretation in interface X3DSoundProcessingNode
      Returns:
      value of channelInterpretation field
    • setChannelInterpretation

      Delay setChannelInterpretation(String newValue)
      Accessor method to assign String enumeration value ("speakers" | "discrete") to inputOutput SFString field named channelInterpretation.

      Tooltip: channelInterpretation determines how individual channels are treated when up-mixing and down-mixing connections to any inputs.
      Specified by:
      setChannelInterpretation in interface X3DSoundProcessingNode
      Parameters:
      newValue - is new value for the channelInterpretation field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getChildren

      X3DNode[] getChildren()
      Provide array of org.web3d.x3d.sai.Core.X3DNode results (using an array consisting of properly typed nodes or ProtoInstances) with acceptable node types limited to Analyser|AudioClip|AudioDestination|BiquadFilter|BufferAudioSource|ChannelMerger|ChannelSelector|ChannelSplitter|Convolver|Delay|DynamicsCompressor|Gain|ListenerPointSource|MicrophoneSource|MovieTexture|OscillatorSource|Sound|SpatialSound|StreamAudioDestination|StreamAudioSource|WaveShaper, from inputOutput MFNode field children.

      Tooltip: [X3DSoundChannelNode|X3DSoundProcessingNode|X3DSoundSourceNode] The children field specifies audio-graph sound sources providing input signals for this node. If multiple input signals are provided by the inputschildren field, all channels are mixed together and merged prior to presentation.
      • Hint: can be original (DEF) or USE nodes.


      Warning: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to Analyser|AudioClip|AudioDestination|BiquadFilter|BufferAudioSource|ChannelMerger|ChannelSelector|ChannelSplitter|Convolver|Delay|DynamicsCompressor|Gain|ListenerPointSource|MicrophoneSource|MovieTexture|OscillatorSource|Sound|SpatialSound|StreamAudioDestination|StreamAudioSource|WaveShaper.
      Returns:
      value of children field
      See Also:
      Analyser, AudioClip, AudioDestination, BiquadFilter, BufferAudioSource, ChannelMerger, ChannelSelector, ChannelSplitter, Convolver, Delay, DynamicsCompressor, Gain, ListenerPointSource, MicrophoneSource, MovieTexture, OscillatorSource, Sound, SpatialSound, StreamAudioDestination, StreamAudioSource, WaveShaper
    • setChildren

      Delay setChildren(X3DNode[] newValue)
      Accessor method to assign org.web3d.x3d.sai.Core.X3DNode array (using an array consisting of properly typed nodes or ProtoInstances) to inputOutput MFNode field children.

      Tooltip: [X3DSoundChannelNode|X3DSoundProcessingNode|X3DSoundSourceNode] The children field specifies audio-graph sound sources providing input signals for this node. If multiple input signals are provided by the inputschildren field, all channels are mixed together and merged prior to presentation.
      • Hint: can be original (DEF) or USE nodes.


      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to Analyser|AudioClip|AudioDestination|BiquadFilter|BufferAudioSource|ChannelMerger|ChannelSelector|ChannelSplitter|Convolver|Delay|DynamicsCompressor|Gain|ListenerPointSource|MicrophoneSource|MovieTexture|OscillatorSource|Sound|SpatialSound|StreamAudioDestination|StreamAudioSource|WaveShaper.
      Parameters:
      newValue - is new value for the children field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • addChildren

      void addChildren(X3DNode[] newValue)
      Add array of children nodes to array of existing nodes (if any).

      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to Analyser|AudioClip|AudioDestination|BiquadFilter|BufferAudioSource|ChannelMerger|ChannelSelector|ChannelSplitter|Convolver|Delay|DynamicsCompressor|Gain|ListenerPointSource|MicrophoneSource|MovieTexture|OscillatorSource|Sound|SpatialSound|StreamAudioDestination|StreamAudioSource|WaveShaper.
      Parameters:
      newValue - is new value array to be appended the children field.
    • setChildren

      void setChildren(X3DNode newValue)
      Set single children node, replacing prior array of existing nodes (if any).
      Parameters:
      newValue - is new node for the children field
    • getDelayTime

      double getDelayTime()
      Provide double value in seconds within allowed range of [0,infinity) from inputOutput SFTime field named delayTime.

      Tooltip: [0,+infinity) delayTime is duration of delay (in seconds) to apply. *
      Returns:
      value of delayTime field
    • setDelayTime

      Delay setDelayTime(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named delayTime.

      Tooltip: [0,+infinity) delayTime is duration of delay (in seconds) to apply. *
      Parameters:
      newValue - is new value for the delayTime field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getDescription

      String getDescription()
      Provide String value from inputOutput SFString field named description.

      Tooltip: Author-provided prose that describes intended purpose of the url asset.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Specified by:
      getDescription in interface X3DSoundNode
      Specified by:
      getDescription in interface X3DSoundProcessingNode
      Specified by:
      getDescription in interface X3DTimeDependentNode
      Returns:
      value of description field
    • setDescription

      Delay setDescription(String newValue)
      Accessor method to assign String value to inputOutput SFString field named description.

      Tooltip: Author-provided prose that describes intended purpose of the url asset.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Specified by:
      setDescription in interface X3DSoundNode
      Specified by:
      setDescription in interface X3DSoundProcessingNode
      Specified by:
      setDescription in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the description field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getElapsedTime

      double getElapsedTime()
      Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named elapsedTime.

      Tooltip: [0,+infinity) Current elapsed time since AudioClip activated/running, cumulative in seconds, and not counting any paused time.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      • Hint: elapsedTime is a nonnegative SFTime duration interval, not an absolute clock time.
      Specified by:
      getElapsedTime in interface X3DSoundProcessingNode
      Specified by:
      getElapsedTime in interface X3DTimeDependentNode
      Returns:
      value of elapsedTime field
    • getEnabled

      boolean getEnabled()
      Provide boolean value from inputOutput SFBool field named enabled.

      Tooltip: Enables/disables node operation. *
      Specified by:
      getEnabled in interface X3DSoundNode
      Specified by:
      getEnabled in interface X3DSoundProcessingNode
      Returns:
      value of enabled field
    • setEnabled

      Delay setEnabled(boolean newValue)
      Accessor method to assign boolean value to inputOutput SFBool field named enabled.

      Tooltip: Enables/disables node operation. *
      Specified by:
      setEnabled in interface X3DSoundNode
      Specified by:
      setEnabled in interface X3DSoundProcessingNode
      Parameters:
      newValue - is new value for the enabled field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getGain

      float getGain()
      Provide float value from inputOutput SFFloat field named gain.

      Tooltip: (-infinity,+infinity) The gain field is a factor that represents the amount of linear amplification to apply to the output of the node.
      • Warning: Decibel values shall not be used.
      • Hint: Negative gain factors negate the input signal.
      Specified by:
      getGain in interface X3DSoundProcessingNode
      Returns:
      value of gain field
    • setGain

      Delay setGain(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named gain.

      Tooltip: (-infinity,+infinity) The gain field is a factor that represents the amount of linear amplification to apply to the output of the node.
      • Warning: Decibel values shall not be used.
      • Hint: Negative gain factors negate the input signal.
      Specified by:
      setGain in interface X3DSoundProcessingNode
      Parameters:
      newValue - is new value for the gain field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getIsActive

      boolean getIsActive()
      Provide boolean value from outputOnly SFBool field named isActive.

      Tooltip: isActive true/false events are sent when playback starts/stops.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      Specified by:
      getIsActive in interface X3DSoundProcessingNode
      Specified by:
      getIsActive in interface X3DTimeDependentNode
      Returns:
      value of isActive field
    • getIsPaused

      boolean getIsPaused()
      Provide boolean value from outputOnly SFBool field named isPaused.

      Tooltip: isPaused true/false events are sent when AudioClip is paused/resumed.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      Specified by:
      getIsPaused in interface X3DSoundProcessingNode
      Specified by:
      getIsPaused in interface X3DTimeDependentNode
      Returns:
      value of isPaused field
    • getMaxDelayTime

      double getMaxDelayTime()
      Provide double value in seconds within allowed range of [0,infinity) from inputOutput SFTime field named maxDelayTime.

      Tooltip: [0,+infinity) maxDelayTime is duration of maximum amount of delay (in seconds) that can be applied. *
      Returns:
      value of maxDelayTime field
    • setMaxDelayTime

      Delay setMaxDelayTime(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named maxDelayTime.

      Tooltip: [0,+infinity) maxDelayTime is duration of maximum amount of delay (in seconds) that can be applied. *
      Parameters:
      newValue - is new value for the maxDelayTime field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getMetadata

      X3DMetadataObject getMetadata()
      Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.

      Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
      Specified by:
      getMetadata in interface X3DChildNode
      Specified by:
      getMetadata in interface X3DNode
      Specified by:
      getMetadata in interface X3DSoundNode
      Specified by:
      getMetadata in interface X3DSoundProcessingNode
      Specified by:
      getMetadata in interface X3DTimeDependentNode
      Returns:
      value of metadata field
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • setMetadata

      Delay setMetadata(X3DMetadataObject newValue)
      Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.

      Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
      Specified by:
      setMetadata in interface X3DChildNode
      Specified by:
      setMetadata in interface X3DNode
      Specified by:
      setMetadata in interface X3DSoundNode
      Specified by:
      setMetadata in interface X3DSoundProcessingNode
      Specified by:
      setMetadata in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • getPauseTime

      double getPauseTime()
      Provide double value in seconds from inputOutput SFTime field named pauseTime.

      Tooltip: When time now >= pauseTime, isPaused becomes true and AudioClip becomes paused. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      getPauseTime in interface X3DSoundProcessingNode
      Specified by:
      getPauseTime in interface X3DTimeDependentNode
      Returns:
      value of pauseTime field
    • setPauseTime

      Delay setPauseTime(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named pauseTime.

      Tooltip: When time now >= pauseTime, isPaused becomes true and AudioClip becomes paused. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      setPauseTime in interface X3DSoundProcessingNode
      Specified by:
      setPauseTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the pauseTime field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getResumeTime

      double getResumeTime()
      Provide double value in seconds from inputOutput SFTime field named resumeTime.

      Tooltip: When resumeTime becomes <= time now, isPaused becomes false and AudioClip becomes active. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      getResumeTime in interface X3DSoundProcessingNode
      Specified by:
      getResumeTime in interface X3DTimeDependentNode
      Returns:
      value of resumeTime field
    • setResumeTime

      Delay setResumeTime(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named resumeTime.

      Tooltip: When resumeTime becomes <= time now, isPaused becomes false and AudioClip becomes active. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      setResumeTime in interface X3DSoundProcessingNode
      Specified by:
      setResumeTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the resumeTime field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStartTime

      double getStartTime()
      Provide double value in seconds from inputOutput SFTime field named startTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      getStartTime in interface X3DSoundProcessingNode
      Specified by:
      getStartTime in interface X3DTimeDependentNode
      Returns:
      value of startTime field
    • setStartTime

      Delay setStartTime(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named startTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      setStartTime in interface X3DSoundProcessingNode
      Specified by:
      setStartTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the startTime field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStopTime

      double getStopTime()
      Provide double value in seconds from inputOutput SFTime field named stopTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      • Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
      • Warning: An active TimeSensor node ignores set_stopTime event values less than or equal to startTime.
      Specified by:
      getStopTime in interface X3DSoundProcessingNode
      Specified by:
      getStopTime in interface X3DTimeDependentNode
      Returns:
      value of stopTime field
    • setStopTime

      Delay setStopTime(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named stopTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      • Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
      • Warning: An active TimeSensor node ignores set_stopTime event values less than or equal to startTime.
      Specified by:
      setStopTime in interface X3DSoundProcessingNode
      Specified by:
      setStopTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the stopTime field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getTailTime

      double getTailTime()
      Provide double value in seconds within allowed range of [0,infinity) from inputOutput SFTime field named tailTime.

      Tooltip: [0,+infinity) tailTime is duration of time that a node continues to provide output signal after the input signal becomes silent. *
      Specified by:
      getTailTime in interface X3DSoundProcessingNode
      Returns:
      value of tailTime field
    • setTailTime

      Delay setTailTime(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named tailTime.

      Tooltip: [0,+infinity) tailTime is duration of time that a node continues to provide output signal after the input signal becomes silent. *
      Specified by:
      setTailTime in interface X3DSoundProcessingNode
      Parameters:
      newValue - is new value for the tailTime field.
      Returns:
      Delay - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).