Rok4Server  0.25.4
 Tout Classes Fichiers Fonctions Variables Énumérations Valeurs énumérées Pages
Fonctions membres publiques | Fonctions membres privées | Fonctions membres privées statiques | Attributs privés | Liste de tous les membres
Référence de la classe Rok4Server

Gestion du programme principal, lien entre les modules. Plus de détails...

#include <Rok4Server.h>

Graphe de collaboration de Rok4Server:
Collaboration graph

Fonctions membres publiques

ServicesConfgetServicesConf ()
std::map< std::string, Layer * > & getLayerList ()
std::map< std::string,
TileMatrixSet * > & 
getTmsList ()
std::map< std::string, Style * > & getStyleList ()
std::map< std::string,
std::vector< std::string > > & 
getWmsCapaFrag ()
std::vector< std::string > & getWmtsCapaFrag ()
DataSource * getTile (Request *request)
 Traitement d'une requête GetTile.
DataStream * WMTSGetCapabilities (Request *request)
 Traitement d'une requête GetCapabilities WMTS.
void run (sig_atomic_t signal_pending=0)
 Lancement des threads du serveur.
void initFCGI ()
 Initialise le socket FastCGI.
void killFCGI ()
 Détruit le socket FastCGI.
int getFCGISocket ()
 Retourne la représentation interne du socket FastCGI.
void setFCGISocket (int sockFCGI)
 Restaure le socket FastCGI.
void terminate ()
 Demande l'arrêt du serveur.
bool isRunning ()
 Retourne l'état du serveur.
bool isWMTSSupported ()
 Pour savoir si le server honore les requêtes WMTS.
bool isWMSSupported ()
 Pour savoir si le server honore les requêtes WMS.
 Rok4Server (int nbThread, ServicesConf &servicesConf, std::map< std::string, Layer * > &layerList, std::map< std::string, TileMatrixSet * > &tmsList, std::map< std::string, Style * > &styleList, std::string socket, int backlog, bool supportWMTS=true, bool supportWMS=true)
 Construction du serveur.
virtual ~Rok4Server ()
 Destructeur par défaut.

Fonctions membres privées

int GetDecimalPlaces (double number)
 Donne le nombre de chiffres après la virgule.
void buildWMS111Capabilities ()
 Construit les fragments invariants du getCapabilities WMS 1.1.1.
void buildWMS130Capabilities ()
 Construit les fragments invariants du getCapabilities WMS.
void buildWMTSCapabilities ()
 Construit les fragments invariants du getCapabilities WMS.
bool hasParam (std::map< std::string, std::string > &option, std::string paramName)
 Test de la présence d'un paramètre dans la requête.
std::string getParam (std::map< std::string, std::string > &option, std::string paramName)
 Récupération de la valeur d'un paramètre dans la requête.
DataStream * getMap (Request *request)
 Traitement d'une requête GetMap.
DataStream * WMSGetCapabilities (Request *request)
 Traitement d'une requête GetCapabilities WMS.
void processWMS (Request *request, FCGX_Request &fcgxRequest)
void processWMTS (Request *request, FCGX_Request &fcgxRequest)
void processRequest (Request *request, FCGX_Request &fcgxRequest)

Fonctions membres privées statiques

static void * thread_loop (void *arg)
 Boucle principale exécutée par chaque thread à l'écoute des requêtes des utilisateurs.

Attributs privés

std::vector< pthread_t > threads
 Liste des processus léger.
ResponseSender S
 Connecteur sur le flux FCGI.
bool supportWMTS
 Défini si le serveur doit honorer les requêtes WMTS.
bool supportWMS
 Défini si le serveur doit honorer les requêtes WMS.
volatile bool running
 Défini si le serveur est en cours d'éxécution.
std::string socket
 Adresse du socket d'écoute (vide si lancement géré par un tiers)
int backlog
 Profondeur de la file d'attente du socket.
int sock
 Identifiant du socket.
ServicesConf servicesConf
 Configurations globales des services.
std::map< std::string, Layer * > layerList
 Liste des couches disponibles.
std::map< std::string,
TileMatrixSet * > 
tmsList
 Liste des TileMatrixSet disponibles.
std::map< std::string, Style * > styleList
 Liste des styles disponibles.
std::map< std::string,
std::vector< std::string > > 
wmsCapaFrag
 Liste des fragments invariants de capabilities prets à être concaténés avec les infos de la requête.
std::vector< std::string > wmtsCapaFrag
 Liste des fragments invariants de capabilities prets à être concaténés avec les infos de la requête.
DataSource * notFoundError
 Erreur à retourner en cas de tuile non trouvée (http 404)

Description détaillée

Gestion du programme principal, lien entre les modules.

Auteur
Institut national de l'information géographique et forestière

Un serveur Rok4 stocke les informations de configurations des services Il définit aussi la boucle d'évènement nécessaire pour répondre aux requêtes transmises via FCGI

Documentation des fonctions membres

