hwsd  1.2.1
Local and remote ZeroConf service discovery for hardware resources.
 All Classes Files Functions Variables Enumerations Enumerator Macros
net/sys/module.h
1 
2 /* Copyright (c) 2012, Daniel Nachbaur <danielnachbaur@gmail.com>
3  * 2013, Stefan.Eilemann@epfl.ch
4  *
5  * This library is free software; you can redistribute it and/or modify it under
6  * the terms of the GNU Lesser General Public License version 2.1 as published
7  * by the Free Software Foundation.
8  *
9  * This library is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11  * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12  * details.
13  *
14  * You should have received a copy of the GNU Lesser General Public License
15  * along with this library; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17  */
18 
19 #ifndef HWSD_NET_SYS_MODULE_H
20 #define HWSD_NET_SYS_MODULE_H
21 
22 #include <hwsd/api.h>
23 #include <hwsd/module.h> // base class
24 #include <hwsd/types.h>
25 
26 namespace hwsd
27 {
28 namespace net
29 {
30 namespace sys
31 {
35  class Module : public hwsd::Module< NetInfos >
36  {
37  public:
39  static HWSD_API void use();
40 
42  static HWSD_API void dispose();
43 
44  protected:
45  virtual NetInfos discover() const;
46 
47  private:
48  Module() : NetModule() {}
49  virtual ~Module() {}
50  };
51 }
52 }
53 }
54 
55 #endif // HWSD_NET_SYS_MODULE_H
Defines export visibility macros for library hwsd.
static HWSD_API void dispose()
Unload the sys network discovery module for the process.
virtual NetInfos discover() const
Base class for runtime-attached DSOs of a query implementation.
Definition: module.h:32
static HWSD_API void use()
Instantiate the sys network discovery module for the process.
The low-level implementation for local network interface discovery.