rescuecore.view
Class Layer

java.lang.Object
  extended byrescuecore.view.Layer
All Implemented Interfaces:
RescueConstants, ViewConstants
Direct Known Subclasses:
ConvexHullLayer

public class Layer
extends java.lang.Object
implements ViewConstants, RescueConstants

This class represents a layer of information to be displayed on a map of the world. Each layer is responsible for drawing some subset of the available objects in the world. Layers are responsible for requesting repaints as necessary.


Field Summary
protected  Memory memory
           
protected  java.util.Collection objects
           
protected  java.util.Map renderers
           
 
Fields inherited from interface rescuecore.view.ViewConstants
AGENT_COLOUR, AMBULANCE_CENTER_COLOUR, AMBULANCE_TEAM_COLOUR, BACKGROUND_COLOUR, BAD_TARGETS_COLOUR, BUILDING_COLOUR, BURNT_OUT_COLOUR, CAR_COLOUR, CIVILIAN_COLOUR, EXTINGUISHED_COLOUR, FIRE_BRIGADE_COLOUR, FIRE_COLOUR, FIRE_STATION_COLOUR, HEATING_COLOUR, INFERNO_COLOUR, NO_COLOUR, PARTIALLY_BLOCKED_COLOUR, PATH_COLOUR, POLICE_FORCE_COLOUR, POLICE_OFFICE_COLOUR, PRIMARY_TARGETS_COLOUR, REFUGE_COLOUR, SECONDARY_TARGETS_COLOUR, TARGET_COLOUR, TERTIARY_TARGETS_COLOUR, TOTALLY_BLOCKED_COLOUR, UNBLOCKED_COLOUR
 
Fields inherited from interface rescuecore.RescueConstants
AGENT_TYPE_AMBULANCE_CENTER, AGENT_TYPE_AMBULANCE_TEAM, AGENT_TYPE_ANY, AGENT_TYPE_ANY_AGENT, AGENT_TYPE_ANY_BUILDING, AGENT_TYPE_ANY_MOBILE, AGENT_TYPE_CIVILIAN, AGENT_TYPE_FIRE_BRIGADE, AGENT_TYPE_FIRE_STATION, AGENT_TYPE_POLICE_FORCE, AGENT_TYPE_POLICE_OFFICE, AK_ACKNOWLEDGE, AK_CLEAR, AK_CONNECT, AK_EXTINGUISH, AK_LOAD, AK_MOVE, AK_RESCUE, AK_REST, AK_SAY, AK_TELL, AK_UNLOAD, BYTE_SIZE, COMMAND_ACKNOWLEDGE, COMMAND_CLEAR, COMMAND_CONNECT, COMMAND_EXTINGUISH, COMMAND_LOAD, COMMAND_MOVE, COMMAND_RESCUE, COMMAND_REST, COMMAND_SAY, COMMAND_TELL, COMMAND_UNLOAD, FIERYNESS_BURNING, FIERYNESS_BURNT_OUT, FIERYNESS_HEATING, FIERYNESS_INFERNO, FIERYNESS_MODERATELY_BURNT, FIERYNESS_NOT_BURNT, FIERYNESS_SLIGHTLY_BURNT, FIERYNESS_VERY_BURNT, GK_CONNECT_ERROR, GK_CONNECT_OK, HEADER_NULL, INT_SIZE, INTERNAL_TYPE_AMBULANCE_CENTER, INTERNAL_TYPE_AMBULANCE_TEAM, INTERNAL_TYPE_ANY_BUILDING, INTERNAL_TYPE_ANY_HUMANOID, INTERNAL_TYPE_ANY_PLATOON, INTERNAL_TYPE_BUILDING, INTERNAL_TYPE_CAR, INTERNAL_TYPE_CIVILIAN, INTERNAL_TYPE_FIRE_BRIGADE, INTERNAL_TYPE_FIRE_STATION, INTERNAL_TYPE_NODE, INTERNAL_TYPE_POLICE_FORCE, INTERNAL_TYPE_POLICE_OFFICE, INTERNAL_TYPE_REFUGE, INTERNAL_TYPE_RIVER, INTERNAL_TYPE_RIVER_NODE, INTERNAL_TYPE_ROAD, INTERNAL_TYPE_WORLD, KA_CONNECT_ERROR, KA_CONNECT_OK, KA_HEAR, KA_SENSE, KG_ACKNOWLEDGE, KG_CONNECT, KG_UPDATE, KS_COMMANDS, KS_CONNECT_ERROR, KS_CONNECT_OK, KS_UPDATE, KV_CONNECT_ERROR, KV_CONNECT_OK, KV_UPDATE, MAX_CENTER_MESSAGES, MAX_EXTINGUISH_DISTANCE, MAX_EXTINGUISH_POWER, MAX_HP, MAX_PLATOON_MESSAGES, MAX_RESCUE_DISTANCE, MAX_WATER, PROPERTY_BLOCK, PROPERTY_BROKENNESS, PROPERTY_BUILDING_APEXES, PROPERTY_BUILDING_AREA_GROUND, PROPERTY_BUILDING_AREA_TOTAL, PROPERTY_BUILDING_ATTRIBUTES, PROPERTY_BUILDING_CODE, PROPERTY_BUILDING_SHAPE_ID, PROPERTY_BURIEDNESS, PROPERTY_CARS_PASS_TO_HEAD, PROPERTY_CARS_PASS_TO_TAIL, PROPERTY_DAMAGE, PROPERTY_DIRECTION, PROPERTY_EDGES, PROPERTY_ENTRANCES, PROPERTY_FIERYNESS, PROPERTY_FLOORS, PROPERTY_HEAD, PROPERTY_HP, PROPERTY_HUMANS_PASS_TO_HEAD, PROPERTY_HUMANS_PASS_TO_TAIL, PROPERTY_IGNITION, PROPERTY_LATITUDE, PROPERTY_LENGTH, PROPERTY_LINES_TO_HEAD, PROPERTY_LINES_TO_TAIL, PROPERTY_LONGITUDE, PROPERTY_MAX, PROPERTY_MEDIAN_STRIP, PROPERTY_NULL, PROPERTY_POCKET_TO_TURN_ACROSS, PROPERTY_POSITION, PROPERTY_POSITION_EXTRA, PROPERTY_POSITION_HISTORY, PROPERTY_REPAIR_COST, PROPERTY_ROAD_KIND, PROPERTY_SHORTCUT_TO_TURN, PROPERTY_SIGNAL, PROPERTY_SIGNAL_TIMING, PROPERTY_STAMINA, PROPERTY_START_TIME, PROPERTY_STRETCHED_LENGTH, PROPERTY_TAIL, PROPERTY_TYPE_BOOLEAN, PROPERTY_TYPE_INT, PROPERTY_TYPE_INT_ARRAY, PROPERTY_WATER_QUANTITY, PROPERTY_WIDTH, PROPERTY_WIDTH_FOR_WALKERS, PROPERTY_WIND_DIRECTION, PROPERTY_WIND_FORCE, PROPERTY_X, PROPERTY_Y, SAY_LENGTH, SHORT_SIZE, SK_ACKNOWLEDGE, SK_CONNECT, SK_UPDATE, TELL_LENGTH, TYPE_AMBULANCE_CENTER, TYPE_AMBULANCE_TEAM, TYPE_BUILDING, TYPE_CAR, TYPE_CIVILIAN, TYPE_FIRE_BRIGADE, TYPE_FIRE_STATION, TYPE_NODE, TYPE_NULL, TYPE_POLICE_FORCE, TYPE_POLICE_OFFICE, TYPE_REFUGE, TYPE_RIVER, TYPE_RIVER_NODE, TYPE_ROAD, TYPE_WORLD, VK_ACKNOWLEDGE, VK_CONNECT
 
