DummyArMarkerLocalizer.h
Go to the documentation of this file.
1/*
2 * This file is part of ArmarX.
3 *
4 * ArmarX is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * ArmarX is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * @package VisionX::ArmarXObjects::DummyArMarkerLocalizer
17 * @author Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
18 * @date 2018
19 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20 * GNU General Public License
21 */
22
23#pragma once
24
25
26#include <mutex>
27
28#include <VirtualRobot/math/AbstractFunctionR1R6.h>
29#include <VirtualRobot/math/MathForwardDefinitions.h>
30
33
34#include <VisionX/interface/components/ArMarkerLocalizerInterface.h>
35
36namespace visionx
37{
38 /**
39 * @class DummyArMarkerLocalizerPropertyDefinitions
40 * @brief
41 */
43 {
44 public:
47 {
48 //defineRequiredProperty<std::string>("PropertyName", "Description");
49 //defineOptionalProperty<std::string>("PropertyName", "DefaultValue", "Description");
50 defineOptionalProperty<std::string>("AgentName", "Armar6", "Agent name");
51 defineOptionalProperty<std::string>("FrameName", "root", "Frame name");
52 }
53 };
54
55 /**
56 * @defgroup Component-DummyArMarkerLocalizer DummyArMarkerLocalizer
57 * @ingroup VisionX-Components
58 * A description of the component DummyArMarkerLocalizer.
59 *
60 * @class DummyArMarkerLocalizer
61 * @ingroup Component-DummyArMarkerLocalizer
62 * @brief Brief description of class DummyArMarkerLocalizer.
63 *
64 * Detailed description of class DummyArMarkerLocalizer.
65 */
67 virtual public ArMarkerLocalizerInterface,
68 virtual public armarx::Component
69 {
70 public:
71 /**
72 * @see armarx::ManagedIceObject::getDefaultName()
73 */
74 std::string
75 getDefaultName() const override
76 {
77 return "ArMarkerLocalizer";
78 }
79
80 protected:
81 /**
82 * @see armarx::ManagedIceObject::onInitComponent()
83 */
84 void onInitComponent() override;
85
86 /**
87 * @see armarx::ManagedIceObject::onConnectComponent()
88 */
89 void onConnectComponent() override;
90
91 /**
92 * @see armarx::ManagedIceObject::onDisconnectComponent()
93 */
94 void onDisconnectComponent() override;
95
96 /**
97 * @see armarx::ManagedIceObject::onExitComponent()
98 */
99 void onExitComponent() override;
100
101 /**
102 * @see PropertyUser::createPropertyDefinitions()
103 */
105
106 std::string frameName;
107 std::string agentName;
108 math::SimpleAbstractFunctionR1R6Ptr trajectory;
109 IceUtil::Time startTime;
110
111 public:
112 void reportImageAvailable(const std::string&, const Ice::Current&) override;
113 ArMarkerLocalizationResultList LocalizeAllMarkersNow(const Ice::Current&) override;
114 ArMarkerLocalizationResultList GetLatestLocalizationResult(const Ice::Current&) override;
115 };
116} // namespace visionx
Default component property definition container.
Definition Component.h:70
ComponentPropertyDefinitions(std::string prefix, bool hasObjectNameParameter=true)
Definition Component.cpp:46
Baseclass for all ArmarX ManagedIceObjects requiring properties.
Definition Component.h:94
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
PropertyDefinition< PropertyType > & defineOptionalProperty(const std::string &name, PropertyType defaultValue, const std::string &description="", PropertyDefinitionBase::PropertyConstness constness=PropertyDefinitionBase::eConstant)
Brief description of class DummyArMarkerLocalizer.
void reportImageAvailable(const std::string &, const Ice::Current &) override
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
math::SimpleAbstractFunctionR1R6Ptr trajectory
ArMarkerLocalizationResultList GetLatestLocalizationResult(const Ice::Current &) override
ArMarkerLocalizationResultList LocalizeAllMarkersNow(const Ice::Current &) override
std::string getDefaultName() const override
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
ArmarX headers.