WvStreams
IServiceManager.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2  *
3  * XPLC - Cross-Platform Lightweight Components
4  * Copyright (C) 2000-2002, Pierre Phaneuf
5  * Copyright (C) 2002, Net Integration Technologies, Inc.
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public License
9  * as published by the Free Software Foundation; either version 2.1 of
10  * the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20  * USA
21  */
22 
23 #ifndef __XPLC_ISERVICEMANAGER_H__
24 #define __XPLC_ISERVICEMANAGER_H__
25 
26 #if defined(__GNUC__) && __GNUC__ > 3
27 # pragma GCC system_header
28 #endif
29 
35 #include <xplc/IObject.h>
36 #include <xplc/IServiceHandler.h>
37 
60 public:
64  virtual void addHandler(IServiceHandler*) = 0;
65 
69  virtual void addFirstHandler(IServiceHandler*) = 0;
70 
74  virtual void addLastHandler(IServiceHandler*) = 0;
75 
78  virtual void removeHandler(IServiceHandler*) = 0;
79 };
80 
82 DEFINE_IID(IServiceManager, {0x22bdabd9, 0xa63a, 0x4b5e,
83  {0xb1, 0x61, 0xb6, 0x36, 0x52, 0x27, 0xd7, 0x8e}});
84 
85 #endif /* __XPLC_ISERVICEMANAGER_H__ */
IServiceManager
Definition: IServiceManager.h:58
IServiceManager::addFirstHandler
virtual void addFirstHandler(IServiceHandler *)=0
Register a handler to be handled by this manager, explicitly adding it to the beginning of the list (...
IServiceManager::removeHandler
virtual void removeHandler(IServiceHandler *)=0
Remove a handler from the list.
UNSTABLE_INTERFACE
#define UNSTABLE_INTERFACE
Used to mark an interface as unstable.
Definition: IObject.h:46
IObject.h
IServiceManager::addLastHandler
virtual void addLastHandler(IServiceHandler *)=0
Register a handler to be handled by this manager, explicitly adding it to the end of the list (lowest...
IServiceHandler
Definition: IServiceHandler.h:43
DEFINE_IID
DEFINE_IID(IServiceManager, {0x22bdabd9, 0xa63a, 0x4b5e, {0xb1, 0x61, 0xb6, 0x36, 0x52, 0x27, 0xd7, 0x8e}})
IServiceManager's IID.
IServiceHandler.h
IServiceManager::addHandler
virtual void addHandler(IServiceHandler *)=0
Register a handler to be handled by this manager.