From 42f08b0965cb6e982bedb43c8c159a3fa7717224 Mon Sep 17 00:00:00 2001
From: guille <guillermopolito@gmail.com>
Date: Thu, 27 Oct 2016 17:39:21 +0200
Subject: [PATCH] Moved Label change events close to input

---
 .../cristal/emeraude/n2s3/core/InputLayer.scala | 17 ++++++++++++-----
 .../n2s3/core/event/LabelChangeEvent.scala      |  8 --------
 .../n2s3/core/event/LabelChangeResponse.scala   |  9 ---------
 .../io/report/BenchmarkMonitorRef.scala         |  1 -
 .../features/learning/BackPropagation.scala     |  3 +--
 .../features/learning/SpikingSquareError.scala  |  1 -
 .../n2s3/features/learning/SquareError.scala    |  1 -
 .../learning/SupervisedSTDPLearning.scala       |  1 -
 .../n2s3/features/logging/LabelMonitor.scala    |  7 +++----
 9 files changed, 16 insertions(+), 32 deletions(-)
 delete mode 100644 n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeEvent.scala
 delete mode 100644 n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeResponse.scala

diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/InputLayer.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/InputLayer.scala
index 195d015c..a5e7cdb3 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/InputLayer.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/InputLayer.scala
@@ -4,19 +4,26 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.GlobalTypesAlias.Timestamp
 import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronMessage
 import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer._
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.WrapMessage
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{LabelChangeEvent, LabelChangeResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.features.io.input.StreamSupport
 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.{Observable, ObservableMessage, TimedEvent, TimedEventResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.support.io._
 
 import scala.annotation.tailrec
 
-/**
-  * Input Layer Mesages
-  */
+/********************************************************************************************************************
+ * Messages
+ ******************************************************************************************************************/
+
 object AskRemainInput extends Message
 
+/********************************************************************************************************************
+ * Events
+ ******************************************************************************************************************/
+
+object LabelChangeEvent extends TimedEvent[LabelChangeResponse]
+case class LabelChangeResponse(timestamp: Timestamp, endTime : Timestamp, label : String) extends TimedEventResponse
+
 /**
   * Specialization of the NetworkContainer for the input layer
   */
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeEvent.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeEvent.scala
deleted file mode 100644
index fa2719c6..00000000
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeEvent.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.TimedEvent
-
-/**
-  * Created by guille on 10/14/16.
-  */
-object LabelChangeEvent extends TimedEvent[LabelChangeResponse]
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeResponse.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeResponse.scala
deleted file mode 100644
index 8ae97513..00000000
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/core/event/LabelChangeResponse.scala
+++ /dev/null
@@ -1,9 +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.support.event.TimedEventResponse
-
-/********************************************************************************************************
-  *  Event triggered when an input has a new label
-  *******************************************************************************************************/
-case class LabelChangeResponse(timestamp: Timestamp, endTime : Timestamp, label : String) extends TimedEventResponse
\ No newline at end of file
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitorRef.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitorRef.scala
index edda7309..4418da12 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitorRef.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/io/report/BenchmarkMonitorRef.scala
@@ -9,7 +9,6 @@ import akka.pattern.ask
 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.LabelChangeEvent
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder.{N2S3, NeuronGroupObserverRef, NeuronGroupRef}
 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/features/learning/BackPropagation.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/BackPropagation.scala
index 3e5e9e5f..639304f4 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/BackPropagation.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/BackPropagation.scala
@@ -7,9 +7,8 @@ package fr.univ_lille.cristal.emeraude.n2s3.features.learning
 import akka.actor.{Actor, ActorRef, Props}
 import akka.pattern.ask
 import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.{Next, WaitEndOfActivity}
-import fr.univ_lille.cristal.emeraude.n2s3.core.{ExternalSender, GetProperty, NetworkEntityPath, PropertyValue, _}
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, WrapMessage}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{LabelChangeEvent, LabelChangeResponse}
+import fr.univ_lille.cristal.emeraude.n2s3.core.{ExternalSender, GetProperty, NetworkEntityPath, PropertyValue, _}
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder.NeuronLayer
 import fr.univ_lille.cristal.emeraude.n2s3.features.logging.graph.ValuesGraph
 import fr.univ_lille.cristal.emeraude.n2s3.support.actors.{AbstractActorSystem, LocalActorDeploymentStrategy, PropsBuilder}
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikingSquareError.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikingSquareError.scala
index 9bd75df6..52ffa20f 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikingSquareError.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SpikingSquareError.scala
@@ -5,7 +5,6 @@ import akka.pattern.ask
 import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.{Next, WaitEndOfActivity}
 import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, WrapMessage}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{LabelChangeEvent, LabelChangeResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.SynapticWeightFloat
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder.NeuronLayer
 import fr.univ_lille.cristal.emeraude.n2s3.features.logging.graph.ValuesGraph
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SquareError.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SquareError.scala
index 8f66d942..1d98c3ef 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SquareError.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SquareError.scala
@@ -5,7 +5,6 @@ import akka.pattern.ask
 import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.{Next, WaitEndOfActivity}
 import fr.univ_lille.cristal.emeraude.n2s3.core._
 import fr.univ_lille.cristal.emeraude.n2s3.core.actors.{Config, WrapMessage}
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{LabelChangeEvent, LabelChangeResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.core.models.properties.SynapticWeightFloat
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder.NeuronLayer
 import fr.univ_lille.cristal.emeraude.n2s3.features.logging.graph.ValuesGraph
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala
index 71c9f68d..38bd63a8 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/learning/SupervisedSTDPLearning.scala
@@ -7,7 +7,6 @@ import fr.univ_lille.cristal.emeraude.n2s3.core.Neuron.NeuronMessage
 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.WrapMessage
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{LabelChangeEvent, LabelChangeResponse}
 import fr.univ_lille.cristal.emeraude.n2s3.features.builder.N2S3
 import fr.univ_lille.cristal.emeraude.n2s3.support.actors.Message
 import fr.univ_lille.cristal.emeraude.n2s3.support.event.{SubscribeSynchronized, SynchronizedEvent}
diff --git a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LabelMonitor.scala b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LabelMonitor.scala
index 6a639b8a..49278510 100644
--- a/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LabelMonitor.scala
+++ b/n2s3/src/main/scala/fr/univ_lille/cristal/emeraude/n2s3/features/logging/LabelMonitor.scala
@@ -1,18 +1,17 @@
 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._
+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.features.builder.N2S3
 import fr.univ_lille.cristal.emeraude.n2s3.support.actors.LocalActorDeploymentStrategy
+import fr.univ_lille.cristal.emeraude.n2s3.support.event.Subscribe
 
 import scala.collection.mutable.ArrayBuffer
 import scala.concurrent.Await
-import akka.pattern.ask
-import fr.univ_lille.cristal.emeraude.n2s3.core.Synchronizer.Done
-import fr.univ_lille.cristal.emeraude.n2s3.core.event.{LabelChangeEvent, LabelChangeResponse}
-import fr.univ_lille.cristal.emeraude.n2s3.support.event.Subscribe
 /**
   * Created by falezp on 19/10/16.
   */
-- 
GitLab