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

/ray/src/lib/message/handler.h

Go to the documentation of this file.
00001 /*
00002  * lib/message/handler.h
00003  * 
00004  * Message handling "system" for errors, warnings and verbose messages. 
00005  * Header for message handler class. 
00006  * 
00007  * Copyright (c) 2004 by Wolfgang Wieser ] wwieser (a) gmx <*> de [ 
00008  * 
00009  * This file may be distributed and/or modified under the terms of the 
00010  * GNU General Public License version 2 as published by the Free Software 
00011  * Foundation. (See COPYING.GPL for details.)
00012  * 
00013  * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00014  * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00015  * 
00016  */
00017 
00018 #ifndef _LIB_MESSAGE_HANDLER_H_
00019 #define _LIB_MESSAGE_HANDLER_H_ 1
00020 
00032 #include <lib/sconfig.h>    /* MUST be first */
00033 
00034 #include <lib/tl/linkedlist.h>
00035 
00036 #include <lib/message/message.h>
00037 
00038 
00039 // See manager.h. 
00040 class MessageManager;
00041 
00042 
00058 class MessageHandler : LinkedListBase<MessageHandler>
00059 {
00060     friend class MessageManager;
00061     friend class LinkedList<MessageHandler>;
00062     private:
00065         Message::Type mtmask;
00066         
00067     protected:
00079         virtual void HandleMessage(const Message &m);
00080         
00093         void SelectMessageTypes(Message::Type mask);
00094         
00095     private:
00097         MessageHandler(const MessageHandler &);
00099         void operator=(const MessageHandler &);
00100     public:
00104         MessageHandler();
00106         virtual ~MessageHandler();
00107 };
00108 
00109 #endif  /* _LIB_MESSAGE_HANDLER_H_ */

Generated on Sat Feb 19 22:33:45 2005 for Ray by doxygen 1.3.5