diff --git a/Device/templates/designToDeviceBaseHeader.jinja b/Device/templates/designToDeviceBaseHeader.jinja
index 3424f201..506884df 100644
--- a/Device/templates/designToDeviceBaseHeader.jinja
+++ b/Device/templates/designToDeviceBaseHeader.jinja
@@ -21,8 +21,8 @@
{% macro get_parent_struct(class_name) %}
{% set parent_class_name = designInspector.get_parent(class_name) %}
- {%- if parent_class_name != None and designInspector.class_has_legit_device_parent(parent_class_name) -%}
- D{{parent}}
+ {%- if parent_class_name != None and designInspector.class_has_legit_device_parent(class_name) -%}
+ D{{parent_class_name}}
{%- else -%}
struct{/*No Device Logic for parent {{parent_class_name}} of {{class_name}}*/}
{%- endif -%}
diff --git a/FrameworkInternals/original_files.txt b/FrameworkInternals/original_files.txt
index 0e38de06..8286fab6 100644
--- a/FrameworkInternals/original_files.txt
+++ b/FrameworkInternals/original_files.txt
@@ -887,6 +887,9 @@
"DLogLevel.h": {
"use_defaults": "file_defaults_of_directory"
},
+ "DSourceVariableThreadPool.h": {
+ "use_defaults": "file_defaults_of_directory"
+ },
"MetaBuildInfo.h": {
"use_defaults": "file_defaults_of_directory"
},
@@ -910,6 +913,9 @@
"DLogLevel.cpp": {
"use_defaults": "file_defaults_of_directory"
},
+ "DSourceVariableThreadPool.cpp": {
+ "use_defaults": "file_defaults_of_directory"
+ },
"MetaBuildInfo.cpp": {
"use_defaults": "file_defaults_of_directory"
},
diff --git a/Meta/CMakeLists.txt b/Meta/CMakeLists.txt
index 6e1e77e0..4a335f6d 100644
--- a/Meta/CMakeLists.txt
+++ b/Meta/CMakeLists.txt
@@ -35,7 +35,12 @@
# The reason that MetaBuildInfo.cpp is not amalgamated is that it depends on a file which is regenerated at each build
# and there is no reason to rebuild amalgamated files without the factual reason!
-add_library (Meta OBJECT src/meta.cpp src/MetaBuildInfo.cpp src/metaBackwardsCompatibilityUtils.cpp src/DLogLevel.cpp)
+add_library (Meta OBJECT
+ src/meta.cpp
+ src/MetaBuildInfo.cpp
+ src/metaBackwardsCompatibilityUtils.cpp
+ src/DLogLevel.cpp
+ src/DSourceVariableThreadPool.cpp)
file(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/generated)
diff --git a/Meta/design/meta-design.xml b/Meta/design/meta-design.xml
index 9e3ce577..e7166d88 100644
--- a/Meta/design/meta-design.xml
+++ b/Meta/design/meta-design.xml
@@ -61,6 +61,7 @@ class sources are provided (statically) in the Meta module.
+
diff --git a/Meta/include/DSourceVariableThreadPool.h b/Meta/include/DSourceVariableThreadPool.h
new file mode 100644
index 00000000..dceff724
--- /dev/null
+++ b/Meta/include/DSourceVariableThreadPool.h
@@ -0,0 +1,69 @@
+
+/* © Copyright CERN, 2015. All rights not expressly granted are reserved.
+
+ The stub of this file was generated by quasar (https://github.com/quasar-team/quasar/)
+
+ Quasar is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public Licence as published by
+ the Free Software Foundation, either version 3 of the Licence.
+ Quasar is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public Licence for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with Quasar. If not, see .
+
+
+ */
+
+
+#ifndef __DSourceVariableThreadPool__H__
+#define __DSourceVariableThreadPool__H__
+
+#include
+
+namespace Device
+{
+
+class
+ DSourceVariableThreadPool
+ : public Base_DSourceVariableThreadPool
+{
+
+public:
+ /* sample constructor */
+ explicit DSourceVariableThreadPool (
+ const Configuration::SourceVariableThreadPool& config,
+ Parent_DSourceVariableThreadPool* parent
+ ) ;
+ /* sample dtr */
+ ~DSourceVariableThreadPool ();
+
+ /* delegators for
+ cachevariables and sourcevariables */
+
+
+ /* delegators for methods */
+
+private:
+ /* Delete copy constructor and assignment operator */
+ DSourceVariableThreadPool( const DSourceVariableThreadPool& other );
+ DSourceVariableThreadPool& operator=(const DSourceVariableThreadPool& other);
+
+ // ----------------------------------------------------------------------- *
+ // - CUSTOM CODE STARTS BELOW THIS COMMENT. *
+ // - Don't change this comment, otherwise merge tool may be troubled. *
+ // ----------------------------------------------------------------------- *
+
+public:
+
+private:
+
+
+
+};
+
+}
+
+#endif // __DSourceVariableThreadPool__H__
\ No newline at end of file
diff --git a/Meta/src/DSourceVariableThreadPool.cpp b/Meta/src/DSourceVariableThreadPool.cpp
new file mode 100644
index 00000000..346d6fb9
--- /dev/null
+++ b/Meta/src/DSourceVariableThreadPool.cpp
@@ -0,0 +1,94 @@
+
+/* © Copyright CERN, 2015. All rights not expressly granted are reserved.
+
+ The stub of this file was generated by quasar (https://github.com/quasar-team/quasar/)
+
+ Quasar is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public Licence as published by
+ the Free Software Foundation, either version 3 of the Licence.
+ Quasar is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public Licence for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with Quasar. If not, see .
+
+
+ */
+
+
+#include // TODO; should go away, is already in Base class for ages
+
+#include
+#include
+
+#include
+
+namespace Device
+{
+// 1111111111111111111111111111111111111111111111111111111111111111111111111
+// 1 GENERATED CODE STARTS HERE AND FINISHES AT SECTION 2 1
+// 1 Users don't modify this code!!!! 1
+// 1 If you modify this code you may start a fire or a flood somewhere,1
+// 1 and some human being may possible cease to exist. You don't want 1
+// 1 to be charged with that! 1
+// 1111111111111111111111111111111111111111111111111111111111111111111111111
+
+
+
+
+
+
+// 2222222222222222222222222222222222222222222222222222222222222222222222222
+// 2 SEMI CUSTOM CODE STARTS HERE AND FINISHES AT SECTION 3 2
+// 2 (code for which only stubs were generated automatically) 2
+// 2 You should add the implementation but dont alter the headers 2
+// 2 (apart from constructor, in which you should complete initializati2
+// 2 on list) 2
+// 2222222222222222222222222222222222222222222222222222222222222222222222222
+
+/* sample ctr */
+DSourceVariableThreadPool::DSourceVariableThreadPool (
+ const Configuration::SourceVariableThreadPool& config,
+ Parent_DSourceVariableThreadPool* parent
+):
+ Base_DSourceVariableThreadPool( config, parent)
+
+ /* fill up constructor initialization list here */
+{
+ /* fill up constructor body here */
+ #ifndef BACKEND_OPEN62541
+ try
+ {
+ const std::string minThreads = config.minThreads();
+ const std::string maxThreads = config.maxThreads();
+ LOG(Log::INF) << __FUNCTION__ << " starting source variable thread pool with min threads ["<