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

Representations/Perception/SpecialVisionRequest.h

Go to the documentation of this file.
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_

Generated on Mon Mar 20 22:00:04 2006 for GT2005 by doxygen 1.3.6