void Rok4Server::buildWMS111Capabilities ( )
private

Construit les fragments invariants du getCapabilities WMS 1.1.1.

Tag a remplacer par le nom du serveur

Tag à remplacer par le chemin complet avant le ?.

Tag à remplacer par la déclaration de DTD, tinyXMl ne gère pas les DTD. #HackDeLaMortQuiTue par Thibbo

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

void Rok4Server::buildWMS130Capabilities ( )
private

Construit les fragments invariants du getCapabilities WMS.

Tag a remplacer par le nom du serveur

Tag à remplacer par le chemin complet avant le ?.

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

void Rok4Server::buildWMTSCapabilities ( )
private

Construit les fragments invariants du getCapabilities WMS.

Tag à remplacer par le chemin complet avant le ?.

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

int Rok4Server::GetDecimalPlaces ( double  number)
private

Donne le nombre de chiffres après la virgule.

Paramètres
[in]argun double
Renvoie
int valeur

Voici le graphe des appelants de cette fonction :

int Rok4Server::getFCGISocket ( )
inline

Retourne la représentation interne du socket FastCGI.

Utilisé pour le rechargement de la configuration du serveur

Renvoie
la représentation interne du socket

Voici le graphe des appelants de cette fonction :

std::map<std::string, Layer*>& Rok4Server::getLayerList ( )
inline

Retourne la liste des couches

Voici le graphe des appelants de cette fonction :

DataStream * Rok4Server::getMap ( Request request)
private

Traitement d'une requête GetMap.

Paramètres
[in]requestreprésentation de la requête
Renvoie
image demandé ou un message d'erreur

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

std::string Rok4Server::getParam ( std::map< std::string, std::string > &  option,
std::string  paramName 
)
private

Récupération de la valeur d'un paramètre dans la requête.

Paramètres
[in]optionliste des paramètres
[in]paramNamenom du paramètre
Renvoie
valeur du parametre ou "" si non présent

Voici le graphe des appelants de cette fonction :

ServicesConf& Rok4Server::getServicesConf ( )
inline

Retourne la configuration des services

Voici le graphe des appelants de cette fonction :

std::map<std::string, Style*>& Rok4Server::getStyleList ( )
inline

Retourne la liste des styles

Voici le graphe des appelants de cette fonction :

DataSource * Rok4Server::getTile ( Request request)

Traitement d'une requête GetTile.

Paramètres
[in]requestreprésentation de la requête
Renvoie
image demandé ou un message d'erreur

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

std::map<std::string, TileMatrixSet*>& Rok4Server::getTmsList ( )
inline

Retourne la liste des TileMatrixSets

Voici le graphe des appelants de cette fonction :

std::map<std::string,std::vector<std::string> >& Rok4Server::getWmsCapaFrag ( )
inline

Retourne les fragments du GetCapabilities WMS

std::vector<std::string>& Rok4Server::getWmtsCapaFrag ( )
inline

Retourne les fragments du GetCapabilities WMTS

bool Rok4Server::hasParam ( std::map< std::string, std::string > &  option,
std::string  paramName 
)
private

Test de la présence d'un paramètre dans la requête.

Paramètres
[in]optionliste des paramètres
[in]paramNamenom du paramètre à tester
Renvoie
true si présent
bool Rok4Server::isRunning ( )
inline

Retourne l'état du serveur.

Renvoie
true si en fonctionnement

Voici le graphe des appelants de cette fonction :

void Rok4Server::processRequest ( Request request,
FCGX_Request &  fcgxRequest 
)
private

Sépare les requêtes de type WMS et WMTS

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

void Rok4Server::processWMS ( Request request,
FCGX_Request &  fcgxRequest 
)
private

Traite les requêtes de type WMS

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

void Rok4Server::processWMTS ( Request request,
FCGX_Request &  fcgxRequest 
)
private

Traite les requêtes de type WMTS

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

void Rok4Server::setFCGISocket ( int  sockFCGI)
inline

Restaure le socket FastCGI.

Utilisé pour le rechargement de la configuration du serveur

Paramètres
sockFCGIla représentation interne du socket

Voici le graphe des appelants de cette fonction :

void * Rok4Server::thread_loop ( void *  arg)
staticprivate

Boucle principale exécutée par chaque thread à l'écoute des requêtes des utilisateurs.

Paramètres
[in]argpointeur vers l'instance de Rok4Server
Renvoie
true si présent

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

DataStream * Rok4Server::WMSGetCapabilities ( Request request)
private

Traitement d'une requête GetCapabilities WMS.

Paramètres
[in]requestreprésentation de la requête
Renvoie
flux de la réponse

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

DataStream * Rok4Server::WMTSGetCapabilities ( Request request)

Traitement d'une requête GetCapabilities WMTS.

Paramètres
[in]requestreprésentation de la requête
Renvoie
flux de la réponse

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :


La documentation de cette classe a été générée à partir des fichiers suivants :