00001 #if !defined(__HELPREQUEST_HPP)
00002 #define __HELPREQUEST_HPP
00003
00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022
00023
00024
00025 #if !defined(__COMMON_HPP)
00026 #include <corelinux/Common.hpp>
00027 #endif
00028
00029 #if !defined(__REQUEST_HPP)
00030 #include <corelinux/Request.hpp>
00031 #endif
00032
00034
00035 DECLARE_TYPE( CORELINUX( Int ), HelpTopic );
00036
00037 const HelpTopic UNKNOWN_HELP(-1);
00038 const HelpTopic REQUEST_HELP(1);
00039 const HelpTopic HANDLER_HELP(2);
00040
00041
00042 DECLARE_CLASS( HelpRequest );
00043
00049 class HelpRequest : public CORELINUX( Request )
00050 {
00051
00052 public:
00053
00054
00055
00056
00057
00059
00060 HelpRequest( HelpTopicCref );
00061
00063
00064 HelpRequest( HelpRequestCref );
00065
00067
00068 virtual ~HelpRequest( void );
00069
00070
00071
00072
00073
00074
00076
00077 HelpRequestRef operator=( HelpRequestCref );
00078
00080
00081 bool operator==( HelpRequestCref ) const;
00082
00084
00085 bool operator==( HelpTopicCref ) const;
00086
00087
00088
00089
00090
00092
00093 inline bool wasHandled( void ) const
00094 {
00095 return theHandledFlag;
00096 }
00097
00099
00100 inline operator HelpTopicCref( void ) const
00101 {
00102 return theRequestType;
00103 }
00104
00105
00106
00107
00108
00110
00111 void setHandled( void );
00112
00113
00114 protected:
00115
00117
00118 HelpRequest( void )
00119 throw ( CORELINUX(Assertion) );
00120
00121 private:
00123
00124 bool theHandledFlag;
00125
00127
00128 HelpTopic theRequestType;
00129
00130 };
00131
00132 #endif // if !defined(__HELPREQUEST_HPP)
00133
00134 00135 00136 00137 00138 00139 00140
00141