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

Representations/Perception/MultipleBallPerceptList.h

Go to the documentation of this file.
00001 /**
00002  * @author <a href="mailto:Thorsten.Kerkhof@gmx.de">Thorsten Kerkhof</a>
00003  */
00004 
00005 #ifndef __MultipleBallPerceptList_h_
00006 #define __MultipleBallPerceptList_h_
00007 
00008 #include "Tools/Math/Common.h"
00009 #include "Tools/Math/Vector2.h"
00010 #include "Tools/Math/Vector3.h"
00011 #include "Representations/Perception/CameraMatrix.h"
00012 #include "Tools/Actorics/RobotDimensions.h"
00013 #include "Tools/RobotConfiguration.h"
00014 #include "MultipleBallPerceptElement.h"
00015 
00016 
00017 class MultipleBallPerceptList : public Streamable
00018 {
00019   void serialize(In* in, Out* out)
00020   {
00021     STREAM_REGISTER_BEGIN();
00022     STREAM(panningVelocityError);
00023     STREAM_DYN_ARRAY(multiplePercepts, numberOfElements);
00024     STREAM_REGISTER_FINISH();
00025   }
00026 
00027 public:
00028   MultipleBallPerceptList();
00029 
00030   MultipleBallPerceptElement& operator[](int index) {return multiplePercepts[index];}
00031   const MultipleBallPerceptElement& operator[](int index) const {return multiplePercepts[index];}
00032   
00033   void add(const MultipleBallPerceptElement& elem);
00034 
00035   void calculatePanningVelocityValue(double panningVelocity);
00036 
00037   int numberOfElements;
00038 
00039   //Needed for MSHTeamBallLocator, because the list is communicated it's inserted here:
00040   //the panning error is calculated for every ListElement
00041   double panningVelocityError;
00042 
00043 private:
00044   MultipleBallPerceptElement multiplePercepts[5];
00045 };
00046 
00047 #endif

Generated on Mon Mar 20 22:00:03 2006 for GT2005 by doxygen 1.3.6