source: XIOS3/trunk/src/xml_parser.hpp @ 2628

Last change on this file since 2628 was 2614, checked in by ymipsl, 3 months ago
  • Permit now usage of contex_group into xml file for more modularity
  • Src path is now relative to parent file, except if path is an absolute path

YM

  • Property copyright set to
    Software name : XIOS (Xml I/O Server)
    http://forge.ipsl.jussieu.fr/ioserver
    Creation date : January 2009
    Licence : CeCCIL version2
    see license file in root directory : Licence_CeCILL_V2-en.txt
    or http://www.cecill.info/licences/Licence_CeCILL_V2-en.html
    Holder : CEA/LSCE (Laboratoire des Sciences du CLimat et de l'Environnement)
    CNRS/IPSL (Institut Pierre Simon Laplace)
    Project Manager : Yann Meurdesoif
    yann.meurdesoif@cea.fr
File size: 1.2 KB
Line 
1#ifndef __XIOS_CXMLParser__
2#define __XIOS_CXMLParser__
3
4/// XIOS headers ///
5#include "xios_spl.hpp"
6#include "exception.hpp"
7#include "cxios.hpp"
8#include "xml_node.hpp"
9
10
11namespace xios
12{
13   namespace xml
14   {
15      /// ////////////////////// Déclarations ////////////////////// ///
16      class CXMLParser
17      {
18         public :
19
20            static void ParseFile(const StdString & filename, const std::set<StdString>& parseList = std::set<StdString>());
21            static void ParseString(const StdString & xmlContent);
22            static void ParseStream(StdIStream & stream, const string& fluxId, const std::set<StdString>& parseList);
23           
24            template <class T> 
25            static void ParseInclude(const string& fluxId, T & object);
26 
27            template <class T>
28            static void ParseInclude(const string& fluxId, T & object, const std::set<StdString>& parseContextList);
29
30            static string updateIncludePath(const string& filePath) ;
31
32         private:
33            static string currentIncludePath_ ; // current include path for XML file
34      }; //class CXMLParser
35
36   }// namespace xml
37} // namespace xios
38
39#endif // __XIOS_CXMLParser__
Note: See TracBrowser for help on using the repository browser.