QGIS API Documentation
3.6.0-Noosa (5873452)
src
server
qgsservicenativeloader.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsservicerenativeloader.h
3
4
Define Loader for native service modules
5
-------------------
6
begin : 2016-12-05
7
copyright : (C) 2016 by David Marteau
8
email : david dot marteau at 3liz dot com
9
***************************************************************************/
10
11
/***************************************************************************
12
* *
13
* This program is free software; you can redistribute it and/or modify *
14
* it under the terms of the GNU General Public License as published by *
15
* the Free Software Foundation; either version 2 of the License, or *
16
* (at your option) any later version. *
17
* *
18
***************************************************************************/
19
#ifndef QGSSERVICENATIVELOADER_H
20
#define QGSSERVICENATIVELOADER_H
21
22
#define SIP_NO_FILE
23
24
25
class
QgsServiceModule
;
26
class
QgsServiceRegistry
;
27
class
QgsServiceNativeModuleEntry
;
28
class
QgsServerInterface
;
29
30
#include "qgis_server.h"
31
32
#include <QHash>
33
#include <memory>
34
44
class
SERVER_EXPORT
QgsServiceNativeLoader
45
{
46
public
:
47
49
QgsServiceNativeLoader
() =
default
;
50
57
void
loadModules(
const
QString &modulePath,
QgsServiceRegistry
®istrar,
58
QgsServerInterface
*serverIface =
nullptr
);
59
63
void
unloadModules();
64
71
QgsServiceModule
*loadNativeModule(
const
QString &location );
72
73
74
private
:
75
typedef
QHash<QString, std::shared_ptr<QgsServiceNativeModuleEntry> > ModuleTable;
76
82
QgsServiceNativeModuleEntry
*findModuleEntry(
const
QString &path );
83
87
void
unloadModuleEntry(
QgsServiceNativeModuleEntry
*entry );
88
90
ModuleTable mModules;
91
};
92
93
#endif
94
QgsServiceModule
Class defining the service module interface for QGIS server services.
Definition:
qgsservicemodule.h:41
QgsServerInterface
QgsServerInterface Class defining interfaces exposed by QGIS Server and made available to plugins...
Definition:
qgsserverinterface.h:60
QgsServiceRegistry
QgsServiceRegistry Class defining the registry manager for QGIS server services.
Definition:
qgsserviceregistry.h:47
QgsServiceNativeLoader
Class defining the native service module loader for QGIS server services.
Definition:
qgsservicenativeloader.h:44
QgsServiceNativeModuleEntry
Native module (location, the module itself and the unload function).
Definition:
qgsservicenativeloader.cpp:38
Generated on Sat Feb 23 2019 03:59:22 for QGIS API Documentation by
1.8.13