00001 /** 00002 * @file SpecialVisionRequest.h 00003 * 00004 * Declaration of class SpecialVisionRequest 00005 * 00006 * @author Matthias Juengel 00007 */ 00008 00009 #ifndef __SpecialVisionRequest_h_ 00010 #define __SpecialVisionRequest_h_ 00011 00012 #include "Tools/Streams/InOut.h" 00013 00014 /** 00015 * @class SpecialVisionRequest 00016 * 00017 * Represents a request for special visons (challenges ...). 00018 */ 00019 class SpecialVisionRequest 00020 { 00021 public: 00022 00023 /** constructor */ 00024 SpecialVisionRequest(); 00025 00026 /** destructor */ 00027 ~SpecialVisionRequest(); 00028 00029 enum SpecialVisionRequests 00030 { 00031 none, 00032 barCode, 00033 autoShutter, 00034 challengeLearnOrientation, 00035 challengeFindOrientation, 00036 challengeGetOrientation, 00037 numOfSpecialVisionRequests 00038 }; 00039 00040 SpecialVisionRequests specialVisionRequest; 00041 00042 //! Returns the name of a SpecialVisionRequest. 00043 static char* getSpecialVisionRequestName(SpecialVisionRequests specialVisionRequest) 00044 { 00045 switch(specialVisionRequest) 00046 { 00047 case none: return "none"; 00048 case barCode: return "barCode"; 00049 case autoShutter: return "autoShutter"; 00050 case challengeLearnOrientation: return "challengeLearnOrientation"; 00051 case challengeFindOrientation: return "challengeFindOrientation"; 00052 case challengeGetOrientation: return "challengeGetOrientation"; 00053 default: return "undefined SpecialVisionRequest"; 00054 } 00055 }; 00056 }; 00057 00058 00059 /** 00060 * Streaming operator that reads a SpecialVisionRequest from a stream. 00061 * @param stream The stream from which is read. 00062 * @param specialVisionRequest The SpecialVisionRequest object. 00063 * @return The stream. 00064 */ 00065 In& operator>>(In& stream,SpecialVisionRequest& specialVisionRequest); 00066 00067 /** 00068 * Streaming operator that writes a SpecialVisionRequest to a stream. 00069 * @param stream The stream to write on. 00070 * @param specialVisionRequest The SpecialVisionRequest object. 00071 * @return The stream. 00072 */ 00073 Out& operator<<(Out& stream, const SpecialVisionRequest& specialVisionRequest); 00074 00075 00076 00077 #endif //__SpecialVisionRequest_h_ 00078 00079 /* 00080 * Change log : 00081 * 00082 * $Log: SpecialVisionRequest.h,v $ 00083 * Revision 1.5 2004/07/01 18:42:08 hamerla 00084 * SLAM challenge find Orientation 00085 * 00086 * Revision 1.4 2004/06/28 18:43:31 wachter 00087 * - bugfixes 00088 * 00089 * Revision 1.3 2004/06/28 12:04:23 kerdels 00090 * added a Special Vision AutoShutter... 00091 * 00092 * Revision 1.2 2004/06/28 11:54:56 wachter 00093 * Added Special-Vision classes for Challenge 00094 * 00095 * Revision 1.1.1.1 2004/05/22 17:26:03 cvsadm 00096 * created new repository GT2004_WM 00097 * 00098 * Revision 1.1 2003/10/07 10:09:36 cvsadm 00099 * Created GT2004 (M.J.) 00100 * 00101 * Revision 1.1.1.1 2003/07/02 09:40:22 cvsadm 00102 * created new repository for the competitions in Padova from the 00103 * tamara CVS (Tuesday 2:00 pm) 00104 * 00105 * removed unused solutions 00106 * 00107 * Revision 1.2 2003/01/29 10:37:21 juengel 00108 * Added BarCodeReader. 00109 * 00110 * Revision 1.1 2002/09/10 15:26:40 cvsadm 00111 * Created new project GT2003 (M.L.) 00112 * - Cleaned up the /Src/DataTypes directory 00113 * - Removed Challenge Code 00114 * - Removed processing of incoming audio data 00115 * - Renamed AcousticMessage to SoundRequest 00116 * 00117 * Revision 1.2 2002/07/23 13:32:57 loetzsch 00118 * new streaming classes 00119 * 00120 * removed many #include statements 00121 * 00122 * Revision 1.1 2002/05/10 17:40:26 juengel 00123 * Added SpecialVision and SpecialPercept. 00124 * 00125 * 00126 */