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 imageBrightness 00039 }; 00040 00041 SpecialVisionRequests specialVisionRequest; 00042 00043 //! Returns the name of a SpecialVisionRequest. 00044 static char* getSpecialVisionRequestName(SpecialVisionRequests specialVisionRequest) 00045 { 00046 switch(specialVisionRequest) 00047 { 00048 case none: return "none"; 00049 case barCode: return "barCode"; 00050 case autoShutter: return "autoShutter"; 00051 case challengeLearnOrientation: return "challengeLearnOrientation"; 00052 case challengeFindOrientation: return "challengeFindOrientation"; 00053 case challengeGetOrientation: return "challengeGetOrientation"; 00054 case imageBrightness: return "estimated image brightness"; 00055 default: return "undefined SpecialVisionRequest"; 00056 } 00057 }; 00058 }; 00059 00060 00061 /** 00062 * Streaming operator that reads a SpecialVisionRequest from a stream. 00063 * @param stream The stream from which is read. 00064 * @param specialVisionRequest The SpecialVisionRequest object. 00065 * @return The stream. 00066 */ 00067 In& operator>>(In& stream,SpecialVisionRequest& specialVisionRequest); 00068 00069 /** 00070 * Streaming operator that writes a SpecialVisionRequest to a stream. 00071 * @param stream The stream to write on. 00072 * @param specialVisionRequest The SpecialVisionRequest object. 00073 * @return The stream. 00074 */ 00075 Out& operator<<(Out& stream, const SpecialVisionRequest& specialVisionRequest); 00076 00077 00078 00079 #endif //__SpecialVisionRequest_h_
1.3.6