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: 2024-11-21 22:18:42 Functions: 2 2 100.0 %

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

Generated by: LCOV version 1.14