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

Modules/CollisionDetector/CollisionDetector.h

Go to the documentation of this file.
00001 /** 
00002 * @file CollisionDetector.h
00003 *
00004 * This file contains a generic class for collision detection.
00005 *
00006 * @author Daniel Göhring
00007 */
00008 
00009 #ifndef __CollisionDetector_h_
00010 #define __CollisionDetector_h_
00011 
00012 
00013 #include "Tools/Module/Module.h"
00014 
00015 #include "Representations/Perception/SensorDataBuffer.h"
00016 #include "Representations/Perception/CollisionPercept.h"
00017 #include "Representations/Motion/MotionInfo.h"
00018 
00019 /**
00020 * @class CollisionDetectorInterfaces
00021 * 
00022 * The interfaces of the CollisionDetector module.
00023 */
00024 class CollisionDetectorInterfaces
00025 {
00026 public:
00027   /** Constructor. */
00028   CollisionDetectorInterfaces(
00029     const SensorDataBuffer& sensorDataBuffer,
00030     const MotionInfo& motionInfo,
00031     CollisionPercept& collisionPercept)
00032     : sensorDataBuffer(sensorDataBuffer),
00033     motionInfo(motionInfo),
00034     collisionPercept(collisionPercept)
00035   { 
00036   }
00037 
00038   /** The SensorDataBuffer */
00039   const SensorDataBuffer& sensorDataBuffer;
00040 
00041   /** The motions that are executed by the Motion process */
00042   const MotionInfo& motionInfo;
00043 
00044   /** The JointState to be generated */
00045   CollisionPercept& collisionPercept;
00046 };
00047 
00048 
00049 /**
00050 * @class CollisionDetector 
00051 *
00052 * The base class for collision detectors
00053 *
00054 * @author Daniel Göhring
00055 */
00056 class CollisionDetector : public Module, public CollisionDetectorInterfaces
00057 {
00058 public:
00059 /*
00060 * Constructor.
00061 * @param interfaces The paramters of the CollisionDetector module.
00062   */
00063   CollisionDetector(const CollisionDetectorInterfaces& interfaces)
00064     : CollisionDetectorInterfaces(interfaces)
00065   {}
00066   
00067   /** Destructor */
00068   virtual ~CollisionDetector() {}
00069 };
00070 
00071 #endif // __CollisionDetector_h_
00072 
00073 /*
00074  * Change log :
00075  * 
00076  * $Log: CollisionDetector.h,v $
00077  * Revision 1.2  2004/05/27 09:09:19  loetzsch
00078  * clean up in the interfaces
00079  *
00080  * Revision 1.1.1.1  2004/05/22 17:19:06  cvsadm
00081  * created new repository GT2004_WM
00082  *
00083  * Revision 1.2  2004/03/08 01:38:48  roefer
00084  * Interfaces should be const
00085  *
00086  * Revision 1.1  2003/10/06 14:10:14  cvsadm
00087  * Created GT2004 (M.J.)
00088  *
00089  * Revision 1.3  2003/09/26 21:23:20  loetzsch
00090  * renamed class JointState to CollisionPercept
00091  *
00092  * Revision 1.2  2003/09/26 15:27:49  juengel
00093  * Renamed DataTypes to representations.
00094  *
00095  * Revision 1.1.1.1  2003/07/02 09:40:23  cvsadm
00096  * created new repository for the competitions in Padova from the 
00097  * tamara CVS (Tuesday 2:00 pm)
00098  *
00099  * removed unused solutions
00100  *
00101  * Revision 1.5  2003/06/20 20:20:43  goehring
00102  * ExecutedMotionReques instead of MotionRequest implemented
00103  *
00104  * Revision 1.4  2003/05/23 09:31:59  goehring
00105  * CollisionDetector - Interface extended to MotionRequest
00106  *
00107  * Revision 1.3  2003/05/13 12:33:11  goehring
00108  * Revised
00109  *
00110  * Revision 1.2  2003/05/02 18:26:17  risler
00111  * SensorDataBuffer added
00112  * replaced SensorData with SensorDataBuffer
00113  * full SensorData resolution now accessible
00114  *
00115  * Revision 1.1  2003/04/25 19:48:08  goehring
00116  * Added new module CollisionDetector
00117  *
00118  * 
00119  */

Generated on Thu Sep 23 19:57:27 2004 for GT2004 by doxygen 1.3.6