Interface IModifiablePublicLocalDynamicState
-
- All Superinterfaces:
IPublicLocalDynamicState
- All Known Implementing Classes:
ConsistentPublicLocalDynamicState
,TransitoryPublicLocalDynamicState
public interface IModifiablePublicLocalDynamicState extends IPublicLocalDynamicState
Models a modifiable public local dynamic state.This interface is separated from the
IPublicLocalDynamicState
to prevent users from modifying the content of a dynamic state during the behavior phase of the agent (or the natural phase of the environment).- Author:
- Yoann Kubera
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addInfluence(IInfluence influence)
Adds an influence to this public local dynamic state.void
addPublicLocalStateOfAgent(ILocalStateOfAgent publicLocalState)
Adds the public local state of an agent to this public local dynamic state.void
clearRegularInfluences()
Remove all the regular influences of this dynamic state.void
clearSystemInfluences()
Remove all the system influences of this dynamic state.void
removePublicLocalStateOfAgent(ILocalStateOfAgent publicLocalState)
Removes the public local state of an agent from this public local dynamic state.void
setPublicLocalStateOfEnvironment(ILocalStateOfEnvironment publicLocalState)
Sets the value of the public local state of the environment in this dynamic state.void
setStateDynamicsAsCopyOf(Collection<IInfluence> toCopy)
Sets the state dynamics of this public local dynamic state as a copy of the specified value.-
Methods inherited from interface fr.univ_artois.lgi2a.similar.microkernel.dynamicstate.IPublicLocalDynamicState
getLevel, getPublicLocalStateOfAgents, getPublicLocalStateOfEnvironment, getRegularInfluencesOfStateDynamics, getStateDynamics, getSystemInfluencesOfStateDynamics
-
-
-
-
Method Detail
-
setPublicLocalStateOfEnvironment
void setPublicLocalStateOfEnvironment(ILocalStateOfEnvironment publicLocalState)
Sets the value of the public local state of the environment in this dynamic state.- Parameters:
publicLocalState
- The public local state of the environment.- Throws:
IllegalArgumentException
- If the argument isnull
.
-
addPublicLocalStateOfAgent
void addPublicLocalStateOfAgent(ILocalStateOfAgent publicLocalState)
Adds the public local state of an agent to this public local dynamic state.This method does nothing if the public local state is already in this dynamic state.
- Parameters:
publicLocalState
- The added public local state of the agent.- Throws:
IllegalArgumentException
- If the argument isnull
.
-
removePublicLocalStateOfAgent
void removePublicLocalStateOfAgent(ILocalStateOfAgent publicLocalState)
Removes the public local state of an agent from this public local dynamic state.- Parameters:
publicLocalState
- The removed public local state of the agent.- Throws:
IllegalArgumentException
- If the argument isnull
.
-
addInfluence
void addInfluence(IInfluence influence)
Adds an influence to this public local dynamic state.- Parameters:
influence
- The influence to add to this public local dynamic state.- Throws:
IllegalArgumentException
- If the argument isnull
.
-
setStateDynamicsAsCopyOf
void setStateDynamicsAsCopyOf(Collection<IInfluence> toCopy)
Sets the state dynamics of this public local dynamic state as a copy of the specified value.- Parameters:
toCopy
- The set of influences that have to be contained in the state dynamics of this local dynamic state. Ifnull
, this method sets the state dynamics of this dynamic state to an empty set.- Throws:
IllegalArgumentException
- If the argument isnull
.
-
clearSystemInfluences
void clearSystemInfluences()
Remove all the system influences of this dynamic state.
-
clearRegularInfluences
void clearRegularInfluences()
Remove all the regular influences of this dynamic state.
-
-