From b1f22454ff70eaac5f5b3d0047575deb728cd0ac Mon Sep 17 00:00:00 2001
From: Mirko Waechter <mirko.waechter@kit.edu>
Date: Tue, 21 Mar 2017 22:56:31 +0100
Subject: [PATCH] adjusted weisshapticgroup

---
 .../WeissHapticGroup/CMakeLists.txt           |   6 +-
 .../WeissHapticGroup/WeissHapticGroup.scgxml  |   1 -
 ...ssHapticGroupStatechartContext.generated.h |  88 -----------
 .../WeissHapticSensorTest.cpp                 |   9 +-
 .../WeissHapticSensorTest.generated.h         | 143 ------------------
 .../WeissHapticGroup/WeissHapticSensorTest.h  |   8 +-
 .../WeissHapticSensorTest.xml                 |   1 +
 7 files changed, 13 insertions(+), 243 deletions(-)
 delete mode 100644 source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroupStatechartContext.generated.h
 delete mode 100644 source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.generated.h

diff --git a/source/RobotAPI/statecharts/WeissHapticGroup/CMakeLists.txt b/source/RobotAPI/statecharts/WeissHapticGroup/CMakeLists.txt
index b0fea04f1..942e26f9d 100644
--- a/source/RobotAPI/statecharts/WeissHapticGroup/CMakeLists.txt
+++ b/source/RobotAPI/statecharts/WeissHapticGroup/CMakeLists.txt
@@ -38,11 +38,11 @@ WeissHapticGroupRemoteStateOfferer.cpp
 
 set(HEADERS
 WeissHapticGroupRemoteStateOfferer.h
-WeissHapticGroupStatechartContext.generated.h
+WeissHapticGroup.scgxml
 ./WeissHapticSensorTest.h
 #@TEMPLATE_LINE@@COMPONENT_PATH@/@COMPONENT_NAME@.h
-./WeissHapticSensorTest.generated.h
-#@TEMPLATE_LINE@@COMPONENT_PATH@/@COMPONENT_NAME@.generated.h
+./WeissHapticSensorTest.xml
+#@TEMPLATE_LINE@@COMPONENT_PATH@/@COMPONENT_NAME@.xml
 )
 
 armarx_add_component("${SOURCES}" "${HEADERS}")
diff --git a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroup.scgxml b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroup.scgxml
index f9f78a7ca..5f7a0472c 100644
--- a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroup.scgxml
+++ b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroup.scgxml
@@ -6,4 +6,3 @@
 	</Proxies>
 	<State filename="WeissHapticSensorTest.xml" visibility="public"/>
 </StatechartGroup>
-
diff --git a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroupStatechartContext.generated.h b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroupStatechartContext.generated.h
deleted file mode 100644
index 82ecaf358..000000000
--- a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticGroupStatechartContext.generated.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2011-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    
- * @author     
- * @date       
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-#ifndef ARMARX_COMPONENT_ARMARX_WEISSHAPTICGROUP_WEISSHAPTICGROUPSTATECHARTCONTEXT_H
-#define ARMARX_COMPONENT_ARMARX_WEISSHAPTICGROUP_WEISSHAPTICGROUPSTATECHARTCONTEXT_H
-
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/system/ImportExportComponent.h>
-#include <ArmarXCore/statechart/StatechartContext.h>
-#include <RobotAPI/interface/units/HapticUnit.h>
-#include <RobotAPI/interface/units/WeissHapticUnit.h>
-
-namespace armarx
-{
-    namespace WeissHapticGroup
-    {
-        class WeissHapticGroupStatechartContext
-            : virtual public StatechartContext
-        {
-        protected:
-            class PropertyDefinitions
-                : public StatechartContextPropertyDefinitions
-            {
-            public:
-                PropertyDefinitions(std::string prefix)
-                    : StatechartContextPropertyDefinitions(prefix)
-                {
-                    defineOptionalProperty<std::string>("HapticUnitObserverName", "HapticUnitObserver", "Name of the haptic unit observer that should be used");
-                    defineOptionalProperty<std::string>("WeissHapticUnitName", "WeissHapticUnit", "Name of the weiss haptic unit that should be used");
-                }
-            }; // class PropertyDefinitions
-
-        private:
-            HapticUnitObserverInterfacePrx hapticObserver;
-            WeissHapticUnitInterfacePrx weissHapticUnit;
-
-        public:
-            std::string getDefaultName() const
-            {
-                return "WeissHapticGroupStatechartContext";
-            }
-            virtual void onInitStatechartContext()
-            {
-                usingProxy(getProperty<std::string>("HapticUnitObserverName").getValue());
-                usingProxy(getProperty<std::string>("WeissHapticUnitName").getValue());
-            }
-            virtual void onConnectStatechartContext()
-            {
-                hapticObserver = getProxy<HapticUnitObserverInterfacePrx>(getProperty<std::string>("HapticUnitObserverName").getValue());
-                weissHapticUnit = getProxy<WeissHapticUnitInterfacePrx>(getProperty<std::string>("WeissHapticUnitName").getValue());
-            }
-            HapticUnitObserverInterfacePrx getHapticObserver() const
-            {
-                return hapticObserver;
-            }
-            WeissHapticUnitInterfacePrx getWeissHapticUnit() const
-            {
-                return weissHapticUnit;
-            }
-            virtual PropertyDefinitionsPtr createPropertyDefinitions()
-            {
-                return PropertyDefinitionsPtr(new WeissHapticGroupStatechartContext::PropertyDefinitions(getConfigIdentifier()));
-            }
-        }; // class WeissHapticGroupStatechartContext
-    } // namespace WeissHapticGroup
-} // namespace armarx
-
-#endif // ARMARX_COMPONENT_ARMARX_WEISSHAPTICGROUP_WEISSHAPTICGROUPSTATECHARTCONTEXT_H
diff --git a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.cpp b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.cpp
index 679050db7..f825d0760 100644
--- a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.cpp
+++ b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.cpp
@@ -27,10 +27,12 @@
 #include <RobotAPI/libraries/core/observerfilters/MatrixFilters.h>
 #include <RobotAPI/libraries/core/observerfilters/OffsetFilter.h>
 
