LCOV - code coverage report
Current view: top level - ogr/ogrsf_frmts/gml - gmlregistry.h (source / functions) Hit Total Coverage
Test: gdal_filtered.info Lines: 4 4 100.0 %
Date: 2025-01-18 12:42:00 Functions: 2 2 100.0 %

          Line data    Source code
       1             : /******************************************************************************
       2             :  *
       3             :  * Project:  GML registry
       4             :  * Purpose:  GML reader
       5             :  * Author:   Even Rouault, <even dot rouault at spatialys.com>
       6             :  *
       7             :  ******************************************************************************
       8             :  * Copyright (c) 2013, Even Rouault <even dot rouault at spatialys.com>
       9             :  *
      10             :  * SPDX-License-Identifier: MIT
      11             :  ****************************************************************************/
      12             : 
      13             : #ifndef GMLREGISTRY_H_INCLUDED
      14             : #define GMLREGISTRY_H_INCLUDED
      15             : 
      16             : #include "cpl_string.h"
      17             : #include "cpl_minixml.h"
      18             : 
      19             : #include <vector>
      20             : 
      21             : class GMLRegistryFeatureType
      22             : {
      23             :   public:
      24             :     CPLString osElementName{};
      25             :     CPLString osElementValue{};
      26             :     CPLString osSchemaLocation{};
      27             :     CPLString osGFSSchemaLocation{};
      28             : 
      29             :     bool Parse(const char *pszRegistryFilename, CPLXMLNode *psNode);
      30             : };
      31             : 
      32             : class GMLRegistryNamespace
      33             : {
      34             :   public:
      35         655 :     GMLRegistryNamespace() = default;
      36             : 
      37             :     CPLString osPrefix{};
      38             :     CPLString osURI{};
      39             :     bool bUseGlobalSRSName = false;
      40             :     std::vector<GMLRegistryFeatureType> aoFeatureTypes{};
      41             : 
      42             :     bool Parse(const char *pszRegistryFilename, CPLXMLNode *psNode);
      43             : };
      44             : 
      45             : class GMLRegistry
      46             : {
      47             :     CPLString osRegistryPath{};
      48             : 
      49             :   public:
      50             :     std::vector<GMLRegistryNamespace> aoNamespaces{};
      51             : 
      52         110 :     explicit GMLRegistry(const CPLString &osRegistryPathIn)
      53         110 :         : osRegistryPath(osRegistryPathIn)
      54             :     {
      55         110 :     }
      56             : 
      57             :     bool Parse();
      58             : };
      59             : 
      60             : #endif /* GMLREGISTRY_H_INCLUDED */

Generated by: LCOV version 1.14