source: XIOS/dev/branch_openmp/src/indent_xml.hpp @ 1465

Last change on this file since 1465 was 1460, checked in by yushan, 6 years ago

branch_openmp merged with XIOS_DEV_CMIP6@1459

  • 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.3 KB
Line 
1#ifndef __XIOS_CIndent_XML__
2#define __XIOS_CIndent_XML__
3
4/// XIOS headers ///
5#include "xios_spl.hpp"
6#include "xml_node.hpp"
7
8namespace xios
9{
10   /// ////////////////////// Déclarations ////////////////////// ///
11   class CIndent
12   {
13      public :
14
15         /// Méthodes statiques ///
16         static StdOStream & NIndent  (StdOStream & out);
17         static StdOStream & IncIndent(StdOStream & out);
18         static StdOStream & DecEndl  (StdOStream & out);
19
20      private :
21
22         /// Propriétés  statiques ///
23         static unsigned int Indent;
24         #pragma omp threadprivate(Indent)
25         static StdString    Increm;
26         #pragma omp threadprivate(Increm)
27         static bool         WithLine;
28         #pragma omp threadprivate(WithLine)
29
30   }; // class CIndent
31
32    ///--------------------------------------------------------------
33   
34   class CIndentedXml
35   {
36      public :
37
38         /// Méthode statique ///
39         static StdString Indented(const StdString & content);
40
41   }; // class CIndentedXml
42
43    ///--------------------------------------------------------------
44
45} // namespace xios
46
47   /// ////////////////////// Macros ////////////////////// ///
48   
49#define NIndent   CIndent::NIndent
50#define IncIndent CIndent::IncIndent
51#define DecEndl   CIndent::DecEndl
52
53#endif // __XIOS_CIndent__
Note: See TracBrowser for help on using the repository browser.