public abstract class AbstractPerceptualMemory extends java.lang.Object implements IPerceptualMemory
FINST_DURATION_TIME_PARAM, NEW_FINST_ONSET_DURATION_TIME_PARAM, NUMBER_OF_FINSTS_PARAM, SEARCH_RESULT_IDENTIFIER_KEY
Constructor and Description |
---|
AbstractPerceptualMemory(IPerceptualModule module,
IIndexManager manager) |
Modifier and Type | Method and Description |
---|---|
void |
addEncoder(IPerceptualEncoder encoder)
add encoder
|
void |
addFeatureMap(IFeatureMap featureMap)
attach feature map
|
void |
addFilter(IIndexFilter filter)
add post processing search filter
|
void |
addListener(IActivePerceptListener listener,
java.util.concurrent.Executor executor) |
protected void |
addRecentSearch(PerceptualSearchResult result) |
void |
attach(ACTRAgent agent)
attach must be called after the model has been connected to commmon reality
|
protected java.util.Comparator<ChunkTypeRequest> |
createDefaultComparator()
create a default comparator when none is specified from the search request
or null.
|
void |
detach()
detach from CR
|
protected void |
dispatch(ActivePerceptEvent event) |
protected void |
fillIndexChunk(IChunk indexChunk,
IChunk encodedChunk,
ChunkTypeRequest originalRequest,
ChunkTypeRequest expandedRequest)
provides a hook to set the slot values of the returned index chunk in case
they are recycled..
|
protected DefaultAfferentObjectListener |
getAfferentObjectListener() |
java.util.Collection<IPerceptualEncoder> |
getEncoders(java.util.Collection<IPerceptualEncoder> container) |
java.util.Collection<IChunk> |
getEncodings(IIdentifier identifier,
java.util.Collection<IChunk> container)
returns all the known encodings of identifier
|
java.util.Collection<IFeatureMap> |
getFeatureMaps(java.util.Collection<IFeatureMap> container)
return all the feature maps in the provided container
|
java.util.Collection<IIndexFilter> |
getFilters(java.util.Collection<IIndexFilter> container) |
IFINSTFeatureMap |
getFINSTFeatureMap()
return the finst-able feature map
|
int |
getFINSTLimit() |
double |
getFINSTSpan() |
IIndexManager |
getIndexManager() |
double |
getLastChangeTime()
simulation time of the last update
|
PerceptualSearchResult |
getLastSearchResult() |
IPerceptualModule |
getModule()
owning module
|
protected IChunk |
getNamedChunk(java.lang.String name) |
double |
getNewFINSTOnsetDuration() |
protected DelayableAfferentObjectListener |
getObjectListener() |
java.lang.String |
getParameter(java.lang.String key)
return parameter value - null if not defined.
|
int |
getPendingUpdates()
the number of updates from CR as of yet unprocessed
|
java.util.Collection<java.lang.String> |
getPossibleParameters()
Return all parameters that can be read
|
void |
getRecentSearchResults(java.util.List<PerceptualSearchResult> results) |
java.util.Collection<java.lang.String> |
getSetableParameters()
Return list of all parameters that can be set.
|
protected boolean |
hasListeners() |
protected boolean |
isAcceptable(IChunk encodedChunk,
ChunkTypeRequest originalRequest)
hook to verify that an encoded chunk should be returned.
|
boolean |
isAttached()
have we been attached to CR?
|
void |
removeEncoder(IPerceptualEncoder encoder) |
void |
removeFeatureMap(IFeatureMap featureMap) |
void |
removeFilter(IIndexFilter filter) |
void |
removeListener(IActivePerceptListener listener) |
java.util.concurrent.Future<PerceptualSearchResult> |
search(ChunkTypeRequest request)
search, merely delegates to searchInternal on the common reality executor
|
protected PerceptualSearchResult |
searchInternal(ChunkTypeRequest request) |
PerceptualSearchResult |
searchNow(ChunkTypeRequest request)
search perceptual memory immediately - this should only be called from the
CR processing thread
|
protected PerceptualSearchResult |
select(java.util.SortedMap<ChunkTypeRequest,PerceptualSearchResult> results)
select the best option.
|
void |
setFINSTLimit(int max) |
void |
setFINSTSpan(double duration) |
void |
setNewFINSTOnsetDuration(double duration) |
void |
setParameter(java.lang.String key,
java.lang.String value)
Set the named parameter
|
public AbstractPerceptualMemory(IPerceptualModule module, IIndexManager manager)
public void addListener(IActivePerceptListener listener, java.util.concurrent.Executor executor)
addListener
in interface IPerceptualMemory
public void removeListener(IActivePerceptListener listener)
removeListener
in interface IPerceptualMemory
protected boolean hasListeners()
protected void dispatch(ActivePerceptEvent event)
public int getFINSTLimit()
getFINSTLimit
in interface IPerceptualMemory
public double getFINSTSpan()
getFINSTSpan
in interface IPerceptualMemory
public double getNewFINSTOnsetDuration()
getNewFINSTOnsetDuration
in interface IPerceptualMemory
public void setFINSTLimit(int max)
setFINSTLimit
in interface IPerceptualMemory
public void setFINSTSpan(double duration)
setFINSTSpan
in interface IPerceptualMemory
public void setNewFINSTOnsetDuration(double duration)
setNewFINSTOnsetDuration
in interface IPerceptualMemory
public double getLastChangeTime()
IPerceptualMemory
getLastChangeTime
in interface IPerceptualMemory
public boolean isAttached()
IPerceptualMemory
isAttached
in interface IPerceptualMemory
public void attach(ACTRAgent agent)
attach
in interface IPerceptualMemory
agent
- protected DefaultAfferentObjectListener getAfferentObjectListener()
public void detach()
IPerceptualMemory
detach
in interface IPerceptualMemory
protected DelayableAfferentObjectListener getObjectListener()
public int getPendingUpdates()
IPerceptualMemory
getPendingUpdates
in interface IPerceptualMemory
public IPerceptualModule getModule()
IPerceptualMemory
getModule
in interface IPerceptualMemory
public void addEncoder(IPerceptualEncoder encoder)
IPerceptualMemory
addEncoder
in interface IPerceptualMemory
public void addFeatureMap(IFeatureMap featureMap)
IPerceptualMemory
addFeatureMap
in interface IPerceptualMemory
public void addFilter(IIndexFilter filter)
IPerceptualMemory
addFilter
in interface IPerceptualMemory
public java.util.Collection<IPerceptualEncoder> getEncoders(java.util.Collection<IPerceptualEncoder> container)
getEncoders
in interface IPerceptualMemory
public IFINSTFeatureMap getFINSTFeatureMap()
IPerceptualMemory
getFINSTFeatureMap
in interface IPerceptualMemory
public java.util.Collection<IFeatureMap> getFeatureMaps(java.util.Collection<IFeatureMap> container)
IPerceptualMemory
getFeatureMaps
in interface IPerceptualMemory
public java.util.Collection<IIndexFilter> getFilters(java.util.Collection<IIndexFilter> container)
getFilters
in interface IPerceptualMemory
public void removeEncoder(IPerceptualEncoder encoder)
removeEncoder
in interface IPerceptualMemory
public void removeFeatureMap(IFeatureMap featureMap)
removeFeatureMap
in interface IPerceptualMemory
public void removeFilter(IIndexFilter filter)
removeFilter
in interface IPerceptualMemory
public java.util.Collection<IChunk> getEncodings(IIdentifier identifier, java.util.Collection<IChunk> container)
IPerceptualMemory
getEncodings
in interface IPerceptualMemory
public IIndexManager getIndexManager()
getIndexManager
in interface IPerceptualMemory
public java.util.concurrent.Future<PerceptualSearchResult> search(ChunkTypeRequest request)
search
in interface IPerceptualMemory
request
- IPerceptualMemory.search(org.jactr.core.production.request.ChunkTypeRequest)
public PerceptualSearchResult searchNow(ChunkTypeRequest request)
IPerceptualMemory
searchNow
in interface IPerceptualMemory
protected java.util.Comparator<ChunkTypeRequest> createDefaultComparator()
protected void fillIndexChunk(IChunk indexChunk, IChunk encodedChunk, ChunkTypeRequest originalRequest, ChunkTypeRequest expandedRequest)
indexChunk
- encodedChunk
- originalRequest
- expandedRequest
- protected boolean isAcceptable(IChunk encodedChunk, ChunkTypeRequest originalRequest)
encodedChunk
- originalRequest
- protected PerceptualSearchResult searchInternal(ChunkTypeRequest request)
protected PerceptualSearchResult select(java.util.SortedMap<ChunkTypeRequest,PerceptualSearchResult> results)
results
- protected void addRecentSearch(PerceptualSearchResult result)
public void getRecentSearchResults(java.util.List<PerceptualSearchResult> results)
getRecentSearchResults
in interface IPerceptualMemory
public PerceptualSearchResult getLastSearchResult()
getLastSearchResult
in interface IPerceptualMemory
protected IChunk getNamedChunk(java.lang.String name)
public java.lang.String getParameter(java.lang.String key)
IParameterized
getParameter
in interface IParameterized
key
- Description of the Parameterpublic void setParameter(java.lang.String key, java.lang.String value)
IParameterized
setParameter
in interface IParameterized
public java.util.Collection<java.lang.String> getSetableParameters()
IParameterized
getSetableParameters
in interface IParameterized
public java.util.Collection<java.lang.String> getPossibleParameters()
IParameterized
getPossibleParameters
in interface IParameterized