QGIS API Documentation
3.39.0-Master (e8f1b343c48)
Loading...
Searching...
No Matches
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
43
class
SERVER_EXPORT
QgsServiceNativeLoader
44
{
45
public
:
46
48
QgsServiceNativeLoader
() =
default
;
49
56
void
loadModules(
const
QString &modulePath,
QgsServiceRegistry
®istrar,
57
QgsServerInterface
*serverIface =
nullptr
);
58
62
void
unloadModules();
63
70
QgsServiceModule
*loadNativeModule(
const
QString &location );
71
72
73
private
:
74
typedef
QHash<QString, std::shared_ptr<QgsServiceNativeModuleEntry> > ModuleTable;
75
81
QgsServiceNativeModuleEntry
*findModuleEntry(
const
QString &path );
82
86
void
unloadModuleEntry(
QgsServiceNativeModuleEntry
*entry );
87
89
ModuleTable mModules;
90
};
91
92
#endif
93
QgsServerInterface
QgsServerInterface Class defining interfaces exposed by QGIS Server and made available to plugins.
Definition
qgsserverinterface.h:61
QgsServiceModule
Class defining the service module interface for QGIS server services.
Definition
qgsservicemodule.h:41
QgsServiceNativeLoader
Class defining the native service module loader for QGIS server services.
Definition
qgsservicenativeloader.h:44
QgsServiceNativeLoader::QgsServiceNativeLoader
QgsServiceNativeLoader()=default
Constructor.
QgsServiceNativeModuleEntry
Native module (location, the module itself and the unload function).
Definition
qgsservicenativeloader.cpp:39
QgsServiceRegistry
QgsServiceRegistry Class defining the registry manager for QGIS server services.
Definition
qgsserviceregistry.h:49
Generated on Fri Oct 4 2024 13:06:00 for QGIS API Documentation by
1.9.8