diff --git a/src/org/graphstream/gama/extension/IKeywordGSAdditional.java b/src/org/graphstream/gama/extension/IKeywordGSAdditional.java index 2d852cdeb249d630e79697d3c535b0b3c70602b3..0629add9e1e471843f583d0ca66831b5c8b8074f 100644 --- a/src/org/graphstream/gama/extension/IKeywordGSAdditional.java +++ b/src/org/graphstream/gama/extension/IKeywordGSAdditional.java @@ -22,6 +22,7 @@ public class IKeywordGSAdditional implements IKeyword { public static final String STEP = "gs_step"; //Receiver command public static final String ADD_RECEIVER = "gs_add_receiver"; + public static final String CLEAR_RECEIVERS = "gs_clear_receivers"; public static final String GET_EDGE_ATTRIBUTE = "gs_get_edge_attribute"; public static final String GET_NODE_ATTRIBUTE = "gs_get_node_attribute"; public static final String GET_GRAPH_ATTRIBUTE = "gs_get_graph_attribute"; diff --git a/src/org/graphstream/gama/extension/receiver/ClearReceiversStatement.java b/src/org/graphstream/gama/extension/receiver/ClearReceiversStatement.java new file mode 100644 index 0000000000000000000000000000000000000000..7437708d61da557304300a45a4edaff431cefb25 --- /dev/null +++ b/src/org/graphstream/gama/extension/receiver/ClearReceiversStatement.java @@ -0,0 +1,30 @@ +package org.graphstream.gama.extension.receiver; + +import msi.gama.precompiler.ISymbolKind; +import msi.gama.precompiler.GamlAnnotations.inside; +import msi.gama.precompiler.GamlAnnotations.symbol; +import msi.gama.runtime.IScope; +import msi.gama.runtime.exceptions.GamaRuntimeException; +import msi.gaml.descriptions.IDescription; +import msi.gaml.statements.AbstractStatement; +import msi.gaml.statements.IStatement; + +import org.graphstream.gama.extension.GSManager; +import org.graphstream.gama.extension.IKeywordGSAdditional; + +@symbol(name = IKeywordGSAdditional.CLEAR_RECEIVERS, kind = ISymbolKind.SINGLE_STATEMENT, with_sequence = false) +@inside(kinds = { ISymbolKind.BEHAVIOR, ISymbolKind.SINGLE_STATEMENT }) +public class ClearReceiversStatement extends AbstractStatement implements IStatement{ + + public ClearReceiversStatement(IDescription desc) { + super(desc); + } + + @Override + protected Object privateExecuteIn(IScope scope) throws GamaRuntimeException { + GSManager.clearReceivers(); + return null; + } + + +}