com.b3dgs.lionengine.engine
Class Sequence

java.lang.Object
  extended by java.lang.Thread
      extended by com.b3dgs.lionengine.engine.Sequence
All Implemented Interfaces:
java.lang.Runnable

public abstract class Sequence
extends java.lang.Thread

Sequence class is used for each derived sequence, such as Introduction, Menu, Scene... It contains a reference to the screen used, the current configuration, input references (keyboard, mouse), and it include a standard game loop (update and render), synchronised to a specified frame rate.


Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
 Config config
          Config reference.
 Display display
          Display reference.
 Filter filter
          Filter reference.
 int height
          Screen size (width-height).
 Initializer init
          Initializer reference.
 Keyboard keyboard
          Keyboard reference.
 Loader loader
          Loader reference.
 Mouse mouse
          Mouse reference.
 java.awt.image.AffineTransformOp opBilinear
          Filter transformation reference.
 java.awt.image.AffineTransformOp opNone
          Filter transformation reference.
 Rendering rendering
          Rendering reference.
 Screen screen
          Screen reference.
 Text systemText
          Default font.
 int width
          Screen size (width-height).
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
Sequence(Loader loader)
          Create a new blank sequence.
 
Method Summary
 void end()
          Terminate sequence, close screen, and start launcher if exists.
 void end(Sequence nextSequence)
          Terminate sequence, and set the next sequence id.
protected  java.awt.image.AffineTransformOp getFilter()
          Get the transforming filter, depending of the configuration.
 int getFPS()
          Get current frame rate value.
 Sequence getNextSequence()
          Get next sequence.
protected abstract  void load()
          Loading sequence data.
protected abstract  void render(java.awt.Graphics2D g)
          Rendering sequence.
 void run()
           
protected abstract  void terminate()
          Called when sequence in closing.
protected abstract  void update(float extrp)
          Update sequence.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

loader

public final Loader loader
Loader reference.


systemText

public final Text systemText
Default font.


screen

public final Screen screen
Screen reference.


init

public final Initializer init
Initializer reference.


config

public final Config config
Config reference.


display

public final Display display
Display reference.


keyboard

public final Keyboard keyboard
Keyboard reference.


mouse

public final Mouse mouse
Mouse reference.


filter

public final Filter filter
Filter reference.


rendering

public final Rendering rendering
Rendering reference.


opNone

public final java.awt.image.AffineTransformOp opNone
Filter transformation reference.


opBilinear

public final java.awt.image.AffineTransformOp opBilinear
Filter transformation reference.


width

public final int width
Screen size (width-height).


height

public final int height
Screen size (width-height).

Constructor Detail

Sequence

public Sequence(Loader loader)
Create a new blank sequence.

Method Detail

run

public void run()
Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

getFilter

protected final java.awt.image.AffineTransformOp getFilter()
Get the transforming filter, depending of the configuration.

Returns:
transforming filter

load

protected abstract void load()
Loading sequence data.


update

protected abstract void update(float extrp)
Update sequence.

Parameters:
extrp - current extrapolation value.

render

protected abstract void render(java.awt.Graphics2D g)
Rendering sequence.

Parameters:
g - graphic ouput.

terminate

protected abstract void terminate()
Called when sequence in closing.


end

public void end()
Terminate sequence, close screen, and start launcher if exists.


end

public void end(Sequence nextSequence)
Terminate sequence, and set the next sequence id.

Parameters:
nextSequence - next game reference.

getNextSequence

public Sequence getNextSequence()
Get next sequence.

Returns:
next sequence.

getFPS

public int getFPS()
Get current frame rate value.

Returns:
current frame rate.