Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

# Modules/BallLocator/GT2005Particles/GT2005Particle.h

Go to the documentation of this file.

    00001 /**
    00002  * @file GT2005Particle.h
    00003  *
    00004  * This file contains a Particle Representation used by the GT2005BallLocator.
    00005  *
    00006  * @author <a href="mailto:christinez@gmx.de">Christine Zarges</a>
    00007  * @author <a href="mailto:Thorsten.Kerkhof@gmx.de">Thorsten Kerkhof</a>
    00008  */
    00009
    00010 #ifndef __GT2005Particle_h_
    00011 #define __GT2005Particle_h_
    00012
    00013 #include "Tools/Debugging/GenericDebugData.h"
    00014 #include "Tools/Math/Common.h"
    00015 #include "Tools/Math/Vector2.h"
    00016 #include "Tools/Math/Pose2D.h"
    00017 #include "Tools/FieldDimensions.h"
    00018 #include "Tools/RingBuffer.h"
    00019 #include "Representations/Cognition/RobotPose.h"
    00020 #include "Representations/Perception/ObstaclesPercept.h"
    00021 #include "Representations/Motion/OdometryData.h"
    00022 #include "Representations/Cognition/SampleSet.h"
    00023 #include <math.h>
    00024
    00025 /**
    00026 * @class GT2005Particle
    00027 */
    00028 class GT2005Particle
    00029 {
    00030 public:
    00031   // Constructor:
    00032   GT2005Particle();
    00033
    00034   //Constructur, all saved values are given directly:
    00035   GT2005Particle(double x, double y,
    00036                  double vx, double vy,
    00037                  double prob, double vProb);
    00038
    00039   Vector2<double> pose;
    00040   double probability;
    00041   double vx;
    00042   double vy;
    00043   double vprob;
    00044
    00045   //Ball old-x-position:
    00046   double seenvx;
    00047   //Ball old-y-position:
    00048   double seenvy;
    00049
    00050   double provx, provy;
    00051
    00052   //Pointer on the next GT2005Particle in the grid:
    00053   GT2005Particle* next;
    00054
    00055   //Functions to get and set more than one value in one step:
    00056   Vector2<double> getPosition() const;
    00057   Vector2<double> getVelocity() const;
    00058   void setPosition(double x, double y);
    00059   void setVelocity(double vx, double vy);
    00060   void setParameters(double x, double y,
    00061                      double vx, double vy,
    00062                      double prob, double vProb);
    00063 };
    00064
    00065 #endif// __GT2005Particle_h_