MPPoolInterface.ice
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 RobotControllers::RobotNJointControllersInterface
17  * @author Jianfeng Gao ( jianfeng dot gao at kit dot edu )
18  * @date 2021
19  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20  * GNU General Public License
21  */
22 
23 #pragma once
24 
25 #include <ArmarXCore/interface/core/BasicTypes.ice>
26 #include <RobotAPI/interface/units/RobotUnit/NJointController.ice>
27 #include <RobotAPI/interface/core/Trajectory.ice>
28 
29 
30 module armarx
31 {
32  interface MPPoolInterface/* extends NJointControllerInterface*/
33  {
34  string getNames();
35 
36  /// control
37  void start(string mpName, Ice::DoubleSeq startVec, Ice::DoubleSeq goalVec, double durationSec);
38  void stop(string mpName);
39  void pause(string mpName);
40  void resume(string mpName);
41  void reset(string mpName);
42  bool isFinished(string mpName);
43 
44  /// setting
45  void learnFromCSV(Ice::StringSeq fileNames);
46  // void learnFromSampledTraj()
47 
48  void setGoal(Ice::DoubleSeq goals);
49  void setStartAndGoal(Ice::DoubleSeq starts, Ice::DoubleSeq goals);
50  void setViaPoint(double u, Ice::DoubleSeq viapoint);
51  void removeAllViaPoint();
52 
53  /// serialze
54  // void setWeight(Ice::DoubleSeqSeq weights);
55  // Ice::DoubleSeqSeq getWeight();
56  string serialize();
57  Ice::DoubleSeq deserialize(string mpAsString);
58 
59  /// utilities
60  double getCanVal(string mpName);
61  bool getMPEnabled();
62  };
63 
64 };
armarx::MPPoolInterface
Definition: MPPoolInterface.ice:32
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:28