protected static class AbstractSurfaceShape.SurfaceShapeStateKey extends AbstractSurfaceObject.SurfaceObjectStateKey
AbstractSurfaceObject.SurfaceObjectStateKey
by adding the shape's current ShapeAttributes
and the globe's state key.
SurfaceShapeStateKey uniquely identifies a surface shapes's current state exactly as SurfaceObjectStateKey does,
but also distinguishes the shape's active ShapeAttributes from any previous attributes, and distinguishes between
different globes via the globe state key.Modifier and Type | Field and Description |
---|---|
protected ShapeAttributes |
attributes
The SurfaceShape's attributes.
|
protected java.lang.Object |
globeStateKey
The Globe's state key.
|
modifiedTime, uniqueId
Constructor and Description |
---|
SurfaceShapeStateKey(long uniqueID,
long modifiedTime,
ShapeAttributes attributes,
java.lang.Object globeStateKey)
Constructs a new SurfaceShapeStateKey with the specified unique ID, modified time, attributes, and globe
state key.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object o) |
long |
getSizeInBytes()
Returns the state key's size in bytes.
|
int |
hashCode() |
protected final ShapeAttributes attributes
protected final java.lang.Object globeStateKey
public SurfaceShapeStateKey(long uniqueID, long modifiedTime, ShapeAttributes attributes, java.lang.Object globeStateKey)
uniqueID
- the SurfaceShape's unique ID.modifiedTime
- the SurfaceShape's modified time.attributes
- the SurfaceShape's attributes, or null if the shape has no attributes.globeStateKey
- the globe's state key, or null if the shape does not depend on the globe.Globe.getStateKey(DrawContext)
public boolean equals(java.lang.Object o)
equals
in class AbstractSurfaceObject.SurfaceObjectStateKey
public long getSizeInBytes()
getSizeInBytes
in interface Cacheable
getSizeInBytes
in class AbstractSurfaceObject.SurfaceObjectStateKey
public int hashCode()
hashCode
in class AbstractSurfaceObject.SurfaceObjectStateKey