# ParticleEmitter (Slick - The 2D Library)
Date: 2013-06-03

## org.newdawn.slick.particles
Interface ParticleEmitter

All Known Implementing Classes:
  ConfigurableEmitter, FireEmitter

    public interface ParticleEmitter

An emitter is responsible for producing the particles and controlling them during their life. An implementation of this interface can be considered a particle effect.

Author:
  kevin

Method Summary
`boolean` `completed()` Check if this emitter has completed it's cycle
`Image` `getImage()` Get the image to draw for each particle
`boolean` `isEnabled()` Check if the emitter is enabled
`boolean` `isOriented()` Check if the particles produced should maintain orientation
`void` `resetState()` Clear the state of emitter back to default
`void` `setEnabled(boolean enabled)` Indicate whether the emitter should be enabled
`void` `update(ParticleSystem system, int delta)` Update the emitter, produce any particles required by requesting them from the particle system provided.
`void` `updateParticle(Particle particle, int delta)` Update a single particle that this emitter produced
`boolean` `useAdditive()` Check if this emitter should use additive blending
`boolean` `usePoints(ParticleSystem system)` Check if this emitter should use points based on it's own settings and those of the particle system
`void` `wrapUp()` Wrap up the particle emitter.

Method Detail

### update

    void update(ParticleSystem system,
                int delta)

  Update the emitter, produce any particles required by requesting them from the particle system provided.

  Parameters:
    `system` - The particle system used to create particles
    `delta` - The amount of time in milliseconds since last emitter update

### completed

    boolean completed()

  Check if this emitter has completed it's cycle

  Returns:
    True if the emitter has completed it's cycle

### wrapUp

    void wrapUp()

  Wrap up the particle emitter. This means the emitter will no longer produce particles and will be marked as completed once the particles have expired

### updateParticle

    void updateParticle(Particle particle,
                        int delta)

  Update a single particle that this emitter produced

  Parameters:
    `particle` - The particle to be updated
    `delta` - The amount of time in millisecond since last particle update

### isEnabled

    boolean isEnabled()

  Check if the emitter is enabled

  Returns:
    True if the emitter is enabled

### setEnabled

    void setEnabled(boolean enabled)

  Indicate whether the emitter should be enabled

  Parameters:
    `enabled` - True if the emitter should be enabled

### useAdditive

    boolean useAdditive()

  Check if this emitter should use additive blending

  Returns:
    True if the emitter should use the right blending

### getImage

    Image getImage()

  Get the image to draw for each particle

  Returns:
    The image to draw for each particle

### isOriented

    boolean isOriented()

  Check if the particles produced should maintain orientation

  Returns:
    True if the particles produced should maintain orientation

### usePoints

    boolean usePoints(ParticleSystem system)

  Check if this emitter should use points based on it's own settings and those of the particle system

  Parameters:
    `system` - The particle system to cross check agianst
  Returns:
    True if we should use points

### resetState

    void resetState()

  Clear the state of emitter back to default

Copyright © 2006 New Dawn Software. All Rights Reserved.