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

Tools/Module/SolutionRequest.h

Go to the documentation of this file.
00001 /**
00002 * @file SolutionRequest.h
00003 *
00004 * Declaration of class SolutionRequest
00005 *
00006 * @author Max Risler
00007 * @author Martin Lötzsch
00008 */
00009 
00010 #ifndef __SolutionRequest_h_
00011 #define __SolutionRequest_h_
00012 
00013 #include "Tools/Streams/InOut.h"
00014 
00015 /** maximum number of solutions per module */
00016 const int solutionRequestMaxNumOfSolutions = 40;
00017 
00018 /** Manages runtime exhangeable modules. */
00019 class SolutionRequest
00020 {
00021 public:
00022   /**
00023   * Enumerator for exchange modules
00024   * Add new exchangeable module here.
00025   * Create new selector module for new exchangeable modules
00026   */
00027   enum ModuleID
00028   {
00029     colorTableMod,
00030     sensorDataProcessor, /*!< See class SensorDataProcessorSelector */
00031     imageProcessor, /*!< See class ImageProcessorSelector */
00032     ballLocator, /*!< See class BallLocatorSelector */
00033     teamBallLocator, /*!< See class TeamBallLocatorSelector */
00034     obstaclesLocator, /*!< See class ObstaclesLocatorSelector */
00035     playersLocator, /*!< See class PlayersLocatorSelector */
00036     selfLocator, /*!< See class SelfLocatorSelector */
00037     robotStateDetector, /*!< See class RobotStateDetectorSelector */
00038     collisionDetector, /*!< See class CollisionDetectorSelector */
00039     behaviorControl, /*!< See class BehaviorControlSelector */
00040     motionControl, /*!< See class MotionControlSelector */
00041     walkingEngineNormal, /*!< See class WalkingEngineNormalSelector */
00042     headControl, /*!< See class HeadControlSelector */
00043     ledControl, /*!< See class LEDControlSelector */
00044     getupEngine, /*!< See class GetupEngineSelector */
00045     soundControl, /*!< See class SoundControlSelector */
00046     sensorBehaviorControl, /*!< See class SensorBehaviorControlSelector */
00047     numOfModules /*!< Number of exchangeable modules */
00048   };
00049 
00050   /** enumerator for available solutions for all exchangeable modules
00051   * \attention add new solutions here
00052   * \attention dont forget to edit selector module too
00053   */
00054   enum ModuleSolutionID
00055   {
00056     disabled = -1,
00057     
00058     // ColorTableMod solutions
00059     colorTable32KMod = 0,
00060     colorTable64Mod,
00061     colorTableTSLMod,
00062     numOfColorTableModSolutions, 
00063     
00064     // SelfLocator solutions
00065     gt2004SelfLocator = 0,
00066     odometrySelfLocator,
00067     specialPerceptSelfLocator,
00068     noOdometrySelfLocator,
00069     numOfSelfLocatorSolutions,
00070 
00071     // ImageProcessor solutions
00072     gt2004ImageProcessor = 0,
00073     checkerboardDetector,
00074   rasterImageProcessor,
00075     numOfImageProcessorSolutions,
00076 
00077     // BehaviorControl solutions
00078     gt2004BehaviorControlAgentSoccer = 0,
00079     gt2004BehaviorControlAgentPenaltyShooter,
00080     gt2004BehaviorControlAgentJoystickControlled,
00081     gt2004BehaviorControlAgentOpenChallenge,
00082     numOfBehaviorControlSolutions,
00083 
00084     // CollisionDetector solutions
00085     gt2004CollisionDetector = 0,
00086     numOfCollisionDetectorSolutions,
00087 
00088     // WalkingEngine solutions
00089     gt2004WalkingEngine = 0,
00090     invKinMSH2004WalkingEngine,
00091     invKinBB2004WalkingEngine,
00092     invKinUpsideDownWalkingEngine,
00093     invKinTurnWithBallWalkingEngine,
00094     invKinTurnKickWalkingEngine,
00095     invKinERS7EvolveWalkingEngine,
00096     numOfWalkingEngineSolutions,
00097 
00098     // BallLocator solutions
00099     gt2004BallLocator = 0,
00100     numOfBallLocatorSolutions,
00101 
00102     // TeamBallLocator solutions 
00103     gt2004TeamBallLocator = 0,
00104     numOfTeamBallLocatorSolutions,
00105 
00106 
00107     // PlayersLocator solutions
00108     gt2004PlayersLocator = 0,
00109     numOfPlayersLocatorSolutions,
00110 
00111     // ObstaclesLocator solutions
00112     gt2004ObstaclesLocator = 0,
00113     numOfObstaclesLocatorSolutions,
00114 
00115     // HeadControl solutions
00116     gt2004HeadControl = 0,
00117     numOfHeadControlSolutions,
00118 
00119     // LEDControl solutions
00120     gt2004LEDControl = 0,
00121     numOfLEDControlSolutions,
00122 
00123     // SensorDataProcessor solutions
00124     gt2004SensorDataProcessor = 0,
00125     numOfSensorDataProcessorSolutions,
00126 
00127     // RobotStateDetector solutions
00128     gt2004RobotStateDetector = 0,
00129     numOfRobotStateDetectorSolutions,
00130 
00131     // SensorBehaviorControl solutions
00132     obstacleAvoiderOnGreenField = 0,
00133     obstacleAvoiderOnGreenFieldERS7,
00134     motionrecognition,
00135     simpleMotionRecognition,
00136     bb2004Calibrator,
00137     imageSaver,
00138     numOfSensorBehaviorControlSolutions,
00139 
00140     // MotionControl solutions
00141     gt2004MotionControl = 0,
00142     debugMotionControl,
00143     numOfMotionControlSolutions,
00144 
00145     // GetupEngine solutions
00146     gt2004GetupEngine = 0,
00147     numOfGetupEngineSolutions,
00148 
00149     // SoundOutControl solutions
00150     gt2004SoundControl = 0,
00151     numOfSoundControlSolutions
00152 
00153   };
00154 
00155   /** returns names for module ids
00156   * Add new exchangeable module here
00157   */
00158   static const char* getModuleName(ModuleID id)
00159   {
00160     switch (id)
00161     {
00162     case colorTableMod: return "ColorTableModule";
00163     case imageProcessor: return "ImageProcessor";
00164     case selfLocator: return "SelfLocator";
00165     case behaviorControl: return "BehaviorControl";
00166     case collisionDetector: return "CollisionDetector";
00167     case walkingEngineNormal: return "WalkingEngine:normal";
00168     case headControl: return "HeadControl";
00169     case ledControl: return "LEDControl";
00170     case ballLocator: return "BallLocator";
00171     case playersLocator: return "PlayersLocator";
00172     case obstaclesLocator: return "ObstaclesLocator";
00173     case sensorDataProcessor: return "SensorDataProcessor";
00174     case robotStateDetector: return "RobotStateDetector";
00175     case sensorBehaviorControl: return "SensorBehaviorControl";
00176     case motionControl: return "MotionControl";
00177     case getupEngine: return "GetupEngine";
00178     case soundControl: return "SoundControl";
00179     case teamBallLocator: return "TeamBallLocator";
00180 
00181     default: return "please edit SolutionRequest::getModuleName";
00182     }
00183   }
00184 
00185   /** Returns number of solutions in module id
00186   * \attention add new exchangeable module here
00187   */
00188   static int getNumOfSolutions(ModuleID id)
00189   {
00190     switch (id)
00191     {
00192     case colorTableMod :return numOfColorTableModSolutions;
00193     case imageProcessor: return numOfImageProcessorSolutions;
00194     case selfLocator: return numOfSelfLocatorSolutions;
00195     case behaviorControl: return numOfBehaviorControlSolutions;
00196     case collisionDetector: return numOfCollisionDetectorSolutions;
00197     case walkingEngineNormal: return numOfWalkingEngineSolutions;
00198     case headControl: return numOfHeadControlSolutions;
00199     case ledControl: return numOfLEDControlSolutions;
00200     case ballLocator: return numOfBallLocatorSolutions;
00201     case playersLocator: return numOfPlayersLocatorSolutions;
00202     case obstaclesLocator: return numOfObstaclesLocatorSolutions;
00203     case sensorDataProcessor: return numOfSensorDataProcessorSolutions;
00204     case robotStateDetector: return numOfRobotStateDetectorSolutions;
00205     case sensorBehaviorControl: return numOfSensorBehaviorControlSolutions;
00206     case motionControl: return numOfMotionControlSolutions;
00207     case getupEngine: return numOfGetupEngineSolutions;
00208     case soundControl: return numOfSoundControlSolutions;
00209     case teamBallLocator: return numOfTeamBallLocatorSolutions;
00210 
00211     default: return 0;
00212     }
00213   }
00214 
00215   /**
00216   * Returns names for module solution ids.
00217   * Add new solutions here.
00218   */
00219   static const char* getModuleSolutionName(ModuleID module, ModuleSolutionID solution)
00220   {
00221     if (solution == disabled) return "disabled";
00222     switch (module)
00223     {
00224     case colorTableMod: switch (solution)
00225                       {
00226     case colorTable32KMod: return "ColorTable32KModule";
00227     case colorTable64Mod: return "ColorTable64Module";
00228     case colorTableTSLMod: return "ColorTableTSLModule";      
00229                       }
00230     case selfLocator:  switch (solution)
00231                        {
00232     case odometrySelfLocator: return "Odometry";
00233     case specialPerceptSelfLocator: return "SpecialPercept";
00234     case noOdometrySelfLocator: return "NoOdometry";
00235     case gt2004SelfLocator: return "GT2004";
00236                        }
00237     case behaviorControl: switch (solution)
00238                           {
00239     case gt2004BehaviorControlAgentSoccer: return "GT2004-soccer";
00240     case gt2004BehaviorControlAgentPenaltyShooter: return "GT2004-penalty-shooter";
00241     case gt2004BehaviorControlAgentJoystickControlled: return "GT2004-joystick-controlled";
00242     case gt2004BehaviorControlAgentOpenChallenge: return "GT2004-open-challenge";
00243                           }
00244 
00245     case collisionDetector: switch (solution)
00246                             {
00247     case gt2004CollisionDetector: return "GT2004";
00248                             }
00249     case walkingEngineNormal: switch (solution) 
00250                               {
00251     case invKinUpsideDownWalkingEngine: return "InvKin:UpsideDown";
00252     case invKinTurnWithBallWalkingEngine: return "InvKin:TurnWithBall";
00253     case invKinTurnKickWalkingEngine: return "InvKin:invTurnKick";
00254     case invKinERS7EvolveWalkingEngine: return "InvKin:ERS7Evolve";
00255     case gt2004WalkingEngine: return "GT2004";
00256     case invKinBB2004WalkingEngine: return "InvKin:BB2004";
00257     case invKinMSH2004WalkingEngine: return "InvKin:MSH2004";
00258                               }
00259     case headControl: switch (solution)
00260                       {
00261     case gt2004HeadControl: return "GT2004";
00262                       }
00263     case ledControl: switch (solution)
00264                       {
00265     case gt2004LEDControl: return "GT2004";
00266                       }
00267     case ballLocator: switch (solution)
00268                       {
00269     case gt2004BallLocator: return "GT2004";
00270                       }
00271     case playersLocator: switch (solution)
00272                          {
00273     case gt2004PlayersLocator: return "GT2004";
00274                          }
00275     case obstaclesLocator: switch (solution)
00276                            {
00277     case gt2004ObstaclesLocator: return "GT2004";
00278                            }
00279     case imageProcessor: switch (solution)
00280                          {
00281     case gt2004ImageProcessor: return "GT2004";
00282     case checkerboardDetector: return "Checkerboard";
00283   case rasterImageProcessor: return "RIP";
00284                          }
00285     case sensorDataProcessor: switch(solution)
00286                               {
00287     case gt2004SensorDataProcessor: return "GT2004";
00288                               }
00289     case robotStateDetector: switch (solution)
00290                              {
00291     case gt2004RobotStateDetector: return "GT2004";
00292                              }
00293     case sensorBehaviorControl: switch (solution)
00294                                 {
00295     case obstacleAvoiderOnGreenField: return "ObstacleAvoiderOnGreenField";
00296     case obstacleAvoiderOnGreenFieldERS7: return "ObsAvoider(OGF) ERS7";
00297     case motionrecognition: return "MotionRec";
00298     case simpleMotionRecognition: return "SimpleMotionRec";
00299     case bb2004Calibrator: return "BB2004Calibrator";
00300     case imageSaver: return "Image Saver";
00301                                 }
00302     case motionControl: switch (solution)
00303                         {
00304     case gt2004MotionControl: return "GT2004";
00305     case debugMotionControl: return "Debug";
00306                         }
00307     case getupEngine: switch (solution)
00308                       {
00309     case gt2004GetupEngine: return "GT2004";
00310                       }
00311     case soundControl: switch (solution)
00312                        {
00313     case gt2004SoundControl: return "GT2004";
00314                        }
00315     case teamBallLocator: switch(solution)
00316                           {
00317     case gt2004TeamBallLocator: return "GT2004";
00318                           }
00319 
00320 
00321 
00322     }
00323     return "please edit SolutionRequest::getModuleSolutionName";
00324   }
00325 
00326   /** an array containing the selected solution for each module */
00327   ModuleSolutionID solutions[numOfModules];
00328 
00329   /** Constructor
00330   * @param setDefault if true default modules will be selected else all modules are disabled
00331   */
00332   SolutionRequest(bool setDefault = false);
00333 
00334   /**
00335   * Returns default solution for module.
00336   */
00337   static ModuleSolutionID getDefaultSolution(ModuleID id)
00338   {
00339     static SolutionRequest defaultRequest(true);
00340     return defaultRequest.solutions[id];
00341   }
00342 
00343   /**
00344   * Sets all modules to default solutions.
00345   */
00346   void setDefaultSolutions();
00347 
00348   /** the == operator */
00349   bool operator == (const SolutionRequest& other);
00350 
00351   /** the == operator */
00352   bool operator != (const SolutionRequest& other)
00353   { return ! (*this == other); }
00354 
00355   /**
00356   * ErrorWhileReading
00357   * is set to true when an error occurred while reading the SolutionRequest
00358   * eg when an module was missing or a solution was not recognized
00359   */
00360   bool errorWhileReading;
00361 
00362   /** IDs for the module solutions using a Xabsl2Engine */
00363   enum xabsl2EngineID
00364   {
00365     gt2004, 
00366     numOfXabslBehaviors,
00367     hc_gt2004 = numOfXabslBehaviors, 
00368     undefined
00369   };
00370 
00371   /** returns the name of a xabsl2EngineID */
00372   static const char* getXabsl2EngineIDName(xabsl2EngineID id)
00373   {
00374     switch (id)
00375     {
00376     case gt2004: return "GT2004";
00377     case hc_gt2004: return "HC_GT2004";
00378     default: return "unknown";
00379     }
00380   }
00381 
00382   /** returns the beginning of the file name of a config file
00383   * for a xabsl2Engine
00384   */
00385   static const char* getXabsl2EngineFileID(xabsl2EngineID id)
00386   {
00387     switch (id)
00388     {
00389     case gt2004: return "gt04";
00390     case hc_gt2004: return "HeadCtrl/gt04";
00391 
00392     default: return "unknown";
00393     }
00394   }
00395 };
00396 
00397 /**
00398 * Streaming operator that reads a SolutionRequest from a stream.
00399 * @param stream The stream from which is read.
00400 * @param solutionRequest The SolutionRequest object.
00401 * @return The stream.
00402 */
00403 In& operator>>(In& stream,SolutionRequest& solutionRequest);
00404 
00405 /**
00406 * Streaming operator that writes a SolutionRequest to a stream.
00407 * @param stream The stream to write on.
00408 * @param solutionRequest The SolutionRequest object.
00409 * @return The stream.
00410 */
00411 Out& operator<<(Out& stream, const SolutionRequest& solutionRequest);
00412 
00413 #endif //__SolutionRequest_h_
00414 
00415 /*
00416 * Change log :
00417 *
00418 * $Log: SolutionRequest.h,v $
00419 * Revision 1.28  2004/09/22 16:09:35  spranger
00420 * bugfix
00421 *
00422 * Revision 1.27  2004/09/21 19:21:44  loetzsch
00423 * removed sensor-actor-loop
00424 *
00425 * Revision 1.26  2004/09/02 07:59:30  schmidtb
00426 * Added RasterImageProcessor to repository, because we used it for the OpenChallenge.
00427 *
00428 * Revision 1.25  2004/07/20 20:46:18  spranger
00429 * removed imageprocessors, challenge-selflocator and some behavior-agents
00430 *
00431 * Revision 1.24  2004/07/14 21:11:34  spranger
00432 * removed Kalman and KalmanCombo, introduced GT2004BallLocator
00433 *
00434 * Revision 1.23  2004/07/10 00:14:00  spranger
00435 * renaming for coderelease and preparations for gt2005
00436 *
00437 * Revision 1.22  2004/07/02 10:11:47  nistico
00438 * Cloned main image processor and created
00439 * SpecialLandmarks specialist for SLAM challenge
00440 *
00441 * Revision 1.21  2004/07/01 12:38:28  dassler
00442 * introduced new Balllocator KalmanComboBallLocator
00443 * ball.seen is set by the Validity and the rest by the Kalman Filter
00444 *
00445 * Revision 1.20  2004/06/30 21:37:54  schumann
00446 * cloned GT2004SelfLocator for slam challenge
00447 *
00448 * Revision 1.19  2004/06/27 17:41:02  goetzke
00449 * Added penalty-shooter.
00450 *
00451 * Revision 1.18  2004/06/19 12:17:35  juengel
00452 * Added agents for slam and lighting challenge.
00453 *
00454 * Revision 1.17  2004/06/17 11:24:04  roefer
00455 * Added RGIP and GT2004SL
00456 *
00457 * Revision 1.16  2004/06/16 21:00:02  goehring
00458 * ImageSaver added
00459 *
00460 * Revision 1.15  2004/06/14 16:47:38  juengel
00461 * Removed some WalkingEngineParameterSets.
00462 *
00463 * Revision 1.14  2004/05/29 18:19:42  dueffert
00464 * walk parameter evolution, measurement and calibration stuff ported to GT2004_WM
00465 *
00466 * Revision 1.13  2004/05/28 15:51:55  thomas
00467 * added support for multiple joysticks in robotremote
00468 * added solution gt2004-joystick-controlled
00469 *
00470 * Revision 1.12  2004/05/27 10:25:18  loetzsch
00471 * removed all prepocessor directives NO_COLOR_TABLE_SELECTOR
00472 *
00473 * Revision 1.11  2004/05/26 15:28:42  loetzsch
00474 * removed ATH2004ERS7HeadControl
00475 *
00476 * Revision 1.10  2004/05/26 00:08:59  goehring
00477 * ValidityBasedBallLocator added
00478 *
00479 * Revision 1.9  2004/05/25 16:53:46  loetzsch
00480 * added agent pass test
00481 *
00482 * Revision 1.8  2004/05/24 15:19:24  loetzsch
00483 * readded head control ATH2004ERS7
00484 *
00485 * Revision 1.7  2004/05/23 12:08:26  loetzsch
00486 * clean up in class HeadControlMode
00487 *
00488 * Revision 1.6  2004/05/22 23:26:03  loetzsch
00489 * bug fix
00490 *
00491 * Revision 1.5  2004/05/22 22:52:05  juengel
00492 * Renamed ballP_osition to ballModel.
00493 *
00494 * Revision 1.4  2004/05/22 22:16:10  loetzsch
00495 * renamed ATH2004LEDControl to GT2004LEDControl
00496 *
00497 * Revision 1.3  2004/05/22 22:01:06  loetzsch
00498 * removed some ball locators
00499 *
00500 * Revision 1.2  2004/05/22 18:47:32  juengel
00501 * Removed some solutions.
00502 *
00503 * Revision 1.1.1.1  2004/05/22 17:37:21  cvsadm
00504 * created new repository GT2004_WM
00505 *
00506 * Revision 1.72  2004/05/18 11:04:54  roefer
00507 * Separate view and optional parameter hc for xabsl head control
00508 *
00509 * Revision 1.71  2004/05/14 11:37:08  loetzsch
00510 * support for multiple xabsl2engines in different modules
00511 * preliminary GT2004HeadControl (does not work at all)
00512 *
00513 * Revision 1.70  2004/05/06 15:40:18  loetzsch
00514 * yet another demo agent
00515 *
00516 * Revision 1.69  2004/05/05 21:47:14  kerdels
00517 * added agent for the open challenge
00518 *
00519 * Revision 1.68  2004/05/04 13:56:55  tim
00520 * added GT2004ImageProcessor
00521 *
00522 * Revision 1.67  2004/05/02 13:33:54  juengel
00523 * Added GT2004BehaviorControl.
00524 *
00525 * Revision 1.66  2004/04/27 11:23:23  loetzsch
00526 * preliminary passing experiments
00527 *
00528 * Revision 1.65  2004/04/26 15:59:01  thomas
00529 * added new project RobotRemote based on ATHAiboControl
00530 *
00531 * Revision 1.64  2004/04/21 20:13:33  goehring
00532 * BallSolution added
00533 *
00534 * Revision 1.63  2004/04/18 11:57:46  nistico
00535 * Removed MSH2004ImageProcessor2 (integrated all changes into MSH2004ImageProcessor)
00536 *
00537 * Revision 1.62  2004/04/09 11:35:54  roefer
00538 * Bremen Byters German Open check-in
00539 *
00540 * Revision 1.61  2004/04/08 15:33:08  wachter
00541 * GT04 checkin of Microsoft-Hellounds
00542 *
00543 * Revision 1.60  2004/04/07 13:25:43  thomas
00544 * ddd checkin after go04 - second part fixed solutions
00545 *
00546 * Revision 1.59  2004/04/07 13:00:49  risler
00547 * ddd checkin after go04 - second part
00548 *
00549 * Revision 1.7  2004/04/02 23:44:40  dthomas
00550 * added new invKinParams for turn with ball
00551 * integrated into rotate-around-ball
00552 * combined with updated catch-ball head-control-mode
00553 *
00554 * Revision 1.6  2004/04/02 09:27:54  Marc
00555 * Removed Opponent Team Code
00556 *
00557 * Revision 1.5  2004/03/31 10:08:08  dthomas
00558 * added new parameterset for ers7 based on jolly pochie
00559 *
00560 * Revision 1.4  2004/03/30 14:00:36  Papa Schlumpf
00561 * added DDD2004BallLocator
00562 *
00563 * Revision 1.3  2004/03/29 15:19:05  Marc
00564 * Intruduced the Black and White Image
00565 * Normal Images (not Jpeg) images were now send as Color Image with BW
00566 *
00567 * Revision 1.2  2004/03/29 10:06:25  dthomas
00568 * added new ers7 walking engine parameters
00569 *
00570 * Revision 1.1.1.1  2004/03/29 08:28:42  Administrator
00571 * initial transfer from tamara
00572 *
00573 * Revision 1.57  2004/03/28 14:06:41  jhoffman
00574 * renamed headcontrolmode ATH2004 in ATH2004ERS7
00575 *
00576 * Revision 1.58  2004/04/05 17:56:50  loetzsch
00577 * merged the local German Open CVS of the aibo team humboldt with the tamara CVS
00578 *
00579 * Revision 1.57  2004/03/28 14:06:41  jhoffman
00580 * renamed headcontrolmode ATH2004 in ATH2004ERS7
00581 *
00582 * Revision 1.56  2004/03/20 17:19:19  juengel
00583 * Added selector for LEDControl
00584 *
00585 * Revision 1.55  2004/03/19 11:31:55  nistico
00586 * ColorTable32KImageProcessor removed
00587 *
00588 * Revision 1.54  2004/03/17 16:18:50  thomas
00589 * added preversion of motion optimisation with behaviour, selflocator, headcontrol and robotcontrol dialog
00590 *
00591 * Revision 1.53  2004/03/17 01:10:51  cesarz
00592 * added MSH2004TurnWithBallWalkingParameters
00593 *
00594 * Revision 1.52  2004/03/16 14:16:06  risler
00595 * cloned GT2003ImageProcessor to DDD2004ImageProcessor
00596 *
00597 * Revision 1.51  2004/03/16 14:00:23  juengel
00598 * Integrated Improvments from "Günne"
00599 * -ATH2004ERS7Behavior
00600 * -ATHHeadControl
00601 * -KickSelectionTable
00602 * -KickEditor
00603 *
00604 * Revision 1.50  2004/03/11 14:27:32  uhrig
00605 * KalmanBallLocator was added
00606 *
00607 * Revision 1.4  2004/03/16 08:34:34  loetzsch
00608 * moved agent kick-test from ATH2004 to ATH2004ERS7
00609 *
00610 * Revision 1.3  2004/03/15 17:11:41  hoffmann
00611 * - added ATH2004HeadControl
00612 * - added ATH2004LEDControl
00613 * - headmotiontester shows "tilt2"
00614 * - motion process updates odometry while no new robotPose is received, added to motion request
00615 * - some ui adjustments
00616 * - added member function to "field" to find out if robot is in own penalty area for use in the obstacles locator
00617 *
00618 * Revision 1.2  2004/03/06 18:31:21  loetzsch
00619 * cloned ATH2004BehaviorControl into ATH2004ERS7BehaviorControl
00620 *
00621 * Revision 1.49  2004/03/10 17:45:21  kindler
00622 * - Added MSH2004 InvKinWalkingEngine parameter set.
00623 *
00624 * Revision 1.48  2004/03/04 23:00:55  roefer
00625 * Added (so far empty) BB2004Calibrator
00626 *
00627 * Revision 1.47  2004/03/04 18:21:20  juengel
00628 * Added ERS7TurnWithBallWalkingParameters.
00629 *
00630 * Revision 1.46  2004/02/27 15:03:52  wachter
00631 * cloned GT2003HeadControl as MSH2004HeadContol
00632 *
00633 * Revision 1.45  2004/02/27 13:37:16  jhoffman
00634 * added obstacle avoiding "sensor behavior control" for ers7
00635 *
00636 * Revision 1.44  2004/02/26 18:07:28  cesarz
00637 * first version of evolution behavior
00638 *
00639 * Revision 1.43  2004/02/24 20:58:43  wachter
00640 * Increased solutionRequestMaxNumOfSolutions to 30 because we have 27 behavior-control solutions.
00641 *
00642 * Revision 1.42  2004/02/23 12:52:58  schumann
00643 * added MSH2004KickEngine
00644 *
00645 * Revision 1.41  2004/02/16 18:54:38  tim
00646 * Added BB2004ImageProcessor
00647 *
00648 * Revision 1.40  2004/02/16 01:02:02  rempe
00649 * agent for developing another goalie
00650 *
00651 * Revision 1.39  2004/02/13 13:33:25  goetzke
00652 * added PassTester
00653 *
00654 * Revision 1.38  2004/02/10 17:51:20  goetzke
00655 * no message
00656 *
00657 * Revision 1.37  2004/02/08 10:58:14  witzmann
00658 * added olli-kahn (Dirk Rempe (rempe@informatik.hu-berlin.de) , Robert Sombrutzki (sombrutz@informatik.hu-berlin.de), Erik Witzmann)
00659 *
00660 * Revision 1.36  2004/02/05 14:23:16  spranger
00661 * added intercept-tester agent
00662 *
00663 * Revision 1.35  2004/02/05 10:31:44  juengel
00664 * tags added
00665 *
00666 * Revision 1.34  2004/02/04 13:41:33  roefer
00667 * Some place holders for BB2004 modules added
00668 *
00669 * Revision 1.33  2004/01/30 15:44:33  nistico
00670 * Created a Color Table Selector, which permits to switch color tables at run time using the same image processor.
00671 * If your image processor was designed to use only ColorTable64, leave it as the default choice and you should
00672 * (hopefully) have no problems.
00673 * In case of trouble, i put a conditional compilation switch in SolutionRequest.h, simply uncomment the definition of NO_COLOR_TABLE_SELECTOR; in that case, the code should get back to the original solution, but the coltable which will be looked upon first for loading will be ColorTable64 (as it's the default solution), so there's no reason anymore to remove the other color tables from the CVS.
00674 *
00675 * Revision 1.32  2004/01/24 14:55:29  loetzsch
00676 * created ATH AiboControl
00677 *
00678 * Revision 1.31  2004/01/23 23:02:25  wachter
00679 * Reinserted the famous GaussBellTeamBallLocator from the
00680 * as GT2003-code as SensorFusionTeamBallLocator.
00681 *
00682 * Revision 1.30  2004/01/20 12:40:09  nistico
00683 * - Added support for ColorTable32K (65K elements in packed format)
00684 * - RobotControl can now convert GT *.log files into AIBOVision (external ColorTable32K calibration tool) *.amv file format
00685 *
00686 * Revision 1.29  2004/01/15 15:43:00  kindler
00687 * Added ComboImageProcessor (only temporarily, for debugging only..)
00688 *
00689 * Revision 1.28  2004/01/13 18:35:24  loetzsch
00690 * added invkin:walkingparameterset ERS7
00691 *
00692 * Revision 1.27  2004/01/08 21:59:18  richert
00693 * added Module SimpleMotionRecognition
00694 *
00695 * Revision 1.26  2004/01/08 13:53:38  loetzsch
00696 * new kick test behaviors
00697 *
00698 * Revision 1.25  2004/01/06 17:49:12  sombrutz
00699 * added another-goalie (Dirk Rempe (rempe@informatik.hu-berlin.de) , Robert Sombrutzki (sombrutz@informatik.hu-berlin.de), Erik Witzmann)
00700 *
00701 * Revision 1.24  2003/12/29 15:48:54  roefer
00702 * Bremen Byters evo walking added
00703 *
00704 * Revision 1.23  2003/12/19 01:14:14  kerdels
00705 * agent added
00706 *
00707 * Revision 1.22  2003/12/12 17:08:28  richert
00708 * added new solution motionrecognition
00709 *
00710 * Revision 1.21  2003/12/11 16:18:42  risler
00711 * added agent DDD2004-demo
00712 *
00713 * Revision 1.20  2003/12/11 11:25:26  seva
00714 * Added penalty-shooter-union and penalty-shooter-hertha.
00715 *
00716 * Revision 1.19  2003/12/10 21:00:02  kerdels
00717 * OptionRating aus SolutionRequest.h entfernt und Tools Ordner DynamicTeamTactic angelegt
00718 *
00719 * Revision 1.18  2003/12/06 18:46:25  kerdels
00720 * neues Modul OptionRating angelegt,
00721 * neue Representation CollectedBeliefs angelegt.
00722 *
00723 * Revision 1.17  2003/12/03 13:29:27  schumann
00724 * added MSH2004 Ball Locator
00725 *
00726 * Revision 1.16  2003/12/02 19:45:42  spranger
00727 * added NoOdometrySelfLocator
00728 *
00729 * Revision 1.15  2003/12/02 18:28:57  dueffert
00730 * first working not yet calibrated version of UDWalkingEngine added
00731 *
00732 * Revision 1.14  2003/12/02 13:52:48  goehring
00733 * PerceptBallLocator added
00734 *
00735 * Revision 1.13  2003/11/22 09:33:01  jhoffman
00736 * added "Yet Another Inv Kin Walking Engine"
00737 * experimental stage, doesn't do much yet
00738 * no Fourier inside!
00739 *
00740 * Revision 1.12  2003/11/21 15:45:02  dueffert
00741 * fast forward walking added
00742 *
00743 * Revision 1.11  2003/11/20 10:30:13  schmidtb
00744 * Ball Detection added
00745 *
00746 * Revision 1.10  2003/11/17 14:56:04  urban
00747 * added SensorBehaviorControl-solution "AlLx RemotePresence" and RobotControl-dialogbar "AlLx Joystick"
00748 *
00749 * Revision 1.9  2003/11/03 20:12:19  juengel
00750 * Added ath-percept-tester
00751 *
00752 * Revision 1.8  2003/10/29 13:16:06  juengel
00753 * Added module SensorActorLoop.
00754 *
00755 * Revision 1.7  2003/10/27 13:27:03  wachter
00756 * Added agent for glass-box demo.
00757 *
00758 * Revision 1.6  2003/10/26 22:49:41  loetzsch
00759 * created ATH2004BehaviorControl from GT2003BehaviorControl
00760 *  - strongly simplified option graph
00761 *  - moved some symbols from GT2003 to CommonXabsl2Symbols
00762 *  - moved some basic behaviors from GT2003 to CommonXabsl2BasicBehaviors
00763 *
00764 * cloned ATH2004 three times (BB2004, DDD2004, MSH2004)
00765 *
00766 * Revision 1.5  2003/10/24 15:01:42  loetzsch
00767 * added UNSW2003WalkingEngine
00768 *
00769 * Revision 1.3  2003/10/22 10:20:37  goehring
00770 * VoteBasedBallLocator Added
00771 *
00772 * Revision 1.2  2003/10/15 13:39:15  goehring
00773 * ATH2004BallLocator added
00774 *
00775 * Revision 1.1  2003/10/07 10:13:24  cvsadm
00776 * Created GT2004 (M.J.)
00777 *
00778 * Revision 1.13  2003/09/30 10:51:11  dueffert
00779 * typos fixed
00780 *
00781 * Revision 1.12  2003/09/30 09:36:11  juengel
00782 * Removed FusionSelfLocator.
00783 *
00784 * Revision 1.11  2003/09/27 18:40:47  loetzsch
00785 * removed AnnaSeghersSchoolDemo again
00786 *
00787 * Revision 1.10  2003/09/25 11:20:19  juengel
00788 * Removed LinesHeadControl.
00789 *
00790 * Revision 1.9  2003/09/25 10:13:21  juengel
00791 * Removed some walking engines.
00792 *
00793 * Revision 1.8  2003/09/14 17:47:38  loetzsch
00794 * added solution AnnaSeghersSchooDemo
00795 *
00796 * Revision 1.7  2003/09/01 15:19:01  juengel
00797 * SolutionRequest clean-up.
00798 *
00799 * Revision 1.6  2003/07/30 14:56:25  dueffert
00800 * walk evolution agent added
00801 *
00802 * Revision 1.5  2003/07/24 13:58:22  risler
00803 * added parameter set UNSW2003
00804 *
00805 * Revision 1.4  2003/07/07 22:45:33  thomas
00806 * added: frame for penalty-shooter agent
00807 *
00808 * Revision 1.3  2003/07/05 12:00:10  kudlacik
00809 * Added BallChallengeBallLocator
00810 *
00811 * Revision 1.2  2003/07/04 10:20:06  kudlacik
00812 * Added BallChallangeHeadControl
00813 *
00814 * Revision 1.1.1.1  2003/07/02 09:40:29  cvsadm
00815 * created new repository for the competitions in Padova from the 
00816 * tamara CVS (Tuesday 2:00 pm)
00817 *
00818 * removed unused solutions
00819 *
00820 * Revision 1.88  2003/06/24 10:11:21  jhoffman
00821 * added new ball locator
00822 *
00823 * Revision 1.87  2003/06/23 13:36:22  loetzsch
00824 * renamed GT2003 Agent turn-and-kick-test to kick-test
00825 *
00826 * Revision 1.86  2003/06/14 21:45:47  roefer
00827 * GT2003 walking parameters redesign
00828 *
00829 * Revision 1.85  2003/06/13 17:03:08  juengel
00830 * Added challenge agents and options.
00831 *
00832 * Revision 1.84  2003/06/12 21:42:27  roefer
00833 * GT2003 walking parameters finished
00834 *
00835 * Revision 1.83  2003/06/09 19:59:05  roefer
00836 * GT2003 walking engine parameters added
00837 *
00838 * Revision 1.82  2003/06/06 10:55:18  dueffert
00839 * demo agent added
00840 *
00841 * Revision 1.81  2003/06/02 09:07:49  loetzsch
00842 * added option turn-and-kick and agent turn-and-kick-test
00843 *
00844 * Revision 1.80  2003/05/27 15:36:42  juengel
00845 * Added HUGO2003HeadControl.
00846 *
00847 * Revision 1.79  2003/05/27 15:32:06  loetzsch
00848 * added agent manual-kick
00849 *
00850 * Revision 1.78  2003/05/26 13:14:52  brunn
00851 * Fusion2003SelfLocator added
00852 *
00853 * Revision 1.77  2003/05/22 07:53:05  roefer
00854 * GT2003SelfLocator added
00855 *
00856 * Revision 1.76  2003/05/20 15:52:42  deutsch
00857 * Added GridImageProcessorTSL.
00858 *
00859 * Revision 1.75  2003/05/15 15:24:37  risler
00860 * added agent obstacle-avoider
00861 *
00862 * Revision 1.74  2003/05/14 13:08:38  risler
00863 * removed DefaultObstaclesLocator
00864 * renamed MicroSectorsObstaclesLocator to DefaultObstaclesLocator
00865 * ObstaclesModel contains increased number of sectors
00866 * DefaultObstaclesLocator clean up
00867 *
00868 * Revision 1.73  2003/05/07 17:00:49  goehring
00869 * Added new walking solution 'Swing'
00870 *
00871 * Revision 1.72  2003/05/06 16:02:31  loetzsch
00872 * added agent free-part-of-opponent-goal-test
00873 *
00874 * Revision 1.71  2003/05/06 13:52:31  pruente
00875 * added collective-soccer agent
00876 *
00877 * Revision 1.70  2003/05/03 15:14:03  loetzsch
00878 * GT2003BehaviorControl first draft
00879 *
00880 * Revision 1.69  2003/05/01 17:09:10  loetzsch
00881 * Redesign of ball modeling:
00882 * - Modularized class BallP_osition
00883 * - splitted up module "BallLocator" into "BallLocator" for modeling of percepts
00884 *   and "TeamBallLocator" for modelling communicated positions
00885 * - Removed solution JumpingBallLocator
00886 * - Splitted Solution DefaultBallLocator into DefaultBallLocator and DefaultTeamBallLocator
00887 * - Renamed SensorFusionBallLocator to GaussBellTeamBallLocator
00888 *
00889 * Revision 1.68  2003/05/01 12:56:27  roefer
00890 * Names of ImageProcessor solutions shortend
00891 *
00892 * Revision 1.67  2003/04/25 19:50:17  goehring
00893 * Added new module CollisionDetector
00894 *
00895 * Revision 1.66  2003/04/16 14:01:31  loetzsch
00896 * removed Xabsl 1 from GT2003
00897 *
00898 * Revision 1.65  2003/04/16 07:00:17  roefer
00899 * Bremen GO checkin
00900 *
00901 * Revision 1.64  2003/04/15 17:19:44  risler
00902 * moved DDDGO2003 ImageProcessor to own module
00903 * removed ContinuousBasicBehaviorTester
00904 *
00905 * Revision 1.63  2003/04/15 15:52:07  risler
00906 * DDD GO 2003 code integrated
00907 *
00908 * Revision 1.61  2003/04/09 16:22:56  max
00909 * added continuous-test agent
00910 *
00911 * Revision 1.59  2003/04/05 17:02:40  max
00912 * added localization-test agent
00913 * added tailcontrol option
00914 *
00915 * Revision 1.62  2003/04/14 16:18:26  loetzsch
00916 * ATH after GermanOpen CVS merge
00917 * added penalty player
00918 *
00919 * Revision 1.2  2003/04/13 12:36:10  juengel
00920 * Added penalty player.
00921 *
00922 * Revision 1.1.1.1  2003/04/09 14:23:19  loetzsch
00923 * started Aibo Team Humboldt's GermanOpen CVS
00924 *
00925 * Revision 1.61  2003/04/04 17:18:44  juengel
00926 * AddedHUGO2003ImageProcessor
00927 *
00928 * Revision 1.60  2003/04/04 09:35:01  jhoffman
00929 * added obstacle locator
00930 *
00931 * Revision 1.59  2003/03/31 22:00:18  roefer
00932 * LinesHeadControl added
00933 *
00934 * Revision 1.58  2003/03/31 14:57:28  jhoffman
00935 * added "GT2003HeadControl" and put some head control stuff
00936 * in the parent class "HeadControl"; "GT2003HeadConrol" subsumes
00937 * "GT2002H..."
00938 *
00939 * Revision 1.57  2003/03/31 14:16:21  hebbel
00940 * Walking parameters for turning with ball added
00941 *
00942 * Revision 1.56  2003/03/30 14:10:27  juengel
00943 * Added BarCodeSwitcher
00944 *
00945 * Revision 1.55  2003/03/29 23:06:44  loetzsch
00946 * added class SelfLocatorSwitcher
00947 *
00948 * Revision 1.54  2003/03/29 12:52:32  mkunz
00949 * GO2003PlayersLocator added
00950 *
00951 * Revision 1.53  2003/03/25 08:47:12  dasmuli
00952 * Added simple segmentation and the 180/360 memory. Dialog was changed in order to display segemented data.
00953 *
00954 * Revision 1.52  2003/03/18 16:51:53  osterhues
00955 * Typo corrected
00956 *
00957 * Revision 1.51  2003/03/12 22:26:23  roefer
00958 * LinesImageProcessor2 added
00959 *
00960 * Revision 1.50  2003/03/12 13:46:04  dasmuli
00961 * PlayersPerceptor added to cognition, modules.cfg, DebugKey-table etc.
00962 *
00963 * Revision 1.49  2003/03/12 12:14:12  risler
00964 * added DDD-walk-test
00965 *
00966 * Revision 1.48  2003/03/10 14:00:52  juengel
00967 * Added ObstaclesLocator
00968 *
00969 * Revision 1.47  2003/03/05 14:07:10  roefer
00970 * LinesPerceptor2 is now LinesImageProcessor
00971 *
00972 * Revision 1.46  2003/03/05 10:35:03  jhoffman
00973 * added PIDSmoothedBallLocator
00974 *
00975 * Revision 1.45  2003/03/04 15:07:53  osterhues
00976 * Changed GridImageProcessorDo to GridImageProcessor3
00977 *
00978 * Revision 1.44  2003/03/03 17:35:08  risler
00979 * added CMUClone parameter set
00980 *
00981 * Revision 1.43  2003/02/27 10:06:59  schmidt
00982 * Added three variants of a SensorFusionPlayersLocator.
00983 *
00984 * Revision 1.42  2003/02/24 14:48:17  kallnik
00985 * some bugs in continuousbasicbehaviors fixed
00986 *
00987 * Revision 1.41  2003/02/19 16:55:17  hebbel
00988 * Added evolved parameterset for InvKinWalkingEngine
00989 *
00990 * Revision 1.40  2003/02/19 15:01:23  roefer
00991 * LinesPerceptor2 added
00992 *
00993 * Revision 1.39  2003/02/14 14:34:02  wachter
00994 * Added SensorFusionBallLocator
00995 *
00996 * Revision 1.38  2003/02/07 16:42:26  dueffert
00997 * Bombay stuff added after cleanup
00998 *
00999 * Revision 1.37  2003/01/30 18:26:49  jhoffman
01000 * added ObstacleAvoider
01001 *
01002 * Revision 1.36  2003/01/30 13:16:49  loetzsch
01003 * Redesign of class BallP_osition
01004 *
01005 * Revision 1.35  2003/01/23 16:44:10  risler
01006 * only one instance of InvKinWalkingEngine
01007 * parameter sets can now be switched while walking
01008 * added UNSWFastTurn, combining two parameter sets
01009 *
01010 * Revision 1.34  2003/01/23 15:22:30  dueffert
01011 * new xabsl2 agent added
01012 *
01013 * Revision 1.33  2003/01/22 15:02:12  dueffert
01014 * checkerboard stuff added
01015 *
01016 * Revision 1.32  2003/01/22 13:08:11  juengel
01017 * Added getXabsl2BehaviorControlFileID()
01018 *
01019 * Revision 1.31  2003/01/21 18:10:12  risler
01020 * added agent simple-follow-ball
01021 *
01022 * Revision 1.30  2003/01/20 12:20:34  juengel
01023 * Added BremenBytersBehaviorControl
01024 * and RuhrpottHellhoundsBehaviorControl.
01025 *
01026 * Revision 1.29  2003/01/20 08:14:17  loetzsch
01027 * added xabsl2BehaviorControlID to the solutionRequest to distinct between the
01028 * different Xabsl2BehaviorControls
01029 *
01030 * Revision 1.28  2003/01/19 22:57:09  loetzsch
01031 * cloned Humboldt2003BehaviorControl to
01032 * DarmstadtDribblingDackelsBehaviorControl
01033 *
01034 * Revision 1.27  2003/01/19 13:04:52  loetzsch
01035 * xabsl2 agents now can be changed by using the Module and SolutionRequest
01036 * mechanism
01037 *
01038 * Revision 1.26  2003/01/18 17:45:59  risler
01039 * added upsideDown parameters
01040 *
01041 * Revision 1.25  2003/01/12 15:24:47  juengel
01042 * Added OdometrySelfLocator
01043 *
01044 * Revision 1.24  2003/01/09 14:05:05  jhoffman
01045 * added invkin parameter set
01046 *
01047 * Revision 1.23  2003/01/03 17:21:27  deutsch
01048 * added class GridmageProcesserDo
01049 *
01050 * Revision 1.22  2002/12/20 13:50:54  dueffert
01051 * CMU2002WalkingEngine added
01052 *
01053 * Revision 1.21  2002/12/05 11:58:37  goehring
01054 * danielTest added
01055 *
01056 * Revision 1.20  2002/11/30 19:17:50  juengel
01057 * Moved BehaviorControl solution Xabsl2Berlin to Humboldt2003.
01058 *
01059 * Revision 1.19  2002/11/28 14:47:17  jhoffman
01060 * added motion detector
01061 *
01062 * Revision 1.18  2002/11/27 23:58:59  mkunz
01063 * FusionSelfLocator added
01064 *
01065 * Revision 1.17  2002/11/27 13:47:50  dueffert
01066 * doxygen docu corrected
01067 *
01068 * Revision 1.16  2002/11/26 14:17:08  juengel
01069 * GridImageProcessor2 added.
01070 *
01071 * Revision 1.15  2002/11/25 14:49:57  jhoffman
01072 * added motion detector
01073 *
01074 * Revision 1.14  2002/11/20 15:46:27  juengel
01075 * PathPlanner added.
01076 *
01077 * Revision 1.13  2002/11/19 15:43:04  dueffert
01078 * doxygen comments corrected
01079 *
01080 * Revision 1.12  2002/11/18 19:24:16  juengel
01081 * Line Follower added.
01082 *
01083 * Revision 1.11  2002/11/18 17:13:45  loetzsch
01084 * Added a new BehaviorControl solution: Xabsl2BerlinBehaviorControl
01085 * When it works, it shall be cloned to the BehaviorControl solutions for
01086 * the other univiersities
01087 *
01088 * Revision 1.10  2002/11/09 11:22:51  risler
01089 * added errorWhileReading flag to SolutionRequest
01090 *
01091 * Revision 1.9  2002/11/07 17:30:10  loetzsch
01092 * renamed Module SensorDataToMotionRequest to SensorBehaviorControl
01093 *
01094 * Revision 1.8  2002/10/10 13:31:16  jhoffman
01095 * added ISL stuff
01096 *
01097 * Revision 1.7  2002/10/10 13:09:49  loetzsch
01098 * First experiments with the PSD Sensor
01099 * - SensorDataProcessor now calculates PSDPercept
01100 * - Added the PerceptBehaviorControl solution PSDTest
01101 * - Added the RadarViewer3D to RobotControl, which can display the Points3D structure
01102 *
01103 * Revision 1.6  2002/09/25 10:25:13  loetzsch
01104 * removed the "executeVisionModules" variable
01105 * from SolutionRequest and ModuleHandler.
01106 *
01107 * Revision 1.5  2002/09/24 16:28:20  risler
01108 * preparation for reading default module solutions from file
01109 *
01110 * Revision 1.4  2002/09/22 18:40:55  risler
01111 * added new math functions, removed GTMath library
01112 *
01113 * Revision 1.3  2002/09/11 00:06:59  loetzsch
01114 * continued change of module/solution mechanisms
01115 *
01116 * Revision 1.2  2002/09/10 17:53:26  loetzsch
01117 * First draft of new Module/Solution Architecture
01118 *
01119 * Revision 1.1  2002/09/10 15:53:59  cvsadm
01120 * Created new project GT2003 (M.L.)
01121 * - Cleaned up the /Src/DataTypes directory
01122 * - Removed challenge related source code
01123 * - Removed processing of incoming audio data
01124 * - Renamed AcousticMessage to SoundRequest
01125 *
01126 * Revision 1.21  2002/09/07 13:36:55  loetzsch
01127 * unified the vision modules into one module "ImageProcessor"
01128 * - FloodFillRLEImageProcessor, BallPerceptor, LandmarksPerceptor
01129 *   and PlayersPerceptor were are combined to the new solution
01130 *   "BlobImageProcessor"
01131 * - The GridImageProcessor and the SubPixelGradientCalculator became
01132 *   a solution of "ImageProcessor"
01133 *
01134 * Revision 1.20  2002/09/01 18:19:20  loetzsch
01135 * removed 2 walking engines
01136 *
01137 * Revision 1.19  2002/08/21 11:50:43  cesarz
01138 * GT2001PlayersPerceptor, BerlinSelfLocator, GT2001WalkingEngine,
01139 * DoWalkingEngine, FuzzyBehaviorControl, BremenGOBehaviorControl,
01140 * FuzzyBehaviortesterdlgbar and Behaviortesterdlgbar removed.
01141 *
01142 * Revision 1.18  2002/08/21 07:21:50  cesarz
01143 * EllipseHeadControl and DefaultHeadControl removed.
01144 *
01145 * Revision 1.17  2002/07/29 17:45:11  jhoffman
01146 * added braitenberg vehicle-style behavior (or actually: a "sensor data to motion request")
01147 *
01148 * Revision 1.16  2002/07/23 13:48:40  loetzsch
01149 * - new streaming classes
01150 * - removed many #include statements
01151 * - exchanged StaticQueue by MessageQueue
01152 * - new debug message handling
01153 * - general clean up
01154 *
01155 * Revision 1.15  2002/06/17 18:37:33  kspiess
01156 * sample based multi ball locator added
01157 *
01158 * Revision 1.14  2002/06/17 05:06:10  risler
01159 * added FixedSequenceWalkingEngine
01160 *
01161 * Revision 1.13  2002/06/13 22:11:16  roefer
01162 * StickyBallLocator added
01163 *
01164 * Revision 1.12  2002/06/12 11:34:29  roefer
01165 * SimpleLinesPerceptor removed, PerceptBehaviorControl added
01166 *
01167 * Revision 1.11  2002/06/06 10:52:29  kspiess
01168 * distribution for multiple balls;
01169 *
01170 * Revision 1.10  2002/06/04 00:12:24  loetzsch
01171 * added == and != operator
01172 * added bool executeVisionModules
01173 *
01174 * Revision 1.9  2002/06/02 23:21:10  roefer
01175 * Single color table and progress in LinesSelfLocator
01176 *
01177 * Revision 1.8  2002/06/01 13:38:35  risler
01178 * reorganized walking engine selection
01179 *
01180 * Revision 1.7  2002/05/31 17:22:43  loetzsch
01181 * added module selector for dribble walk type
01182 *
01183 * Revision 1.6  2002/05/16 15:05:49  risler
01184 * added walk type walkWithBall
01185 *
01186 * Revision 1.5  2002/05/16 13:30:47  tim
01187 * Added BallChallengeBehavior
01188 *
01189 * Revision 1.4  2002/05/15 08:08:53  risler
01190 * changed default walk, added InvKin:Dortmund to selector
01191 *
01192 * Revision 1.3  2002/05/14 20:58:39  hebbel
01193 * added SoundInProcessor
01194 *
01195 * Revision 1.2  2002/05/13 13:09:22  juengel
01196 * GridImageProcessor is default solution now.
01197 *
01198 * Revision 1.1.1.1  2002/05/10 12:40:32  cvsadm
01199 * Moved GT2002 Project from ute to tamara.
01200 *
01201 * Revision 1.47  2002/05/06 12:57:39  tim
01202 * DefaultPlayersPerceptor is now default solution
01203 *
01204 * Revision 1.46  2002/05/04 12:43:37  loetzsch
01205 * The currently executed MotionRequest is now sent from the MotionControl
01206 * to the BehaviorControl via the OdometryData structure
01207 *
01208 * Revision 1.45  2002/05/03 16:10:20  risler
01209 * added UNSWClone InvKinWE Parameters
01210 *
01211 * Revision 1.44  2002/05/03 15:17:00  juengel
01212 * Changed default solution for HeadControl from default to GT2002.
01213 *
01214 * Revision 1.43  2002/05/03 15:03:15  loetzsch
01215 * removed berlinGT2002BehaviorControl
01216 *
01217 * Revision 1.42  2002/05/03 13:45:50  loetzsch
01218 * switched default solution from BerlinGT2001 to xabsl
01219 *
01220 * Revision 1.41  2002/05/03 11:49:23  juengel
01221 * GT2002HeadControl created.
01222 *
01223 * Revision 1.40  2002/04/29 08:36:27  risler
01224 * no message
01225 *
01226 * Revision 1.39  2002/04/26 13:35:32  risler
01227 * DarmstadtGOWalkingEngine renamed to InvKinWalkingEngine
01228 * added InvKinParameterSets
01229 *
01230 * Revision 1.38  2002/04/24 10:35:55  jhoffman
01231 * made the sub pixel thing a imagetoperceptcollection rather than an image processor
01232 *
01233 * Revision 1.37  2002/04/23 14:00:21  jhoffman
01234 * added sub pixel gradient image processor
01235 *
01236 * Revision 1.36  2002/04/18 10:25:35  roefer
01237 * Bremen GO
01238 *
01239 * Revision 1.35  2002/04/17 17:04:38  risler
01240 * Darmstadt GO
01241 *
01242 * Revision 1.34  2002/04/16 21:55:17  dueffert
01243 * a smoother head controller based on ellipses added
01244 *
01245 * Revision 1.33  2002/04/16 20:31:33  dueffert
01246 * UNSW walk added
01247 *
01248 * Revision 1.32  2002/04/15 13:39:23  rentmeister
01249 * DoWalkingEngine (Dortmunder WalkingEngine)
01250 *
01251 * Revision 1.3  2002/04/12 09:19:08  juengel
01252 * no message
01253 *
01254 * Revision 1.2  2002/04/12 07:09:05  juengel
01255 * Player Specialist added.
01256 *
01257 * Revision 1.2  2002/04/09 13:13:05  dueffert
01258 * no message
01259 *
01260 * Revision 1.31  2002/04/05 16:46:20  kosen
01261 * BremenGOWalkingEngine added
01262 *
01263 * Revision 1.30  2002/04/01 08:28:17  roefer
01264 * Dummy LinesSelfLocator added
01265 *
01266 * Revision 1.29  2002/03/29 19:36:54  risler
01267 * added DarmstadtGOWalkingEngine
01268 *
01269 * Revision 1.28  2002/03/28 17:44:22  loetzsch
01270 * renamed BerlinGermanOpenBehaviorControl to XabslBehaviorControl
01271 *
01272 * Revision 1.27  2002/03/24 17:48:04  juengel
01273 * LinesPercept defined and LinesPerceptor added.
01274 *
01275 * Revision 1.26  2002/03/21 15:17:28  koehlerj
01276 * no message
01277 *
01278 * Revision 1.25  2002/03/16 13:44:49  juengel
01279 * GridImageProcessor created.
01280 *
01281 * Revision 1.24  2002/03/12 14:31:30  jhoffman
01282 * added fourier walking engine
01283 *
01284 * Revision 1.23  2002/03/11 12:51:00  loetzsch
01285 * BerlinGermanOpenBehaviorControl added
01286 *
01287 * Revision 1.22  2002/02/21 16:28:24  risler
01288 * removed SmoothHeadControl
01289 *
01290 * Revision 1.21  2002/02/20 16:57:39  kallnik
01291 * new Headcontrol
01292 * and
01293 * new Function long abs(long)
01294 *
01295 * Revision 1.20  2002/02/20 16:40:50  risler
01296 * added GetupEngine
01297 *
01298 * Revision 1.19  2002/02/18 15:35:09  loetzsch
01299 * made MonteCarlo selflocator defaul solution for self localization
01300 *
01301 * Revision 1.18  2002/02/12 16:06:39  fischer
01302 * Added FuzzyBehaviorControl.
01303 *
01304 * Revision 1.17  2002/02/12 09:45:09  roefer
01305 * Progress in DefaultLandmarksPerceptor and MonteCarloSelfLocator
01306 *
01307 * Revision 1.16  2002/02/11 11:13:20  roefer
01308 * BallPerceptor and BallLocator inserted
01309 *
01310 * Revision 1.15  2002/02/08 19:59:55  risler
01311 * added DebugMotionControl
01312 *
01313 * Revision 1.14  2002/02/08 14:12:35  kspiess
01314 * default für selflocator auf disabled gesetzt, da montecarlo noch nicht funktioniert
01315 *
01316 * Revision 1.13  2002/02/06 16:20:48  brunn
01317 * UNSWSelfLocator entfernt - dafür gibt es jetzt den SingleLandmarkSelfLocator
01318 *
01319 * Revision 1.12  2002/02/05 22:41:25  risler
01320 * SimpleRunToBall added
01321 *
01322 * Revision 1.11  2002/02/05 03:43:22  loetzsch
01323 * added a few new module selectors
01324 *
01325 * Revision 1.10  2002/02/01 20:45:42  kosen
01326 * Bremen2001HeadControl removed
01327 *
01328 * Revision 1.9  2002/01/31 19:41:24  risler
01329 * ImageProcessorSelector added
01330 *
01331 * Revision 1.8  2002/01/25 21:30:44  kosen
01332 * Bremen2001HeadControl added
01333 *
01334 * Revision 1.7  2002/01/22 00:08:00  loetzsch
01335 * Warnings for meaningless static const int ....() functions fixed
01336 *
01337 * Revision 1.6  2002/01/20 13:00:18  risler
01338 * changed implementation of selecting default solution
01339 *
01340 * Revision 1.5  2002/01/19 21:36:24  risler
01341 * added HeadMotionTester, HeadControlSelector
01342 *
01343 * Revision 1.4  2002/01/19 12:43:16  risler
01344 * enabled SolutionRequest, changed HandleDebugMessage calls
01345 *
01346 * Revision 1.3  2002/01/18 14:00:07  risler
01347 * BehaviorControlSelector added
01348 *
01349 * Revision 1.2  2002/01/17 14:35:48  risler
01350 * SolutionRequest added
01351 *
01352 */
01353 

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