Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Belle2019-09-01 18:20:54 -0400
committerJan Belle2019-09-01 18:42:53 -0400
commitbc4a294298a95dd99b2bcd608874ed1a7ac04040 (patch)
tree397551248a9dde39a032af1f4e862caba6c14895
parenta7409264ceddf20eafe5e8e17d907d1d59edf6bc (diff)
downloadorg.eclipse.etrice-bc4a294298a95dd99b2bcd608874ed1a7ac04040.tar.gz
org.eclipse.etrice-bc4a294298a95dd99b2bcd608874ed1a7ac04040.tar.xz
org.eclipse.etrice-bc4a294298a95dd99b2bcd608874ed1a7ac04040.zip
[generator] Remove support for data logging
-rw-r--r--features/org.eclipse.etrice.feature/feature.xml7
-rw-r--r--plugins/org.eclipse.etrice.doc/featuremodel/etrice.codegenerators.featurizer76
-rw-r--r--plugins/org.eclipse.etrice.generator.c/META-INF/MANIFEST.MF1
-rw-r--r--plugins/org.eclipse.etrice.generator.c/build.gradle1
-rw-r--r--plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/Main.java8
-rw-r--r--plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeGen.xtend114
-rw-r--r--plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeRunnerGen.xtend10
-rw-r--r--plugins/org.eclipse.etrice.generator.gnuplot/.classpath8
-rw-r--r--plugins/org.eclipse.etrice.generator.gnuplot/.gitignore2
-rw-r--r--plugins/org.eclipse.etrice.generator.gnuplot/.project34
-rw-r--r--plugins/org.eclipse.etrice.generator.gnuplot/META-INF/MANIFEST.MF23
-rw-r--r--plugins/org.eclipse.etrice.generator.gnuplot/build.gradle9
-rw-r--r--plugins/org.eclipse.etrice.generator.gnuplot/build.properties5
-rw-r--r--plugins/org.eclipse.etrice.generator.gnuplot/src/org/eclipse/etrice/generator/gnuplot/GnuplotScriptGenerator.xtend169
-rw-r--r--plugins/org.eclipse.etrice.generator.launch.java/src/org/eclipse/etrice/generator/launch/java/JavaGeneratorConfigTab.java2
-rw-r--r--plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorConfigTab.java8
-rw-r--r--plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorLaunchConfigurationDelegate.java3
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptions.java8
-rw-r--r--plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptionsHelper.java4
-rw-r--r--pom.xml1
-rw-r--r--runtime/org.eclipse.etrice.modellib.c/model/etrice/api/annotations.room24
-rw-r--r--runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.c65
-rw-r--r--runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.h135
-rw-r--r--runtime/org.eclipse.etrice.runtime.c/src/config/etRuntimeConfig.h5
-rw-r--r--settings.gradle1
25 files changed, 0 insertions, 723 deletions
diff --git a/features/org.eclipse.etrice.feature/feature.xml b/features/org.eclipse.etrice.feature/feature.xml
index 96fb6fa79..321a51fb6 100644
--- a/features/org.eclipse.etrice.feature/feature.xml
+++ b/features/org.eclipse.etrice.feature/feature.xml
@@ -317,13 +317,6 @@ http://www.eclipse.org/legal/epl-v20.html
unpack="false"/>
<plugin
- id="org.eclipse.etrice.generator.gnuplot"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
id="org.eclipse.etrice.expressions.ui"
download-size="0"
install-size="0"
diff --git a/plugins/org.eclipse.etrice.doc/featuremodel/etrice.codegenerators.featurizer b/plugins/org.eclipse.etrice.doc/featuremodel/etrice.codegenerators.featurizer
index 808cc0675..b75796a67 100644
--- a/plugins/org.eclipse.etrice.doc/featuremodel/etrice.codegenerators.featurizer
+++ b/plugins/org.eclipse.etrice.doc/featuremodel/etrice.codegenerators.featurizer
@@ -15,7 +15,6 @@ Feature CCodeGenerator
contains GenerationOptions
contains MSCLogging
- contains DataLogging
stable
;
@@ -63,81 +62,6 @@ Feature MSCLogging
stable
;
-Feature DataLogging
- description '''Runtime logger for data-driven Messages with primitive data.'''
- text '''
- The DataLogging uses an annotation to configure the generated instrumentation:
-
- ```room
- @DataLogging(pathlist = "/portInstancePath,/portInstancePath,..")
- ```
-
- Where `pathlist` is a string specifying a list of port instances which should be instrumented for data logging:
-
- - the path of a port instance starts with the name of the [LogicalSystem][] and thus consists of at least 4 following segments
- `/portInstancePath` = `/LogicalSystem/SubSystemRef/ActorRef/Port`
- - multiple paths are separated through comma (`,`), but avoid any whitespace
- - the [Port][] must be conjugated and it´s [ProtocolClass][] has to be data-driven
- - only the first Message having primitive or enum typed data is considered
-
- The logging status can be verified in the generation console. It will output an overview of all accepted ports. In the [GenerationOptions][] is possible to (de)activate the data logging and thus ignoring the presence of the annotation.
-
- At runtime the data values will then be logged
-
- - into a file *log/SubSystemRef.data.csv*
- - it contains one column for each port instance
- - and a new row for every polling cycle, containing all readout data values
- - the first column is used to number the cycles
-
- Multi-Threading is not supported, the system must have not more than one polled/async physical thread.
-
-
- The built-in **Gnuplot script generator** provides a convenient way to visualize the logged data. It generates a gnuplot script that can be used to create graphs from the logged data values.
-
- * Download Gnuplot from [www.gnuplot.info](http://www.gnuplot.info/) and add it to the environment variable *PATH* (e.g. `C:\Program Files\gnuplot\bin;`)
- * Use the `@Gnuplot` and `@GnuplotGraph` to configure the script generation (see example)
- * The generated artifacts can be found in *src-gen/gnuplot*:
- - *xxx.csv-script.plt* - the gnuplot script, the resulting images are place in folder *log/*
- - *create_gnuplot.launch* - a launch configuration to call gnuplot executable with above script
-
- '''
- example '''
- ```room
- import room.basic.annotations.* from "../../org.eclipse.etrice.modellib.c/model/Annotations.room"
-
- LogicalSystem Logging {
- SubSystemRef main: MainSubSystem
- }
-
- SubSystemClass MainSubSystem {
- @DataLogging(pathlist = "/Logging/main/actorRef1/port1")
- @Gnuplot(format="pngcairo", outputfile="main.data.png", width=1800, height=600, fontsize=10)
- @GnuplotGraph(
- paths="/Logging/main/actorRef1/port1",
- xtics=100, mxtics=4, ymin=-1.2, ymax=1.2
- )
- ```
-
- Logged data values in .csv format:
- ```
- , /LogSys/subSystemRef/rootActor/serverInst/output, /LogSys/subSystemRef/rootActor/clientInst/output
- 0, 0.000000 ,0.000000
- 1, 0.000000 ,0.100000
- 2, 0.099833 ,0.200000
- 3, 0.198669 ,0.300000
- 4, 0.295520 ,0.400000
- 5, 0.389418 ,0.500000
- [...]
- ```
-
- Resulting graph created from generated gnuplot script:
- ![Gnuplot example](images/300-Gnuplot.png)
- '''
-
- uses Annotation
- prototype
-;
-
//Feature ^DocumentationGenerator
// description '''A LaTeX documentation generator from eTrice models.'''
// uses GenerationOptions
diff --git a/plugins/org.eclipse.etrice.generator.c/META-INF/MANIFEST.MF b/plugins/org.eclipse.etrice.generator.c/META-INF/MANIFEST.MF
index f339524dd..b5346d4b1 100644
--- a/plugins/org.eclipse.etrice.generator.c/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.etrice.generator.c/META-INF/MANIFEST.MF
@@ -14,7 +14,6 @@ Require-Bundle: org.eclipse.etrice.core.genmodel;bundle-version="2.0.0",
org.eclipse.xtend.lib;bundle-version="2.6.0",
org.eclipse.xtext.generator;bundle-version="2.6.0",
org.eclipse.xtext.util;bundle-version="2.6.0",
- org.eclipse.etrice.generator.gnuplot;bundle-version="2.0.0",
org.eclipse.etrice.generator.base;bundle-version="2.0.0",
org.eclipse.etrice.generator.config
Import-Package: org.apache.log4j
diff --git a/plugins/org.eclipse.etrice.generator.c/build.gradle b/plugins/org.eclipse.etrice.generator.c/build.gradle
index f2ade81db..0eef860b6 100644
--- a/plugins/org.eclipse.etrice.generator.c/build.gradle
+++ b/plugins/org.eclipse.etrice.generator.c/build.gradle
@@ -13,7 +13,6 @@ dependencies {
compile project(':plugins:org.eclipse.etrice.generator')
compile project(':plugins:org.eclipse.etrice.generator.fsm')
compile project(':plugins:org.eclipse.etrice.generator.config')
- compile project(':plugins:org.eclipse.etrice.generator.gnuplot')
compile "org.eclipse.xtend:org.eclipse.xtend.lib:$versions.xtext"
compile "org.eclipse.xtext:org.eclipse.xtext:$versions.xtext"
diff --git a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/Main.java b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/Main.java
index 891517a98..bc6f643e3 100644
--- a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/Main.java
+++ b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/Main.java
@@ -28,7 +28,6 @@ import org.eclipse.etrice.generator.base.logging.Loglevel;
import org.eclipse.etrice.generator.c.gen.MainGen;
import org.eclipse.etrice.generator.c.gen.Validator;
import org.eclipse.etrice.generator.c.setup.GeneratorModule;
-import org.eclipse.etrice.generator.c.setup.GeneratorOptions;
import com.google.inject.Inject;
@@ -84,9 +83,6 @@ public class Main extends AbstractGenerator {
private MainGen mainGenerator;
@Inject
- protected org.eclipse.etrice.generator.gnuplot.GnuplotScriptGenerator gnuPlotGenerator;
-
- @Inject
private Validator validator;
@Inject
@@ -134,10 +130,6 @@ public class Main extends AbstractGenerator {
logger.logInfo("-- starting code generation");
mainGenerator.doGenerate(genModel.eResource());
- if(arguments.get(GeneratorOptions.DATA_INSTR)){
- gnuPlotGenerator.doGenerate(genModel);
- }
-
if (diagnostician.isFailed()) {
logger.logError("errors during code generation");
return GENERATOR_ERROR;
diff --git a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeGen.xtend b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeGen.xtend
index 7e7cf3e24..5d6f3fca7 100644
--- a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeGen.xtend
+++ b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeGen.xtend
@@ -21,7 +21,6 @@ import java.util.ArrayList
import java.util.Collection
import java.util.HashMap
import java.util.HashSet
-import org.eclipse.etrice.core.common.base.LiteralType
import org.eclipse.etrice.core.common.base.StringLiteral
import org.eclipse.etrice.core.common.converter.TimeConverter
import org.eclipse.etrice.core.etmap.util.ETMapUtil
@@ -34,15 +33,12 @@ import org.eclipse.etrice.core.genmodel.etricegen.PortInstance
import org.eclipse.etrice.core.genmodel.etricegen.Root
import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance
import org.eclipse.etrice.core.room.CommunicationType
-import org.eclipse.etrice.core.room.EnumerationType
import org.eclipse.etrice.core.room.Port
-import org.eclipse.etrice.core.room.PrimitiveType
import org.eclipse.etrice.core.room.ProtocolClass
import org.eclipse.etrice.core.room.SAP
import org.eclipse.etrice.core.room.SPP
import org.eclipse.etrice.core.room.util.RoomHelpers
import org.eclipse.etrice.generator.base.io.IGeneratorFileIO
-import org.eclipse.etrice.generator.base.logging.ILogger
import org.eclipse.etrice.generator.c.Main
import org.eclipse.etrice.generator.c.setup.GeneratorOptionsHelper
import org.eclipse.etrice.generator.fsm.base.IntelligentSeparator
@@ -62,7 +58,6 @@ class NodeGen {
@Inject IGeneratorFileIO fileIO
@Inject Initialization attrInitGenAddon
- @Inject ILogger logger;
def doGenerate(Root root) {
for (nr : ETMapUtil::getNodeRefs()) {
@@ -139,7 +134,6 @@ class NodeGen {
val ssc = ssi.subSystemClass
val clsname = nr.name+"_"+ssi.name
val threads = nr.type.threads.filter(t|usedThreads.contains(t))
- val logData = Main::settings.generateDataInstrumentation && ssc.annotations.isAnnotationPresent("DataLogging")
'''
/**
* @author generated by eTrice
@@ -156,7 +150,6 @@ class NodeGen {
#include "debugging/etLogger.h"
#include "debugging/etMSCLogger.h"
- #include "debugging/etDataLogger.h"
#include "messaging/etSystemProtocol.h"
#include "osal/etTimer.h"
#include "osal/etSema.h"
@@ -252,15 +245,6 @@ class NodeGen {
/* init all actors */
«clsname»_initActorInstances();
- «IF logData»
- «FOR thread: threads»
- MsgDispatcher_«thread.name»_logDataHeaders();
- «ENDFOR»
- «FOR thread: threads»
- MsgDispatcher_«thread.name»_logData();
- «ENDFOR»
- «ENDIF»
-
ET_MSC_LOGGER_SYNC_EXIT
}
@@ -655,8 +639,6 @@ class NodeGen {
def private generateDispatcherFile(Root root, SubSystemInstance ssi, Collection<PhysicalThread> usedThreads) {
val nr = ETMapUtil::getNodeRef(ssi)
- val logData = Main::settings.generateDataInstrumentation && ssi.subSystemClass.annotations.isAnnotationPresent("DataLogging")
- val loggedPorts = if(logData) ssi.loggedPorts else newArrayList
'''
/**
@@ -686,19 +668,6 @@ class NodeGen {
«ENDFOR»
ET_MSC_LOGGER_SYNC_EXIT
}
- «IF logData»
- static void MsgDispatcher_«thread.name»_logDataHeaders(void){
- «FOR pi: loggedPorts»
- ET_DATA_LOGGER_LOG_STRING("«pi.path»")
- «ENDFOR»
- }
- static void MsgDispatcher_«thread.name»_logData(void){
- ET_DATA_LOGGER_NEW_ROW
- «FOR pi: loggedPorts»
- «pi.createLoggerCall»
- «ENDFOR»
- }
- «ENDIF»
«ENDIF»
/**
@@ -712,9 +681,6 @@ class NodeGen {
«IF !executedInstances.empty»
if (msg->evtID == etSystemProtocol_IN_poll) {
MsgDispatcher_«thread.name»_poll();
- «IF logData»
- MsgDispatcher_«thread.name»_logData();
- «ENDIF»
}
else
«ENDIF»
@@ -788,86 +754,6 @@ class NodeGen {
'''
}
- def private createLoggerCall(PortInstance pi) {
- val msg = pi.protocol.incomingMessages.filter(m|m.data!==null && m.data.refType.type.enumerationOrPrimitive).get(0)
- val ai = pi.eContainer as ActorInstance
- val data = ai.path.pathName+"."+pi.name+"."+msg.name
- val type = if (msg.data.refType.type instanceof EnumerationType) LiteralType.INT
- else (msg.data.refType.type as PrimitiveType).type
-
- switch (type) {
- case LiteralType.BOOL: "ET_DATA_LOGGER_LOG_BOOL((int)"+data+")"
- case LiteralType.CHAR: "ET_DATA_LOGGER_LOG_INT((int)"+data+")"
- case LiteralType.INT: "ET_DATA_LOGGER_LOG_INT((int)"+data+")"
- case LiteralType.REAL: "ET_DATA_LOGGER_LOG_DOUBLE((double)"+data+")"
- default: "internal error: unknown primitive type"
- }
- }
-
- def private loggedPorts(SubSystemInstance ssi) {
- val ArrayList<PortInstance> result = newArrayList
-
- if (ssi.subSystemClass.annotations.isAnnotationPresent("DataLogging")) {
- logger.logInfo("Data Logging is configured by annotation");
-
- val filters = ssi.subSystemClass.annotations.getAttribute("DataLogging", "pathlist")
- val filterList = filters.split(",")
- for (filter: filterList) {
- logger.logInfo(" filter: "+filter);
- }
-
- val ArrayList<String> notLogged = newArrayList
-
- logger.logInfo(" logged ports:");
- var iter = ssi.eAllContents
- while (iter.hasNext) {
- val obj = iter.next
- if (obj instanceof PortInstance) {
- val pi = obj
- if (!pi.port.relay) {
- // only data driven
- if (pi.protocol.commType==CommunicationType::DATA_DRIVEN) {
- // only send ports
- if (pi.port.conjugated) {
- val path = pi.path
- var boolean matched = false
- var primitive = false
- for (filter: filterList) {
- if (path.matches(filter)) {
- matched = true
- if (!pi.protocol.incomingMessages.filter(m|m.data!==null && m.data.refType.type.enumerationOrPrimitive).empty) {
- result.add(pi)
- primitive = true
- logger.logInfo(" data driven port "+pi.path+" (matched "+filter+")");
- }
- }
- }
- if (!primitive) {
- if (matched) {
- notLogged.add(" data driven port "+pi.path+" (matched but contains no primitive data)");
- }
- else {
- notLogged.add(" data driven port "+pi.path+" (no match found)");
- }
- }
- }
- else {
- notLogged.add(" data driven port "+pi.path+" (receive port)");
- }
- }
- }
- }
- }
-
- logger.logInfo(" NOT logged ports:");
- for (nl: notLogged) {
- logger.logInfo(nl);
- }
- }
-
- return result
- }
-
def private checkDataPorts(SubSystemInstance comp) {
val found = new HashSet<String>()
for (ai: comp.allContainedInstances) {
diff --git a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeRunnerGen.xtend b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeRunnerGen.xtend
index da14d915f..62986a4ff 100644
--- a/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeRunnerGen.xtend
+++ b/plugins/org.eclipse.etrice.generator.c/src/org/eclipse/etrice/generator/c/gen/NodeRunnerGen.xtend
@@ -21,7 +21,6 @@ import org.eclipse.etrice.core.genmodel.etricegen.Root
import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance
import org.eclipse.etrice.generator.generic.RoomExtensions
import org.eclipse.etrice.core.etmap.util.ETMapUtil
-import org.eclipse.etrice.core.common.base.util.BaseHelpers
import org.eclipse.etrice.generator.c.Main
import org.eclipse.etrice.generator.c.setup.GeneratorOptionsHelper
import org.eclipse.etrice.generator.base.io.IGeneratorFileIO
@@ -29,7 +28,6 @@ import org.eclipse.etrice.generator.base.io.IGeneratorFileIO
@Singleton
class NodeRunnerGen {
- @Inject extension BaseHelpers
@Inject extension IGeneratorFileIO fileIO
@Inject extension CExtensions
@Inject extension RoomExtensions
@@ -54,7 +52,6 @@ class NodeRunnerGen {
def generateSourceFile(Root root, SubSystemInstance ssi, boolean first) {
val nr = ETMapUtil::getNodeRef(ssi)
val clsname = nr.name+"_"+ssi.name
- val logData = Main.getSettings.isGenerateDataInstrumentation && ssi.subSystemClass.annotations.isAnnotationPresent("DataLogging")
'''
/**
* @author generated by eTrice
@@ -69,7 +66,6 @@ class NodeRunnerGen {
#include "debugging/etLogger.h"
#include "debugging/etMSCLogger.h"
- #include "debugging/etDataLogger.h"
#include "osal/etPlatformLifecycle.h"
@@ -93,9 +89,6 @@ class NodeRunnerGen {
etLogger_logInfo("*** T H E B E G I N ***");
ET_MSC_LOGGER_OPEN("main");
- «IF logData»
- ET_DATA_LOGGER_OPEN("main");
- «ENDIF»
/* startup sequence of lifecycle */
«clsname»_init(); /* lifecycle init */
@@ -112,9 +105,6 @@ class NodeRunnerGen {
«clsname»_stop(); /* lifecycle stop */
«clsname»_destroy(); /* lifecycle destroy */
- «IF logData»
- ET_DATA_LOGGER_CLOSE
- «ENDIF»
ET_MSC_LOGGER_CLOSE
etLogger_logInfo("*** T H E E N D ***");
diff --git a/plugins/org.eclipse.etrice.generator.gnuplot/.classpath b/plugins/org.eclipse.etrice.generator.gnuplot/.classpath
deleted file mode 100644
index 3e8f94782..000000000
--- a/plugins/org.eclipse.etrice.generator.gnuplot/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="xtend-gen"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.etrice.generator.gnuplot/.gitignore b/plugins/org.eclipse.etrice.generator.gnuplot/.gitignore
deleted file mode 100644
index 65847a73f..000000000
--- a/plugins/org.eclipse.etrice.generator.gnuplot/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-*._trace
diff --git a/plugins/org.eclipse.etrice.generator.gnuplot/.project b/plugins/org.eclipse.etrice.generator.gnuplot/.project
deleted file mode 100644
index 69d0f9b43..000000000
--- a/plugins/org.eclipse.etrice.generator.gnuplot/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.gnuplot</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.etrice.generator.gnuplot/META-INF/MANIFEST.MF b/plugins/org.eclipse.etrice.generator.gnuplot/META-INF/MANIFEST.MF
deleted file mode 100644
index 9ce7816c1..000000000
--- a/plugins/org.eclipse.etrice.generator.gnuplot/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,23 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Gnuplot generator
-Bundle-SymbolicName: org.eclipse.etrice.generator.gnuplot
-Bundle-Version: 2.0.0.qualifier
-Export-Package: org.eclipse.etrice.generator.gnuplot
-Require-Bundle: org.eclipse.xtext;bundle-version="2.6.0",
- org.eclipse.xtend.lib;bundle-version="2.6.0",
- org.eclipse.etrice.generator;bundle-version="2.0.0",
- org.eclipse.etrice.generator.fsm;bundle-version="2.0.0",
- org.eclipse.etrice.core.room;bundle-version="2.0.0",
- org.eclipse.etrice.core.genmodel;bundle-version="2.0.0",
- org.eclipse.etrice.core.etphys;bundle-version="2.0.0",
- org.eclipse.etrice.generator.config;bundle-version="2.0.0",
- org.eclipse.etrice.generator.java;bundle-version="2.0.0",
- org.eclipse.etrice.core.config;bundle-version="2.0.0",
- org.eclipse.etrice.core.etmap;bundle-version="2.0.0",
- org.eclipse.core.runtime;bundle-version="3.10.0",
- org.eclipse.etrice.abstractexec.behavior;bundle-version="2.0.0",
- org.eclipse.etrice.generator.base;bundle-version="2.0.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
-Automatic-Module-Name: org.eclipse.etrice.generator.gnuplot
diff --git a/plugins/org.eclipse.etrice.generator.gnuplot/build.gradle b/plugins/org.eclipse.etrice.generator.gnuplot/build.gradle
deleted file mode 100644
index aff2b6450..000000000
--- a/plugins/org.eclipse.etrice.generator.gnuplot/build.gradle
+++ /dev/null
@@ -1,9 +0,0 @@
-dependencies {
- compile project(':plugins:org.eclipse.etrice.core.common')
- compile project(':plugins:org.eclipse.etrice.core.genmodel')
- compile project(':plugins:org.eclipse.etrice.generator')
- compile project(':plugins:org.eclipse.etrice.generator.fsm')
-
- compile "org.eclipse.xtend:org.eclipse.xtend.lib:$versions.xtext"
- compile "org.eclipse.xtext:org.eclipse.xtext:$versions.xtext"
-} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.generator.gnuplot/build.properties b/plugins/org.eclipse.etrice.generator.gnuplot/build.properties
deleted file mode 100644
index c3d5e96b2..000000000
--- a/plugins/org.eclipse.etrice.generator.gnuplot/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/,\
- xtend-gen/
-bin.includes = META-INF/,\
- .
-
diff --git a/plugins/org.eclipse.etrice.generator.gnuplot/src/org/eclipse/etrice/generator/gnuplot/GnuplotScriptGenerator.xtend b/plugins/org.eclipse.etrice.generator.gnuplot/src/org/eclipse/etrice/generator/gnuplot/GnuplotScriptGenerator.xtend
deleted file mode 100644
index f878b1cdd..000000000
--- a/plugins/org.eclipse.etrice.generator.gnuplot/src/org/eclipse/etrice/generator/gnuplot/GnuplotScriptGenerator.xtend
+++ /dev/null
@@ -1,169 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * CONTRIBUTORS:
- * Eyrak Pean (initial contribution)
- * Juergen Haug
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.generator.gnuplot
-
-import com.google.inject.Inject
-import org.eclipse.etrice.core.common.base.Annotation
-import org.eclipse.etrice.core.common.base.IntLiteral
-import org.eclipse.etrice.core.common.base.KeyValue
-import org.eclipse.etrice.core.common.base.RealLiteral
-import org.eclipse.etrice.core.common.base.StringLiteral
-import org.eclipse.etrice.core.genmodel.etricegen.Root
-import org.eclipse.etrice.core.genmodel.etricegen.SubSystemInstance
-import org.eclipse.etrice.generator.base.io.IGeneratorFileIO
-import com.google.inject.Singleton
-
-@Singleton
-class GnuplotScriptGenerator {
- @Inject
- IGeneratorFileIO fileIo
-
- def doGenerate(Root root) {
- if (root.subSystemInstances.empty)
- return;
-
- // TODO: warning more than one ssi
- val ssi = root.subSystemInstances.head
- if(!ssi.subSystemClass.annotations.exists[a |a.type.name == "Gnuplot"])
- return;
-
- try {
- fileIo.generateFile("Generating gnuplot script for subsystem " + ssi.name, "/gnuplot/main.data.csv-script.plt", ssi.generatePlotScript)
- fileIo.generateFile("Generating gnuplot launch configuration", "/gnuplot/create_gnuplot.launch", gnuPlotLaunchFile)
- } catch (Exception e) {
- //e.printStackTrace
- }
-
- }
-
- def protected gnuPlotLaunchFile() '''
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
- <launchConfiguration type="org.eclipse.ui.externaltools.ProgramLaunchConfigurationType">
- <stringAttribute key="org.eclipse.ui.externaltools.ATTR_LAUNCH_CONFIGURATION_BUILD_SCOPE" value="${none}"/>
- <stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${system_path:gnuplot}"/>
- <stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value="${project_loc}/src-gen/gnuplot/main.data.csv-script.plt"/>
- <stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${project_loc}"/>
- </launchConfiguration>
-
- '''
-
- def protected getAttribute(Annotation anno, String name) {
- anno.attributes.findFirst[attr|attr.key == name]
- }
-
- def protected asString(KeyValue kv) {
- if (kv.value instanceof StringLiteral)
- (kv.value as StringLiteral).value
- else
- null
- }
-
- def protected asReal(KeyValue kv) {
- if (kv.value instanceof RealLiteral)
- (kv.value as RealLiteral).value
- else if (kv.value instanceof IntLiteral)
- (kv.value as IntLiteral).value as double
- else
- null
- }
-
- def protected asInteger(KeyValue kv) {
- if (kv.value instanceof IntLiteral)
- (kv.value as IntLiteral).value
- else
- null
- }
-
- def protected generatePlotScript(SubSystemInstance ssi) {
-
- // TODO: warn if more than one GnuPlot annotation
-// val plotAnnotation = ssi.subSystemClass.annotations.filter [ a |
-// a.type.name == "Gnuplot"
-// ].head
-//
-// val defaultFontsize = 10
-
- // TODO: error checking
-// val format = plotAnnotation?.getAttribute("format")?.asString
-// val outputfile = plotAnnotation?.getAttribute("outputfile")?.asString
-// val width = plotAnnotation?.getAttribute("width")?.asInteger
-// val height = plotAnnotation?.getAttribute("height")?.asInteger
-// val fontsize = plotAnnotation?.getAttribute("fontsize")?.asInteger ?: defaultFontsize
-//
-// val graphAnnotations = ssi.subSystemClass.annotations.filter [ a |
-// a.type.name == "GnuplotGraph"
-// ].toList
-
- '''
- #!/gnuplot
-
- # Color Brewer set1 5-set
- set linetype 1 lc rgb '#e41a1c' lw 1
- set linetype 2 lc rgb '#377eb8' lw 1
- set linetype 3 lc rgb '#4daf4a' lw 1
- set linetype 4 lc rgb '#984ea3' lw 1
- set linetype 5 lc rgb '#ff7f00' lw 1
- set linetype cycle 5
-
- cd 'log'
- set datafile separator comma
- set terminal �format� size �width�,�height� font ",�fontsize�" background "white"
- set output '�outputfile�'
- set size 1,1
- set multiplot layout �graphAnnotations.size�,1
- set grid
- show grid
- set format y "% 5.3f"
- �var i = 0�
- �FOR a : graphAnnotations�
-
- �ssi.generateGraph(a, i++, graphAnnotations.size)�
- �ENDFOR�
-
- unset multiplot
- unset output
-
- '''
- }
-
- def protected generateGraph(SubSystemInstance ssi, Annotation graph, int index, int total) {
-
- // TODO: handle multiple paths in the same graph
-// val paths = graph.getAttribute("paths")?.asString
-
- // TODO: take interval from physical thread associated with actor instance instead of annotation attribute
-// val interval = graph.getAttribute("interval")?.asInteger ?: 20
-// val xtics = graph.getAttribute("xtics")?.asReal ?: 100
-// val mxtics = graph.getAttribute("mxtics")?.asInteger ?: 4
-// val ymin = graph.getAttribute("ymin")?.asReal
-// val ymax = graph.getAttribute("ymax")?.asReal
-//
-// val vertOrigin = ((total - (index + 1)) as double) / total
-// val vertSize = 1.0F / total
-
- '''
- set yrange [�ymin ?: "*"� : �ymax ?: "*"�]
- set xtics rotate �xtics�
- set mxtics �mxtics�
- set ylabel
- set xlabel "time (ms)"
- timeInMs(x) = �interval� * x
- set origin 0,�vertOrigin�
- set size 1,�vertSize�
- plot 'main.data.csv' using (timeInMs(column(1))):(column("�paths�")) with lines
- '''
- }
-}
diff --git a/plugins/org.eclipse.etrice.generator.launch.java/src/org/eclipse/etrice/generator/launch/java/JavaGeneratorConfigTab.java b/plugins/org.eclipse.etrice.generator.launch.java/src/org/eclipse/etrice/generator/launch/java/JavaGeneratorConfigTab.java
index 6af74db57..52817b49b 100644
--- a/plugins/org.eclipse.etrice.generator.launch.java/src/org/eclipse/etrice/generator/launch/java/JavaGeneratorConfigTab.java
+++ b/plugins/org.eclipse.etrice.generator.launch.java/src/org/eclipse/etrice/generator/launch/java/JavaGeneratorConfigTab.java
@@ -58,8 +58,6 @@ public class JavaGeneratorConfigTab extends GeneratorConfigTab {
genDataObj = createCheckButton(mainComposite, "generate store to/from POJO data objects");
genDataObj.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false, 2, 1));
genDataObj.addSelectionListener(new UpdateConfig());
-
- dataButton.setEnabled(false);
}
/* (non-Javadoc)
diff --git a/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorConfigTab.java b/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorConfigTab.java
index f4f0476e1..530a17dd2 100644
--- a/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorConfigTab.java
+++ b/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorConfigTab.java
@@ -63,7 +63,6 @@ public abstract class GeneratorConfigTab extends AbstractLaunchConfigurationTab
public static final String LIB = "Lib";
public static final String DEBUG = "Debug";
public static final String MSC_INSTR = "MSC";
- public static final String DATA_INSTR = "DataLogging";
public static final String VERBOSE = "Verbose";
public static final String USE_TRAANSLATION = "UseTranslation";
public static final String OLD_STYLE_TRANSITION_DATA = "OldStyleTransitionData";
@@ -81,7 +80,6 @@ public abstract class GeneratorConfigTab extends AbstractLaunchConfigurationTab
private Button generateDepsWithinProject;
private Button overrideDirectories;
private Text srcgenPath;
- protected Button dataButton;
private Text mainMethodName;
private Button useOldStyleTransitionDataButton;
@@ -146,10 +144,6 @@ public abstract class GeneratorConfigTab extends AbstractLaunchConfigurationTab
mscButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false, 2, 1));
mscButton.addSelectionListener(new UpdateConfig());
- dataButton = createCheckButton(mainComposite, "generate instrumentation for data logging");
- dataButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false, 2, 1));
- dataButton.addSelectionListener(new UpdateConfig());
-
verboseButton = createCheckButton(mainComposite, "generate instrumentation for verbose output");
verboseButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false, 2, 1));
verboseButton.addSelectionListener(new UpdateConfig());
@@ -264,7 +258,6 @@ public abstract class GeneratorConfigTab extends AbstractLaunchConfigurationTab
mainMethodName.setText(configuration.getAttribute(MAIN_METHOD_NAME, AbstractGeneratorOptions.MAIN_NAME.getDefaultValue()));
debugButton.setSelection(configuration.getAttribute(DEBUG, false));
mscButton.setSelection(configuration.getAttribute(MSC_INSTR, false));
- dataButton.setSelection(configuration.getAttribute(DATA_INSTR, false));
verboseButton.setSelection(configuration.getAttribute(VERBOSE, false));
ScopedPreferenceStore prefStore = new ScopedPreferenceStore(InstanceScope.INSTANCE, "org.eclipse.etrice.generator.ui");
@@ -303,7 +296,6 @@ public abstract class GeneratorConfigTab extends AbstractLaunchConfigurationTab
configuration.setAttribute(MAIN_METHOD_NAME, mainMethodName.getText());
configuration.setAttribute(DEBUG, debugButton.getSelection());
configuration.setAttribute(MSC_INSTR, mscButton.getSelection());
- configuration.setAttribute(DATA_INSTR, dataButton.getSelection());
configuration.setAttribute(VERBOSE, verboseButton.getSelection());
configuration.setAttribute(USE_TRAANSLATION, useTranslationButton.getSelection());
configuration.setAttribute(OLD_STYLE_TRANSITION_DATA, useOldStyleTransitionDataButton.getSelection());
diff --git a/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorLaunchConfigurationDelegate.java b/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorLaunchConfigurationDelegate.java
index 27c87e787..373011b33 100644
--- a/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorLaunchConfigurationDelegate.java
+++ b/plugins/org.eclipse.etrice.generator.launch/src/org/eclipse/etrice/generator/launch/GeneratorLaunchConfigurationDelegate.java
@@ -206,9 +206,6 @@ public abstract class GeneratorLaunchConfigurationDelegate extends AbstractJavaL
if (configuration.getAttribute(GeneratorConfigTab.MSC_INSTR, false)) {
argString.append(" -"+AbstractGeneratorOptions.MSC_INSTR.getName());
}
- if (configuration.getAttribute(GeneratorConfigTab.DATA_INSTR, false)) {
- argString.append(" -"+AbstractGeneratorOptions.DATA_INSTR.getName());
- }
if (configuration.getAttribute(GeneratorConfigTab.VERBOSE, false)) {
argString.append(" -"+AbstractGeneratorOptions.VERBOSE_RT.getName());
}
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptions.java b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptions.java
index c2407c1d5..08037249e 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptions.java
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptions.java
@@ -54,13 +54,6 @@ public class AbstractGeneratorOptions extends GeneratorOptions {
"generate instrumentation for MSC generation",
false);
- public static final BooleanOption DATA_INSTR = new BooleanOption(
- GROUP_ETRICE,
- "data_instr",
- "generateDataInstrumentation",
- "generate instrumentation for data logging",
- false);
-
public static final BooleanOption VERBOSE_RT = new BooleanOption(
GROUP_ETRICE,
"gen_as_verbose",
@@ -90,7 +83,6 @@ public class AbstractGeneratorOptions extends GeneratorOptions {
options.add(SAVE_GEN_MODEL);
options.add(MAIN_NAME);
options.add(MSC_INSTR);
- options.add(DATA_INSTR);
options.add(VERBOSE_RT);
options.add(NOTRANSLATE);
options.add(OLD_STYLE_TRANSITION_DATA);
diff --git a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptionsHelper.java b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptionsHelper.java
index 7bdab0ea4..e661e9728 100644
--- a/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptionsHelper.java
+++ b/plugins/org.eclipse.etrice.generator/src/org/eclipse/etrice/generator/base/AbstractGeneratorOptionsHelper.java
@@ -27,10 +27,6 @@ public class AbstractGeneratorOptionsHelper {
return args.get(AbstractGeneratorOptions.MSC_INSTR);
}
- public boolean isGenerateDataInstrumentation(Arguments args) {
- return args.get(AbstractGeneratorOptions.DATA_INSTR);
- }
-
public boolean isNoTranslation(Arguments args) {
return args.get(AbstractGeneratorOptions.NOTRANSLATE);
}
diff --git a/pom.xml b/pom.xml
index 6c88d8b47..9dd0e0bca 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,7 +52,6 @@
<module>plugins/org.eclipse.etrice.generator.fsm</module>
<module>plugins/org.eclipse.etrice.generator.fsmtest</module>
<module>plugins/org.eclipse.etrice.generator.fsmtest.ui</module>
- <module>plugins/org.eclipse.etrice.generator.gnuplot</module>
<module>plugins/org.eclipse.etrice.generator.java</module>
<module>plugins/org.eclipse.etrice.generator.contractmonitor</module>
<module>plugins/org.eclipse.etrice.generator.launch</module>
diff --git a/runtime/org.eclipse.etrice.modellib.c/model/etrice/api/annotations.room b/runtime/org.eclipse.etrice.modellib.c/model/etrice/api/annotations.room
index 9a6d80fb0..21f5305f5 100644
--- a/runtime/org.eclipse.etrice.modellib.c/model/etrice/api/annotations.room
+++ b/runtime/org.eclipse.etrice.modellib.c/model/etrice/api/annotations.room
@@ -66,28 +66,4 @@ RoomModel etrice.api.annotations {
target = { SubSystemClass, ActorClass }
}
- AnnotationType DataLogging {
- target = SubSystemClass
- mandatory attribute pathlist: ptCharacter
- }
-
- AnnotationType Gnuplot {
- target = SubSystemClass
- mandatory attribute format: ptCharacter
- mandatory attribute outputfile: ptCharacter
- mandatory attribute width: ptInteger
- mandatory attribute height: ptInteger
- optional attribute fontsize: ptInteger
- }
-
- AnnotationType GnuplotGraph {
- target = SubSystemClass
- mandatory attribute paths: ptCharacter
- optional attribute interval: ptInteger
- optional attribute xtics: ptReal
- optional attribute mxtics: ptInteger
- optional attribute ymin: ptReal
- optional attribute ymax: ptReal
- }
-
} \ No newline at end of file
diff --git a/runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.c b/runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.c
deleted file mode 100644
index 86acbb779..000000000
--- a/runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-#include "debugging/etDataLogger.h"
-#include "debugging/etLogger.h"
-
-static etFileHandle etDataLogger_fileHandle = NULL;
-static int etDataLogger_row = 0;
-
-/*TODO: move or replace ET_MAX_FILENAME_LEN */
-#define ET_MAX_FILENAME_LEN 256
-
-void etDataLogger_open(const char* logPath, const char* logName) {
- char path[ET_MAX_FILENAME_LEN];
- etDataLogger_row = 0;
- sprintf(path, "%s/%s.data.csv", logPath, logName);
- etDataLogger_fileHandle = etLogger_fopen(path, "w+");
-}
-
-void etDataLogger_close(void) {
- if (etDataLogger_fileHandle != NULL) {
- etLogger_fclose(etDataLogger_fileHandle);
- }
-}
-
-void etDataLogger_logString(const char* entry) {
- if (etDataLogger_fileHandle != NULL) {
- etLogger_fprintf(etDataLogger_fileHandle, ",%s", entry);
- }
-}
-
-void etDataLogger_logBool(int val) {
- if (etDataLogger_fileHandle != NULL) {
- etLogger_fprintf(etDataLogger_fileHandle, ",%d", val);
- }
-}
-
-void etDataLogger_logInt(int val) {
- if (etDataLogger_fileHandle != NULL) {
- etLogger_fprintf(etDataLogger_fileHandle, ",%d", val);
- }
-}
-
-void etDataLogger_logDouble(double val) {
- if (etDataLogger_fileHandle != NULL) {
- etLogger_fprintf(etDataLogger_fileHandle, ",%lf", val);
- }
-}
-
-void etDataLogger_newRow() {
- if (etDataLogger_fileHandle != NULL) {
- etLogger_fprintf(etDataLogger_fileHandle, "\n%d", etDataLogger_row++);
- }
-}
diff --git a/runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.h b/runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.h
deleted file mode 100644
index 2e0577f4f..000000000
--- a/runtime/org.eclipse.etrice.runtime.c/src/common/debugging/etDataLogger.h
+++ /dev/null
@@ -1,135 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-/**
- * \file etDataLogger.h
- *
- * The data logger is a means that lets data driven send ports write their data to file
- * in every cycle. Only one log file can be open at a time. The data are written
- * in comma separated value (csv) format.
- *
- * \author Henrik Rentz-Reichert
- */
-
-#ifndef ETDATALOGGER_H_
-#define ETDATALOGGER_H_
-
-#include "etRuntimeConfig.h"
-#include "etDatatypes.h"
-
-ET_EXTERN_C_BEGIN
-
-/**
- * opens a file for data logging
- *
- * \param logPath the path to the file
- * \param logName the name of the log file
- */
-void etDataLogger_open(const char* logPath, const char* logName);
-/**
- * closes a previously opened data log file
- */
-void etDataLogger_close(void);
-
-/**
- * writes a string to the log
- *
- * \param text the string to be written
- */
-void etDataLogger_logString(const char* text);
-/**
- * writes a boolean value to the log (as integer)
- *
- * \param val the value to be written
- */
-void etDataLogger_logBool(int val);
-/**
- * writes an integer value to the log
- * \param val the value to be written
- */
-void etDataLogger_logInt(int val);
-/**
- * writes a double value to the log
- * \param val the value to be written
- */
-void etDataLogger_logDouble(double val);
-/**
- * starts a new row of the log
- */
-void etDataLogger_newRow();
-
-#ifdef ET_DATA_LOGGER_ACTIVATE
- #define ET_DATA_LOGGER_OPEN(name) \
- etDataLogger_open("log", name);
- #define ET_DATA_LOGGER_CLOSE \
- etDataLogger_close();
- #define ET_DATA_LOGGER_LOG_STRING(text) \
- etDataLogger_logString(text);
- #define ET_DATA_LOGGER_LOG_BOOL(val) \
- etDataLogger_logBool(val);
- #define ET_DATA_LOGGER_LOG_INT(val) \
- etDataLogger_logInt(val);
- #define ET_DATA_LOGGER_LOG_DOUBLE(val) \
- etDataLogger_logDouble(val);
- #define ET_DATA_LOGGER_NEW_ROW \
- etDataLogger_newRow();
-#else
- /**
- * calls \ref etDataLogger_open(const char*, const char*) with path <code>tmp/log</code>
- * or <code>void</code> if <code>ET_DATA_LOGGER_ACTIVATE</code> is not defined
- */
- #define ET_DATA_LOGGER_OPEN(name)
- /**
- * calls \ref etDataLogger_close()
- * or <code>void</code> if <code>ET_DATA_LOGGER_ACTIVATE</code> is not defined
- */
- #define ET_DATA_LOGGER_CLOSE
- /**
- * calls etDataLogger_logString(const char*)
- * or <code>void</code> if <code>ET_DATA_LOGGER_ACTIVATE</code> is not defined
- *
- * \param text the text to be written
- */
- #define ET_DATA_LOGGER_LOG_STRING(text)
- /**
- * calls \ref etDataLogger_logBool(int val)
- * or <code>void</code> if <code>ET_DATA_LOGGER_ACTIVATE</code> is not defined
- *
- * \param val the value to be written
- */
- #define ET_DATA_LOGGER_LOG_BOOL(val)
- /**
- * calls \ref etDataLogger_logInt(int val)
- * or <code>void</code> if <code>ET_DATA_LOGGER_ACTIVATE</code> is not defined
- *
- * \param val the value to be written
- */
- #define ET_DATA_LOGGER_LOG_INT(val)
- /**
- * calls \ref etDataLogger_logDouble(double val)
- * or <code>void</code> if <code>ET_DATA_LOGGER_ACTIVATE</code> is not defined
- *
- * \param val the value to be written
- */
- #define ET_DATA_LOGGER_LOG_DOUBLE(val)
- /**
- * calls \ref etDataLogger_newRow()
- * or <code>void</code> if <code>ET_DATA_LOGGER_ACTIVATE</code> is not defined
- */
- #define ET_DATA_LOGGER_NEW_ROW
-#endif
-
-ET_EXTERN_C_END
-
-#endif /* ETDATALOGGER_H_ */
diff --git a/runtime/org.eclipse.etrice.runtime.c/src/config/etRuntimeConfig.h b/runtime/org.eclipse.etrice.runtime.c/src/config/etRuntimeConfig.h
index 62ca9d1f0..acaefbd9a 100644
--- a/runtime/org.eclipse.etrice.runtime.c/src/config/etRuntimeConfig.h
+++ b/runtime/org.eclipse.etrice.runtime.c/src/config/etRuntimeConfig.h
@@ -42,11 +42,6 @@
/** switches the logging of synchronous messages on, needs \ref ET_MSC_LOGGER_ACTIVATE */
#define ET_ASYNC_MSC_LOGGER_ACTIVATE
-/* data logger */
-
-/** switches the data logger on */
-#define ET_DATA_LOGGER_ACTIVATE
-
/* timing and scheduling */
/* #define FREQUENCY 10L */
/* #define ET_RUNTIME_MAXLOOP 100 */
diff --git a/settings.gradle b/settings.gradle
index 8d8dd863e..807f9201e 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -11,7 +11,6 @@ include 'plugins:org.eclipse.etrice.core.common',
'plugins:org.eclipse.etrice.generator.base',
'plugins:org.eclipse.etrice.generator.config',
'plugins:org.eclipse.etrice.generator.doc',
- 'plugins:org.eclipse.etrice.generator.gnuplot',
'plugins:org.eclipse.etrice.generator.c',
'plugins:org.eclipse.etrice.generator.cpp',
'plugins:org.eclipse.etrice.generator.java',

Back to the top