ocra-recipes
Doxygen documentation for the ocra-recipes repository
HocraController.h
Go to the documentation of this file.
1 #ifndef __HOCRACTRL_H__
2 
3 #define __HOCRACTRL_H__
4 
5 
6 #include <string>
7 #include <vector>
8 #include <iostream>
9 #include <memory>
10 
12 #include <ocra/control/Model.h>
14 #include "ocra/control/Task.h"
15 
16 namespace hocra
17 
18 {
19 using namespace ocra;
20 
36 
37 {
38 
39 public:
40 
41  HocraController(const std::string& ctrlName, Model::Ptr innerModel, OneLevelSolver::Ptr innerSolver, bool useReducedProblem);
42  virtual void doAddContactSet(const ContactSet& contacts);
43  virtual void doAddTask(Task::Ptr task);
44  virtual void doComputeOutput(VectorXd& tau);
45  Task::Ptr doCreateContactTask(const std::string& name, ocra::PointContactFeature::Ptr feature, double mu, double margin) const;
46  Task::Ptr doCreateTask(const std::string& name, ocra::Feature::Ptr feature) const;
47  Task::Ptr doCreateTask(const std::string& name, ocra::Feature::Ptr feature, ocra::Feature::Ptr featureDes) const;
48  virtual ~HocraController(){};
49 
50 private:
51  CascadeQPSolver::Ptr cascadeQPSolver;
52  Model::Ptr innerModel;
53 };
54 
55 
56  // end group core
58 
59 
60 
61 } //end namespace hocra
62 
63 
64 
65 
66 
67 
68 
69 #endif
Contact task factory.
Definition: ContactSet.h:59
Declaration file of the Model class.
Optimization-based Robot Controller namespace. a library of classes to write and solve optimization p...
Interface for controllers.
Definition: Controller.h:53
Controller interface.
Hocra Controller based on LQP solver for the ocra framework.
Declaration file of the CascadeQPSolver class.