PlanningState.h
Go to the documentation of this file.
00001 // SVN $HeadURL$
00002 // SVN $Id$
00003 
00004 /*
00005  * A footstep planner for humanoid robots
00006  *
00007  * Copyright 2010-2011 Johannes Garimort, Armin Hornung, University of Freiburg
00008  * http://www.ros.org/wiki/footstep_planner
00009  *
00010  *
00011  * This program is free software: you can redistribute it and/or modify
00012  * it under the terms of the GNU General Public License as published by
00013  * the Free Software Foundation, version 3.
00014  *
00015  * This program is distributed in the hope that it will be useful,
00016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018  * GNU General Public License for more details.
00019  *
00020  * You should have received a copy of the GNU General Public License
00021  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
00022  */
00023 
00024 #ifndef FOOTSTEP_PLANNER_PLANNINGSTATE_H_
00025 #define FOOTSTEP_PLANNER_PLANNINGSTATE_H_
00026 
00027 #include <footstep_planner/helper.h>
00028 #include <footstep_planner/State.h>
00029 
00030 
00031 namespace footstep_planner
00032 {
00048 class PlanningState
00049 {
00050 public:
00062   PlanningState(double x, double y, double theta, Leg leg,
00063                 double cell_size, int num_angle_bins, int max_hash_size);
00064 
00069   PlanningState(int x, int y, int theta, Leg leg, int max_hash_size);
00070 
00072   PlanningState(const State& s, double cell_size, int num_angle_bins,
00073                 int max_hash_size);
00074 
00076   PlanningState(const PlanningState& s);
00077 
00078   ~PlanningState();
00079 
00084   bool operator ==(const PlanningState& s2) const;
00085 
00090   bool operator !=(const PlanningState& s2) const;
00091 
00097   void setId(unsigned int id) { ivId = id; };
00098 
00099   Leg getLeg() const { return ivLeg; };
00100   int getTheta() const { return ivTheta; };
00101   int getX() const { return ivX; };
00102   int getY() const { return ivY; };
00103 
00108   unsigned int getHashTag() const { return ivHashTag; };
00109 
00114   int getId() const { return ivId; };
00115 
00117   State getState(double cell_size, int num_angle_bins) const;
00118 
00119 private:
00121   int ivX;
00123   int ivY;
00125   int ivTheta;
00127   Leg   ivLeg;
00128 
00130   int ivId;
00131 
00136   unsigned int ivHashTag;
00137 };
00138 }
00139 #endif  // FOOTSTEP_PLANNER_PLANNINGSTATE_H_
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines


footstep_planner
Author(s): Johannes Garimort, Armin Hornung
autogenerated on Tue Oct 15 2013 10:06:52