SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
SNonControlTaskBase.hpp
1 /* This file is part of scl, a control and simulation library
2 for robots and biomechanical models.
3 
4 scl is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 3 of the License, or (at your option) any later version.
8 
9 Alternatively, you can redistribute it and/or
10 modify it under the terms of the GNU General Public License as
11 published by the Free Software Foundation; either version 2 of
12 the License, or (at your option) any later version.
13 
14 scl is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU Lesser General Public
20 License and a copy of the GNU General Public License along with
21 scl. If not, see <http://www.gnu.org/licenses/>.
22 */
23 /* \file SNonControlTaskBase.hpp
24  *
25  * Created on: Jun 30, 2012
26  *
27  * Copyright (C) 2012
28  *
29  * Author: Samir Menon <smenon@stanford.edu>
30  */
31 
32 #ifndef SNONCONTROLTASKBASE_HPP_
33 #define SNONCONTROLTASKBASE_HPP_
34 
35 #include <scl/DataTypes.hpp>
36 #include <scl/data_structs/SObject.hpp>
37 #include <string>
38 #include <vector>
39 
40 namespace scl
41 {
42  //Forward declaration allows pointers to the parent controller
43  class SControllerMultiTask;
44 
65  {
66  public:
69 
71  std::string type_task_;
72 
77 
89  std::vector<sString2> task_nonstd_params_;
90 
93 
97  bool init(const std::string & arg_name,
98  const std::string & arg_type,
102  const std::vector<scl::sString2>& arg_nonstd_params);
103 
105  bool setParentController(const SControllerMultiTask* arg_parent);
106 
113  virtual bool initTaskParams()=0;
114  };
115 }
116 #endif /* SNONCONTROLTASKBASE_HPP_ */
Definition: SControllerMultiTask.hpp:54
std::string type_task_
Definition: SNonControlTaskBase.hpp:71
SNonControlTaskBase()
Definition: SNonControlTaskBase.cpp:42
bool init(const std::string &arg_name, const std::string &arg_type, const std::vector< scl::sString2 > &arg_nonstd_params)
Definition: SNonControlTaskBase.cpp:49
scl::sBool has_been_activated_
Definition: SNonControlTaskBase.hpp:76
const SControllerMultiTask * parent_controller_
Definition: SNonControlTaskBase.hpp:68
Definition: SNonControlTaskBase.hpp:64
bool sBool
Definition: DataTypes.hpp:54
virtual bool initTaskParams()=0
bool setParentController(const SControllerMultiTask *arg_parent)
Definition: SNonControlTaskBase.cpp:88
std::vector< sString2 > task_nonstd_params_
Definition: SNonControlTaskBase.hpp:89
Definition: SObject.hpp:43