Oac.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 MemoryX::Core
17 * @author Nils Adermann <naderman@naderman.de>
18 * @date 2012
19 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20 * GNU General Public License
21 */
22 
23 #pragma once
24 
26 
28 #include <MemoryX/interface/core/EntityBase.h>
29 #include <MemoryX/interface/memorytypes/MemoryEntities.h>
30 
31 namespace memoryx::VariantType
32 {
34 }
35 
36 namespace memoryx
37 {
38  class Oac;
40 
41  class Oac : public OacBase, public Entity
42  {
43  friend class OacObjectFactory;
44 
45  public:
46  /**
47  * Constructs a new Oac entity. A name needs to be assigned. The id is optional.
48  * The Oac can also be associated with a state via UUID and the statechart this state can be found in
49  *
50  * @param name friendly name of the OAC
51  * @param id optional id of the OAC
52  * @param statechartProxyName optional statechart proxy name this OAC is associated with
53  * @param stateUUID optional stateUUID this OAC is associated with
54  **/
55  Oac(const std::string& name = std::string(),
56  const std::string& id = "",
57  const std::string& statechartProxyName = "",
58  const std::string& stateUUID = "",
59  bool isPlannable = true);
60 
61  std::vector<std::string>
62  getParameters(const ::Ice::Current& = Ice::emptyCurrent) const override;
63  void setParameters(const std::vector<std::string>& parameters,
64  const ::Ice::Current& = Ice::emptyCurrent) override;
65 
66  std::string
67  getStatechartProxyName(const ::Ice::Current& = Ice::emptyCurrent) const override;
68  void setStatechartProxyName(const std::string& statechartProxyName,
69  const ::Ice::Current& = Ice::emptyCurrent) override;
70 
71  std::string getStateUUID(const ::Ice::Current& = Ice::emptyCurrent) const override;
72  void setStateUUID(const std::string& stateUUID,
73  const ::Ice::Current& = Ice::emptyCurrent) override;
74 
75  bool isPlannable(const ::Ice::Current& = Ice::emptyCurrent) const override;
76  void setPlannable(bool isPlannable, const ::Ice::Current& = Ice::emptyCurrent) override;
77 
78  OacPredictionFunctionBasePtr
79  getPredictionFunction(const ::Ice::Current& = Ice::emptyCurrent) const override;
80  void setPredictionFunction(const ::memoryx::OacPredictionFunctionBasePtr& prediction,
81  const ::Ice::Current& = Ice::emptyCurrent) override;
82 
83  OacStatisticalMeasureBasePtr
84  getStatisticalMeasure(const ::Ice::Current& = Ice::emptyCurrent) const override;
85  void setStatisticalMeasure(const ::memoryx::OacStatisticalMeasureBasePtr& measure,
86  const ::Ice::Current& = Ice::emptyCurrent) override;
87 
88  Ice::ObjectPtr ice_clone() const override;
89  OacPtr clone(const Ice::Current& c = Ice::emptyCurrent) const;
90  };
91 } // namespace memoryx
memoryx::VariantType
Definition: Affordance.h:31
memoryx::Oac::getStateUUID
std::string getStateUUID(const ::Ice::Current &=Ice::emptyCurrent) const override
Definition: Oac.cpp:78
memoryx::Oac::OacObjectFactory
friend class OacObjectFactory
Definition: Oac.h:43
memoryx::Oac::isPlannable
bool isPlannable(const ::Ice::Current &=Ice::emptyCurrent) const override
Definition: Oac.cpp:90
memoryx
VirtualRobot headers.
Definition: CommonPlacesTester.cpp:48
c
constexpr T c
Definition: UnscentedKalmanFilterTest.cpp:46
memoryx::Oac::getParameters
std::vector< std::string > getParameters(const ::Ice::Current &=Ice::emptyCurrent) const override
Definition: Oac.cpp:50
memoryx::Oac::setStateUUID
void setStateUUID(const std::string &stateUUID, const ::Ice::Current &=Ice::emptyCurrent) override
Definition: Oac.cpp:84
IceInternal::Handle
Definition: forward_declarations.h:8
memoryx::Oac::Oac
Oac(const std::string &name=std::string(), const std::string &id="", const std::string &statechartProxyName="", const std::string &stateUUID="", bool isPlannable=true)
Constructs a new Oac entity.
Definition: Oac.cpp:31
memoryx::Oac::clone
OacPtr clone(const Ice::Current &c=Ice::emptyCurrent) const
Definition: Oac.cpp:136
memoryx::Oac::getStatisticalMeasure
OacStatisticalMeasureBasePtr getStatisticalMeasure(const ::Ice::Current &=Ice::emptyCurrent) const override
Definition: Oac.cpp:116
armarx::VariantTypeId
Ice::Int VariantTypeId
Definition: Variant.h:43
memoryx::Oac::setPlannable
void setPlannable(bool isPlannable, const ::Ice::Current &=Ice::emptyCurrent) override
Definition: Oac.cpp:96
memoryx::Oac::ice_clone
Ice::ObjectPtr ice_clone() const override
Definition: Oac.cpp:130
Entity.h
memoryx::Oac
Definition: Oac.h:41
memoryx::Oac::setStatechartProxyName
void setStatechartProxyName(const std::string &statechartProxyName, const ::Ice::Current &=Ice::emptyCurrent) override
Definition: Oac.cpp:72
memoryx::Oac::setPredictionFunction
void setPredictionFunction(const ::memoryx::OacPredictionFunctionBasePtr &prediction, const ::Ice::Current &=Ice::emptyCurrent) override
Definition: Oac.cpp:109
armarx::aron::type::ObjectPtr
std::shared_ptr< Object > ObjectPtr
Definition: Object.h:36
memoryx::Oac::setStatisticalMeasure
void setStatisticalMeasure(const ::memoryx::OacStatisticalMeasureBasePtr &measure, const ::Ice::Current &=Ice::emptyCurrent) override
Definition: Oac.cpp:123
memoryx::Entity
Definition: Entity.h:245
memoryx::Oac::getPredictionFunction
OacPredictionFunctionBasePtr getPredictionFunction(const ::Ice::Current &=Ice::emptyCurrent) const override
Definition: Oac.cpp:102
Variant.h
armarx::Variant::addTypeName
static VariantTypeId addTypeName(const std::string &typeName)
Register a new type for the use in a Variant.
Definition: Variant.cpp:869
memoryx::Oac::setParameters
void setParameters(const std::vector< std::string > &parameters, const ::Ice::Current &=Ice::emptyCurrent) override
Definition: Oac.cpp:58
memoryx::Oac::getStatechartProxyName
std::string getStatechartProxyName(const ::Ice::Current &=Ice::emptyCurrent) const override
Definition: Oac.cpp:66