Constructor Summary
Layer(Memory m, java.lang.String name)
           
 
Method Summary
 void addObject(java.lang.Object o)
           
 void addObjects(java.util.Collection os)
           
 void addObjects(java.lang.Object[] os)
           
 void addRenderer(java.lang.Class clazz, MapRenderer renderer)
           
static Layer createBuildingLayer(Memory m)
           
static Layer createHumanoidLayer(Memory m)
           
static Layer createNodeLayer(Memory m)
           
static Layer createRoadLayer(Memory m)
           
static Layer createSingletonLayer(Memory m, java.lang.Object object, MapRenderer r, java.lang.String name)
           
 void dirty()
           
 void paint(java.awt.Graphics g, int width, int height, ScreenTransform transform)
           
 void removeAllObjects()
           
 void removeObject(java.lang.Object o)
           
 void removeRenderer(java.lang.Class clazz)
           
 void setObject(java.lang.Object o)
           
 void setObjects(java.util.Collection os)
           
 void setObjects(java.lang.Object[] os)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

objects

protected java.util.Collection objects

memory

protected Memory memory

renderers

protected java.util.Map renderers
Constructor Detail

Layer

public Layer(Memory m,
             java.lang.String name)
Method Detail

createRoadLayer

public static Layer createRoadLayer(Memory m)

createNodeLayer

public static Layer createNodeLayer(Memory m)

createBuildingLayer

public static Layer createBuildingLayer(Memory m)

createHumanoidLayer

public static Layer createHumanoidLayer(Memory m)

createSingletonLayer

public static Layer createSingletonLayer(Memory m,
                                         java.lang.Object object,
                                         MapRenderer r,
                                         java.lang.String name)

addObject

public void addObject(java.lang.Object o)

addObjects

public void addObjects(java.lang.Object[] os)

addObjects

public void addObjects(java.util.Collection os)

setObject

public void setObject(java.lang.Object o)

setObjects

public void setObjects(java.lang.Object[] os)

setObjects

public void setObjects(java.util.Collection os)

removeObject

public void removeObject(java.lang.Object o)

removeAllObjects

public void removeAllObjects()

addRenderer

public void addRenderer(java.lang.Class clazz,
                        MapRenderer renderer)

removeRenderer

public void removeRenderer(java.lang.Class clazz)

paint

public void paint(java.awt.Graphics g,
                  int width,
                  int height,
                  ScreenTransform transform)

dirty

public void dirty()