+#include <ArmarXCore/observers/variant/DatafieldRef.h>
+
 using namespace armarx;
 using namespace WeissHapticGroup;
 
-// DO NOT EDIT NEXT LINE
+//// DO NOT EDIT NEXT LINE
 WeissHapticSensorTest::SubClassRegistry WeissHapticSensorTest::Registry(WeissHapticSensorTest::GetName(), &WeissHapticSensorTest::CreateInstance);
 
 
@@ -40,10 +42,10 @@ WeissHapticSensorTest::WeissHapticSensorTest(const XMLStateConstructorParams& st
 {
 }
 
+
 void WeissHapticSensorTest::onEnter()
 {
-    WeissHapticGroupStatechartContext* context = getContext<WeissHapticGroupStatechartContext>();
-    HapticUnitObserverInterfacePrx hapticObserver = context->getHapticObserver();
+    HapticUnitObserverInterfacePrx hapticObserver = getHapticObserver();
     ChannelRegistry channels = hapticObserver->getAvailableChannels(false);
     std::map<std::string, DatafieldRefPtr> tactileDatafields_MaximumValueMap;
 
@@ -110,7 +112,6 @@ void WeissHapticSensorTest::onExit()
 
 }
 
-
 // DO NOT EDIT NEXT FUNCTION
 XMLStateFactoryBasePtr WeissHapticSensorTest::CreateInstance(XMLStateConstructorParams stateData)
 {
diff --git a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.generated.h b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.generated.h
deleted file mode 100644
index bea113238..000000000
--- a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.generated.h
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2011-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    
- * @author     
- * @date       
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-#ifndef _ARMARX_XMLUSERCODE_ARMARX_WEISSHAPTICGROUP_WEISSHAPTICSENSORTESTGENERATEDBASE_H
-#define _ARMARX_XMLUSERCODE_ARMARX_WEISSHAPTICGROUP_WEISSHAPTICSENSORTESTGENERATEDBASE_H
-
-#include <ArmarXCore/statechart/xmlstates/XMLState.h>
-#include "WeissHapticGroupStatechartContext.generated.h"
-#include <ArmarXCore/observers/ObserverObjectFactories.h>
-#include <RobotAPI/interface/units/HapticUnit.h>
-#include <RobotAPI/interface/units/WeissHapticUnit.h>
-
-namespace armarx
-{
-    namespace WeissHapticGroup
-    {
-        template<typename StateType>
-        class WeissHapticSensorTestGeneratedBase
-            : virtual public XMLStateTemplate < StateType >,
-              public XMLStateFactoryBase
-        {
-        protected:
-            class WeissHapticSensorTestIn
-            {
-            private:
-                WeissHapticSensorTestGeneratedBase<StateType>* parent;
-
-            public:
-                WeissHapticSensorTestIn(WeissHapticSensorTestGeneratedBase<StateType>* parent)
-                    : parent(parent)
-                {
-                }
-            }; // class WeissHapticSensorTestIn
-
-            class WeissHapticSensorTestLocal
-            {
-            private:
-                WeissHapticSensorTestGeneratedBase<StateType>* parent;
-
-            public:
-                WeissHapticSensorTestLocal(WeissHapticSensorTestGeneratedBase<StateType>* parent)
-                    : parent(parent)
-                {
-                }
-
-            public:
-                std::map<std::string, ::armarx::DatafieldRefPtr> getTactileDatafields_MaximumValue() const
-                {
-                    return parent->State::getLocal< ::armarx::StringValueMap>("TactileDatafields_MaximumValue")->::armarx::StringValueMap::toStdMap< ::armarx::DatafieldRefPtr>();
-                }
-                void setTactileDatafields_MaximumValue(const std::map<std::string, ::armarx::DatafieldRefPtr>& value) const
-                {
-                    ::armarx::StringValueMapPtr container = ::armarx::StringValueMap::FromStdMap< ::armarx::DatafieldRefPtr>(value);
-                    parent->State::setLocal("TactileDatafields_MaximumValue", *container);
-                }
-                bool isTactileDatafields_MaximumValueSet() const
-                {
-                    return parent->State::isLocalParameterSet("TactileDatafields_MaximumValue");
-                }
-            }; // class WeissHapticSensorTestLocal
-
-            class WeissHapticSensorTestOut
-            {
-            private:
-                WeissHapticSensorTestGeneratedBase<StateType>* parent;
-
-            public:
-                WeissHapticSensorTestOut(WeissHapticSensorTestGeneratedBase<StateType>* parent)
-                    : parent(parent)
-                {
-                }
-            }; // class WeissHapticSensorTestOut
-
-        protected:
-            const WeissHapticSensorTestIn in;
-            const WeissHapticSensorTestLocal local;
-            const WeissHapticSensorTestOut out;
-
-        public:
-            WeissHapticSensorTestGeneratedBase(const XMLStateConstructorParams& stateData)
-                : XMLStateTemplate < StateType > (stateData),
-                  in(WeissHapticSensorTestIn(this)),
-                  local(WeissHapticSensorTestLocal(this)),
-                  out(WeissHapticSensorTestOut(this))
-            {
-            }
-            WeissHapticSensorTestGeneratedBase(const WeissHapticSensorTestGeneratedBase& source)
-                : IceUtil::Shared(source),
-                  armarx::StateIceBase(source),
-                  armarx::StateBase(source),
-                  armarx::StateController(source),
-                  armarx::State(source),
-                  XMLStateTemplate < StateType > (source),
-                  in(WeissHapticSensorTestIn(this)),
-                  local(WeissHapticSensorTestLocal(this)),
-                  out(WeissHapticSensorTestOut(this))
-            {
-            }
-
-        public:
-            HapticUnitObserverInterfacePrx getHapticObserver() const
-            {
-                return StateBase::getContext<WeissHapticGroupStatechartContext>()->getHapticObserver();
-            }
-            WeissHapticUnitInterfacePrx getWeissHapticUnit() const
-            {
-                return StateBase::getContext<WeissHapticGroupStatechartContext>()->getWeissHapticUnit();
-            }
-            static std::string GetName()
-            {
-                return "WeissHapticSensorTest";
-            }
-            void __forceLibLoading()
-            {
-                // Do not call this method.
-                // The sole purpose of this method is to force the compiler/linker to include all libraries.
-                ::armarx::DatafieldRef type1;
-            }
-        }; // class WeissHapticSensorTestGeneratedBase
-    } // namespace WeissHapticGroup
-} // namespace armarx
-
-#endif // _ARMARX_XMLUSERCODE_ARMARX_WEISSHAPTICGROUP_WEISSHAPTICSENSORTESTGENERATEDBASE_H
diff --git a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.h b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.h
index 8a9424eea..81cd19516 100644
--- a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.h
+++ b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.h
@@ -21,17 +21,17 @@
  * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
  *             GNU General Public License
  */
-
 #ifndef _ARMARX_XMLUSERCODE_RobotAPI_WeissHapticGroup_WeissHapticSensorTest_H
 #define _ARMARX_XMLUSERCODE_RobotAPI_WeissHapticGroup_WeissHapticSensorTest_H
 
-#include "WeissHapticSensorTest.generated.h"
+#include <RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.generated.h>
 
 namespace armarx
 {
     namespace WeissHapticGroup
     {
-        class WeissHapticSensorTest :
+        class WeissHapticSensorTest
+            :
             public WeissHapticSensorTestGeneratedBase<WeissHapticSensorTest>
         {
         public:
@@ -43,7 +43,7 @@ namespace armarx
             void onBreak();
             void onExit();
 
-            // static functions for AbstractFactory Method
+            //            // static functions for AbstractFactory Method
             static XMLStateFactoryBasePtr CreateInstance(XMLStateConstructorParams stateData);
             static SubClassRegistry Registry;
 
diff --git a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.xml b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.xml
index cb8448c7c..6e9d45bd3 100644
--- a/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.xml
+++ b/source/RobotAPI/statecharts/WeissHapticGroup/WeissHapticSensorTest.xml
@@ -10,3 +10,4 @@
 	<Transitions/>
 </State>
 
+
-- 
GitLab