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