de.grogra.pf.registry
Class ItemReference<V>

java.lang.Object
  extended by de.grogra.persistence.ShareableBase
      extended by de.grogra.pf.registry.ItemReference<V>
All Implemented Interfaces:
Manageable, Shareable
Direct Known Subclasses:
Curve, DatasetRef, FileRef, Function, ImageRef, Reference, ShaderRef, SurfaceRef

public abstract class ItemReference<V>
extends ShareableBase


Nested Class Summary
static class ItemReference.Type
           
 
Field Summary
static ItemReference.Type $TYPE
           
protected  Item item
           
protected  boolean itemResolved
           
static SCOType.Field name$FIELD
           
protected  V object
           
protected  boolean objectResolved
           
 
Constructor Summary
ItemReference(java.lang.String name)
           
 
Method Summary
protected  Item createItem(RegistryContext ctx, java.lang.String dir, java.lang.String name)
           
 boolean equals(java.lang.Object o)
           
 java.lang.String getName()
           
 int hashCode()
           
protected  Item resolveItem(java.lang.String baseName, RegistryContext ctx)
           
protected  V resolveObject(java.lang.String baseName, RegistryContext ctx)
           
 
Methods inherited from class de.grogra.persistence.ShareableBase
addReference, appendReferencesTo, fieldModified, getProvider, getStamp, initProvider, manageableReadResolve, manageableWriteReplace, removeReference
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.grogra.persistence.Manageable
getManageableType
 

Field Detail

$TYPE

public static final ItemReference.Type $TYPE

item

protected transient Item item

itemResolved

protected transient boolean itemResolved

name$FIELD

public static final SCOType.Field name$FIELD

object

protected transient V object

objectResolved

protected transient boolean objectResolved
Constructor Detail

ItemReference

public ItemReference(java.lang.String name)
Method Detail

createItem

protected Item createItem(RegistryContext ctx,
                          java.lang.String dir,
                          java.lang.String name)

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

getName

public java.lang.String getName()

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

resolveItem

protected Item resolveItem(java.lang.String baseName,
                           RegistryContext ctx)

resolveObject

protected V resolveObject(java.lang.String baseName,
                          RegistryContext ctx)