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

# Tools/Math/Points3D.h

Go to the documentation of this file.

    00001 /**
    00002 * @file Points3D.h
    00003 *
    00004 * Definition of class Points3D
    00005 *
    00006 * @author Martin Lötzsch
    00007 */
    00008
    00009 #ifndef __Points3D_h_
    00010 #define __Points3D_h_
    00011
    00012 #include "Tools/Streams/InOut.h"
    00013 #include "Tools/RingBuffer.h"
    00014 #include "Vector3.h"
    00015
    00016 /** The maximum number of points that can be stored */
    00017 const int maxNumberOf3DPoints = 20;
    00018
    00019 /**
    00020 * @class Points3D
    00021 *
    00022 * A ring buffer for 3 dimensional points relative to the robot that can be
    00023 * moved in x,y by odometry.
    00024 *
    00025 * @author Martin Lötzsch
    00026 */
    00027 class Points3D : public RingBuffer<Vector3<double>,maxNumberOf3DPoints>
    00028 {
    00029 public:
    00030   /**Constructor */
    00031   Points3D();
    00032
    00033   /** Destructor */
    00034   ~Points3D();
    00035 };
    00036
    00037 /**
    00038 * Streaming operator that reads a Points3D from a stream.
    00039 * @param stream The stream from which is read.
    00040 * @param points3D The Points3D object.
    00041 * @return The stream.
    00042 */
    00043 In& operator>>(In& stream,Points3D& points3D);
    00044
    00045 /**
    00046 * Streaming operator that writes a Points3D to a stream.
    00047 * @param stream The stream to write on.
    00048 * @param points3D The Points3D object.
    00049 * @return The stream.
    00050 */
    00051 Out& operator<<(Out& stream, const Points3D& points3D);
    00052
    00053
    00054 #endif //__Points3D_h_