diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala
index 5c6924f50aa03f545f56e5961f022da116d41104..9598e625d0b04fdccc5fcf1b416ccaa05501d414 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/Neuron.scala
@@ -9,9 +9,8 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntity.AskReference
import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.{Done, SynchronizedMessage}
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.WrapMessage
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
-import fr.univ_lille.cristal.emeraude.n2s3.support.event.{Observable, ObservableMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.support.event.{Event, EventResponse, Observable, ObservableMessage}
import scala.collection.mutable
import scala.language.postfixOps
@@ -162,6 +161,13 @@ object Neuron {
throw new RuntimeException("can't send message with past timestamp")
}
}
+
+ /********************************************************************************************************************
+ * Events
+ ******************************************************************************************************************/
+
+ object NeuronFireEvent extends Event[NeuronFireResponse]
+ case class NeuronFireResponse(timestamp : Timestamp, source : NetworkEntityPath) extends EventResponse
}
trait NeuronModel {
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala
index cf99b47c9d7e5d5e760a86e85df15b1c0e2f568c..30b78a06f83073f794bffc569d42f01076beb04e 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/actors/InputNeuron.scala
@@ -1,9 +1,8 @@
package fr.univ_lille.cristal.emeraude.n2s3.core.actors
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronEnds, NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.SynapticWeightFloat
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireEvent.scala
deleted file mode 100644
index 40d4c5fda9235de65aa2df446464501f1b50b8db..0000000000000000000000000000000000000000
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireEvent.scala
+++ /dev/null
@@ -1,8 +0,0 @@
-package fr.univ_lille.cristal.emeraude.n2s3.core.event
-
-import fr.univ_lille.cristal.emeraude.n2s3.support.event.Event
-
-/**
- * Created by guille on 10/14/16.
- */
-object NeuronFireEvent extends Event[NeuronFireResponse]
\ No newline at end of file
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireResponse.scala
deleted file mode 100644
index e66d9b50e155577a33516cbca2c32b21f0a8cc29..0000000000000000000000000000000000000000
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronFireResponse.scala
+++ /dev/null
@@ -1,11 +0,0 @@
-package fr.univ_lille.cristal.emeraude.n2s3.core.event
-
-import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
-import fr.univ_lille.cristal.emeraude.n2s3.core.NetworkEntityPath
-import fr.univ_lille.cristal.emeraude.n2s3.support.event.EventResponse
-
-/********************************************************************************************************
- * Event triggered when a neuron fire
- *******************************************************************************************************/
-
-case class NeuronFireResponse(timestamp : Timestamp, source : NetworkEntityPath) extends EventResponse
\ No newline at end of file
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronUpdateEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronUpdateEvent.scala
deleted file mode 100644
index 06439a3499414fe1b63ebfe537cbc4c5b0d72d79..0000000000000000000000000000000000000000
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/NeuronUpdateEvent.scala
+++ /dev/null
@@ -1,8 +0,0 @@
-package fr.univ_lille.cristal.emeraude.n2s3.core.event
-
-import fr.univ_lille.cristal.emeraude.n2s3.support.event.{Event, EventTriggered}
-
-/***************************************************************************************************
- * Event triggered when update arise in neuron
- **************************************************************************************************/
-abstract class NeuronUpdateEvent extends Event[EventTriggered.type]
\ No newline at end of file
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynapseUpdateEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynapseUpdateEvent.scala
deleted file mode 100644
index 4b4a3236f166904da7d1db6888247925d8df428f..0000000000000000000000000000000000000000
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/SynapseUpdateEvent.scala
+++ /dev/null
@@ -1,8 +0,0 @@
-package fr.univ_lille.cristal.emeraude.n2s3.core.event
-
-import fr.univ_lille.cristal.emeraude.n2s3.support.event.{Event, EventTriggered}
-
-/***************************************************************************************************
- * Event triggered when update arise in synapse
- **************************************************************************************************/
-abstract class SynapseUpdateEvent(val connectionId : Int) extends Event[EventTriggered.type]
\ No newline at end of file
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala
index b035870d3592b3483ed724cd1a0a172a035b1316..a370d94d9bf46059c9c8a9386370c5978800a049 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitor.scala
@@ -8,9 +8,9 @@ import java.io.{File, PrintWriter}
import akka.actor.Actor
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.event._
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
import fr.univ_lille.cristal.emeraude.n2s3.support.event.{Subscribe, Unsubscribe}
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala
index b6038040a73eca6461609f34ca2acb9c86c25cb2..ec729531cf24bad11f0e615481851525c901e78a 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikeCounter.scala
@@ -1,9 +1,9 @@
package fr.univ_lille.cristal.emeraude.n2s3.features.learning
import akka.actor.Actor
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.WrapMessage
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
import fr.univ_lille.cristal.emeraude.n2s3.support.event.Subscribe
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NeuronLog.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NeuronLog.scala
index 3f9436d69d42d23f017c52c8e12215e7444aebe9..403db2a126c8172e8ad7d0fd8b6f21e5c395658f 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NeuronLog.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/NeuronLog.scala
@@ -6,10 +6,10 @@ import java.nio.file.Paths
import akka.actor.Actor
import akka.util.Timeout
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitTime._
import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.features.logging.graph.{InputOutputGraph, NeuronsGraph, ValuesGraph}
import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.NeuronPotentialResponse
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{ActorCompanion, PropsBuilder, SinglePropsBuilder}
@@ -124,13 +124,12 @@ class NeuronsPotentialsLogGraph(step: Int = 50, unit: TimeUnitType = MilliSecond
val graph = new ValuesGraph
var lastT = 0L
def receive = {
- case NeuronPotentialResponse(timestamp, source, value) => {
+ case NeuronPotentialResponse(timestamp, source, value) =>
if (timestamp - lastT > step) {
graph.refreshSerie(source.path.name, convert(unit, Time(timestamp)), value)
if (!(graph isRunning()))
graph.launch()
lastT = timestamp
}
- }
}
}
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SpikeMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SpikeMonitor.scala
index 86bf8156d4036da9bd6fb0cd4d8b49ecacfb0137..5c0a1f4d07feefa73912d889001455789ff1defe 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SpikeMonitor.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/SpikeMonitor.scala
@@ -3,10 +3,10 @@ package fr.univ_lille.cristal.emeraude.n2s3.features.logging
import akka.actor.{Actor, Props}
import akka.pattern.ask
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Config
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.LocalActorDeploymentStrategy
import fr.univ_lille.cristal.emeraude.n2s3.support.event.Subscribe
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala
index be41636330e8931ad0bd650ea1732be0ab812b30..0a5901eea0e8787a58398b2934f036e9a79d7124 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/LIFNeuron.scala
@@ -2,18 +2,16 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.bio
import fr.univ_lille.cristal.emeraude.n2s3.core
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
-import fr.univ_lille.cristal.emeraude.n2s3.core._
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds, NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
+import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
import fr.univ_lille.cristal.emeraude.n2s3.features.learning.{LTDUntil, LTPUntil}
import fr.univ_lille.cristal.emeraude.n2s3.models.qbg._
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
-import scala.collection.mutable
import scala.math._
/**
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala
index 213672bb4a908f303aa5f6ddc684e5e9b06068dd..83e983e628fd0379f7db8d9e44539d62b8b38c19 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRM2Neuron.scala
@@ -2,11 +2,10 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.bio
import fr.univ_lille.cristal.emeraude.n2s3.core
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronEnds, NeuronMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronEnds, NeuronFireEvent, NeuronFireResponse, NeuronMessage}
+import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembraneThresholdFloat, SynapticWeightFloat}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala
index 395ddcf9703ed33282b4e1033ebd13080ac1dc42..cba997907525b1f742d69a5e2f59856d98f32978 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/bio/SRMNeuron.scala
@@ -2,11 +2,10 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.bio
import fr.univ_lille.cristal.emeraude.n2s3.core
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
-import fr.univ_lille.cristal.emeraude.n2s3.core._
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds, NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
+import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembraneThresholdFloat, MembraneThresholdType, MembraneThresholdTypeEnum, SynapticWeightFloat}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
import fr.univ_lille.cristal.emeraude.n2s3.models.qbg._
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala
index dc66342cc5a9b9f333c3e82557a336e9de6dcf82..49836d21130f314dc0b38b576b8c51bdeedb19b2 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/integrate_and_fire/IntegrateAndFireNeuron.scala
@@ -1,9 +1,8 @@
package fr.univ_lille.cristal.emeraude.n2s3.models.integrate_and_fire
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{NeuronEnds, NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
/**
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala
index a99ff9ca50988c834b25758e543a0c7ff3642a5b..b0f6a40b7c041b694ca197fa3d74f15d8fe46ebe 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/izhikevich/Neuron.scala
@@ -6,10 +6,9 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.izhikevich
import fr.univ_lille.cristal.emeraude.n2s3.core
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds, NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.SynapticWeightFloat
import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.{BackwardSpike, QBGNeuronConnection}
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala
index fb936a7470bcdcc9ffbda528152b1b5fc8777ac0..a3d08fe8a987631a2d66187f1d93abbbe91223de 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/qbg/QBGNeuron.scala
@@ -5,11 +5,10 @@
package fr.univ_lille.cristal.emeraude.n2s3.models.qbg
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds, NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{NetworkEntityActor, ShapelessSpike, WeightedSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembraneThresholdTypeEnum, _}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala
index c8cf295538d7bd444ce60e954e8842a7af4e3d81..4ca147c80d8541265409bcdd6393173fe7cf51b2 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/models/ternary_synapse/Neuron.scala
@@ -6,27 +6,17 @@ package fr.univ_lille.cristal.emeraude.n2s3.models.ternary_synapse
import fr.univ_lille.cristal.emeraude.n2s3.core
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
-import fr.univ_lille.cristal.emeraude.n2s3.core._
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.Inhibition
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronEnds
-import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds}
-import fr.univ_lille.cristal.emeraude.n2s3.core.NeuronConnection.ConnectionEnds
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.{Inhibition, NeuronEnds, NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
+import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{ShapelessSpike, WeightedSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{NeuronFireEvent, NeuronFireResponse}
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.FloatSynapse
-import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.WeightedSynapse
-import fr.univ_lille.cristal.emeraude.n2s3.core.models.synapse.{FloatSynapse, WeightedSynapse}
import fr.univ_lille.cristal.emeraude.n2s3.features.learning.{LTDUntil, LTPUntil}
-import fr.univ_lille.cristal.emeraude.n2s3.features.logging.STDPImageGenerator
import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.{NeuronPotentialEvent, NeuronPotentialResponse, QBGParameters}
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
-import squants.electro.ElectricPotential
-import squants.electro.ElectricPotentialConversions.ElectricPotentialConversions
import scala.math._
-import scala.util.Random
object Neuron extends NeuronModel {
override def createNeuron(): Neuron = new Neuron()
diff --git a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ExampleFreeWay.scala b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ExampleFreeWay.scala
index 8e51052d762eee19afcaeb5f029aa10a93d938f8..8a0b647b95ff7a987acbd217114914ebf24cfc8a 100644
--- a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ExampleFreeWay.scala
+++ b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ExampleFreeWay.scala
@@ -3,11 +3,11 @@ package fr.univ_lille.cristal.emeraude.n2s3.apps
import akka.actor.Props
import akka.pattern.ask
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.Config
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.connection.types.FullConnection
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.{InputOutputGraphNetworkObserver, N2S3}
diff --git a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/Masquelier.scala b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/Masquelier.scala
index a2f3f97e3ffbdda81738db66cfaabdfdfdaf5159..ee952116b2558c3205d86a2e33d69ef502aa413a 100644
--- a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/Masquelier.scala
+++ b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/Masquelier.scala
@@ -5,10 +5,10 @@ import java.io.{File, PrintWriter}
import akka.actor.Props
import akka.pattern.ask
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, ShapelessSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.{MembraneThresholdFloat, MembraneThresholdType, MembraneThresholdTypeEnum}
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.connection.types.FullConnection
diff --git a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/SmallReservoir.scala b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/SmallReservoir.scala
index 7455516dbf34c1ffd38bb736e55eb90c3621a15f..50159d614b069f337bbd8e7e299953419c42aa89 100644
--- a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/SmallReservoir.scala
+++ b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/bio/SmallReservoir.scala
@@ -5,11 +5,11 @@ import java.io.{File, PrintWriter}
import akka.actor.Props
import akka.pattern.ask
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias._
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, ShapelessSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.connection.types.RandomConnection
diff --git a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/BitStream.scala b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/BitStream.scala
index f05cb32cec8fcf458e690648bc49b9b5f3832407..bbea2fe1e990430f2b1ab37e8f80efbbeab3dce4 100644
--- a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/BitStream.scala
+++ b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/BitStream.scala
@@ -3,27 +3,27 @@ package fr.univ_lille.cristal.emeraude.n2s3.apps.ternary
import java.io.{File, PrintWriter}
import akka.actor.Props
+import akka.pattern.ask
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronFireEvent
+import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
import fr.univ_lille.cristal.emeraude.n2s3.core._
+import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, ShapelessSpike}
+import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
-import fr.univ_lille.cristal.emeraude.n2s3.features.builder.connection.types.{FullConnection, ManualConnection}
+import fr.univ_lille.cristal.emeraude.n2s3.features.builder.connection.types.ManualConnection
import fr.univ_lille.cristal.emeraude.n2s3.features.io.input._
import fr.univ_lille.cristal.emeraude.n2s3.features.logging.{NeuronsFireLogText, NeuronsPotentialLogText}
import fr.univ_lille.cristal.emeraude.n2s3.models.qbg.NeuronPotentialEvent
-import fr.univ_lille.cristal.emeraude.n2s3.models.ternary_synapse.{FixedSynapse, InhibitorConnection, Neuron, Synapse}
+import fr.univ_lille.cristal.emeraude.n2s3.models.ternary_synapse.{FixedSynapse, Neuron}
import fr.univ_lille.cristal.emeraude.n2s3.support.actors.LocalActorDeploymentStrategy
+import fr.univ_lille.cristal.emeraude.n2s3.support.event.Subscribe
import fr.univ_lille.cristal.emeraude.n2s3.support.io.{InputSeq, N2S3Input, N2S3InputEnd, N2S3InputSpike}
import scala.collection.mutable.ListBuffer
import scala.concurrent.Await
import scala.util.Random
-import akka.pattern.ask
-import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
-import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, ShapelessSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.NeuronFireEvent
-import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties._
-import fr.univ_lille.cristal.emeraude.n2s3.support.event.Subscribe
/**
* Created by falezp on 14/10/16.
*/
diff --git a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/PatternStart.scala b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/PatternStart.scala
index 44aeb1d20483be6213843e4bf4311a4f69543950..2ab105e856c5966fed4f0eeecfc7c10b1b40e06b 100644
--- a/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/PatternStart.scala
+++ b/n2s3_examples/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/apps/ternary/PatternStart.scala
@@ -5,11 +5,11 @@ import java.io.{File, PrintWriter}
import akka.actor.Props
import akka.pattern.ask
import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
+import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
import fr.univ_lille.cristal.emeraude.n2s3.core.UnitCast._
import fr.univ_lille.cristal.emeraude.n2s3.core._
import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, ShapelessSpike}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.NeuronFireEvent
import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.MembraneThresholdFloat
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
import fr.univ_lille.cristal.emeraude.n2s3.features.builder.connection.types.FullConnection