SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
CSensorSetBase.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 /*
24  * \file CSensorSetBase.hpp
25  *
26  * Created on: Aug 24, 2012
27  *
28  * Author: Samir Menon <smenon@stanford.edu>
29  */
30 
31 
32 #ifndef CSENSORSETBASE_HPP_
33 #define CSENSORSETBASE_HPP_
34 
35 #include <scl/sensing/CSensorBase.hpp>
36 #include <scl/data_structs/SObject.hpp>
37 #include <sutil/CMappedList.hpp>
38 #include <string>
39 
40 namespace scl
41 {
56  {
57  public:
58  /* *****************************************************************
59  * Sensor Modeling
60  * ***************************************************************** */
63  virtual sBool sense()=0;
64 
66  virtual sBool getSensorOutputs(Eigen::VectorXd& ret_output)=0;
67 
68  /* *****************************************************************
69  * Initialization
70  * ***************************************************************** */
72  virtual sBool init()=0;
73 
75  virtual sBool hasBeenInit()
76  { return has_been_init_; }
77 
80 
82  virtual ~CSensorSetBase() {}
83 
84  protected:
87 
90  };
91 
92 } /* namespace scl */
93 #endif /* CSENSORSETBASE_HPP_ */
Definition: CSensorSetBase.hpp:55
sBool has_been_init_
Definition: CSensorSetBase.hpp:89
sutil::CMappedPointerList< std::string, CSensorBase, true > sensors_
Definition: CSensorSetBase.hpp:86
virtual ~CSensorSetBase()
Definition: CSensorSetBase.hpp:82
Definition: CMappedList.hpp:549
bool sBool
Definition: DataTypes.hpp:54
virtual sBool sense()=0
virtual sBool hasBeenInit()
Definition: CSensorSetBase.hpp:75
virtual sBool getSensorOutputs(Eigen::VectorXd &ret_output)=0
CSensorSetBase()
Definition: CSensorSetBase.hpp:79
virtual sBool init()=0