MCPcopy Index your code
hub / github.com/MapServer/MapServer / msSLDGenerateSLDLayer

Function msSLDGenerateSLDLayer

mapogcsld.c:4249–4525  ·  view source on GitHub ↗

/ msSLDGenerateSLDLayer */ / Genrate an SLD XML string based on the layer's classes. */ /

Source from the content-addressed store, hash-verified

4247/* Genrate an SLD XML string based on the layer's classes. */
4248/************************************************************************/
4249char *msSLDGenerateSLDLayer(layerObj *psLayer, int nVersion)
4250{
4251#if defined(USE_WMS_SVR) || defined (USE_WFS_SVR) || defined (USE_WCS_SVR) || defined(USE_SOS_SVR)
4252
4253#ifdef USE_OGR
4254 char szTmp[100];
4255 char *pszTmpName = NULL;
4256 int i, j;
4257 styleObj *psStyle = NULL;
4258 char *pszFilter = NULL;
4259 char *pszFinalSLD = NULL;
4260 char *pszSLD = NULL;
4261 const char *pszTmp = NULL;
4262 double dfMinScale =-1, dfMaxScale = -1;
4263 const char *pszWfsFilter= NULL;
4264 char *pszEncoded = NULL, *pszWfsFilterEncoded=NULL;
4265
4266
4267 if (psLayer &&
4268 (psLayer->status == MS_ON || psLayer->status == MS_DEFAULT) &&
4269 (psLayer->type == MS_LAYER_POINT ||
4270 psLayer->type == MS_LAYER_LINE ||
4271 psLayer->type == MS_LAYER_POLYGON ||
4272 psLayer->type == MS_LAYER_ANNOTATION))
4273 {
4274 snprintf(szTmp, sizeof(szTmp), "%s\n", "<NamedLayer>");
4275 pszFinalSLD = msStringConcatenate(pszFinalSLD, szTmp);
4276
4277 pszTmp = msOWSLookupMetadata(&(psLayer->metadata), "MO", "name");
4278 if (pszTmp)
4279 {
4280 pszEncoded = msEncodeHTMLEntities(pszTmp);
4281 if (nVersion > OWS_1_0_0)
4282 snprintf(szTmp, sizeof(szTmp), "<se:Name>%s</se:Name>\n", pszEncoded);
4283 else
4284 snprintf(szTmp, sizeof(szTmp), "<Name>%s</Name>\n", pszEncoded);
4285 pszFinalSLD = msStringConcatenate(pszFinalSLD, szTmp);
4286 msFree(pszEncoded);
4287 }
4288 else if (psLayer->name)
4289 {
4290 pszEncoded = msEncodeHTMLEntities(psLayer->name);
4291 pszTmpName = (char *)malloc(sizeof(char)*(strlen(pszEncoded)+100));
4292 if (nVersion > OWS_1_0_0)
4293 sprintf(pszTmpName, "<se:Name>%s</se:Name>\n", pszEncoded);
4294 else
4295 sprintf(pszTmpName, "<Name>%s</Name>\n", pszEncoded);
4296
4297
4298 msFree(pszEncoded);
4299 pszFinalSLD = msStringConcatenate(pszFinalSLD, pszTmpName);
4300 msFree(pszTmpName);
4301 pszTmpName=NULL;
4302
4303 }
4304 else
4305 {
4306 if (nVersion > OWS_1_0_0)

Callers 1

msSLDGenerateSLDFunction · 0.85

Calls 11

msStringConcatenateFunction · 0.85
msOWSLookupMetadataFunction · 0.85
msEncodeHTMLEntitiesFunction · 0.85
msFreeFunction · 0.85
msLookupHashTableFunction · 0.85
msSLDGetFilterFunction · 0.85
msSLDGenerateLineSLDFunction · 0.85
msSLDGeneratePolygonSLDFunction · 0.85
msSLDGeneratePointSLDFunction · 0.85
msSLDGenerateTextSLDFunction · 0.85
msSetErrorFunction · 0.85

Tested by

no test coverage detected