1/**
2 * @file    libsbml-namespace.h
3 * @brief   Defines C++ namespace of libSBML
4 * @author  Akiya Jouraku
5 *
6 * <!--------------------------------------------------------------------------
7 * This file is part of libSBML.  Please visit http://sbml.org for more
8 * information about SBML, and the latest version of libSBML.
9 *
10 * Copyright (C) 2020 jointly by the following organizations:
11 *     1. California Institute of Technology, Pasadena, CA, USA
12 *     2. University of Heidelberg, Heidelberg, Germany
13 *     3. University College London, London, UK
14 *
15 * Copyright (C) 2019 jointly by the following organizations:
16 *     1. California Institute of Technology, Pasadena, CA, USA
17 *     2. University of Heidelberg, Heidelberg, Germany
18 *
19 * Copyright (C) 2013-2018 jointly by the following organizations:
20 *     1. California Institute of Technology, Pasadena, CA, USA
21 *     2. EMBL European Bioinformatics Institute (EMBL-EBI), Hinxton, UK
22 *     3. University of Heidelberg, Heidelberg, Germany
23 *
24 * Copyright (C) 2009-2013 jointly by the following organizations:
25 *     1. California Institute of Technology, Pasadena, CA, USA
26 *     2. EMBL European Bioinformatics Institute (EMBL-EBI), Hinxton, UK
27 *
28 * Copyright (C) 2006-2008 by the California Institute of Technology,
29 *     Pasadena, CA, USA
30 *
31 * Copyright (C) 2002-2005 jointly by the following organizations:
32 *     1. California Institute of Technology, Pasadena, CA, USA
33 *     2. Japan Science and Technology Agency, Japan
34 *
35 * This library is free software; you can redistribute it and/or modify it
36 * under the terms of the GNU Lesser General Public License as published by
37 * the Free Software Foundation.  A copy of the license agreement is provided
38 * in the file named "LICENSE.txt" included with this software distribution and
39 * also available online as http://sbml.org/software/libsbml/license.html
40 *------------------------------------------------------------------------- -->
41 *
42 */
43
44#ifndef LIBSBML_NAMESPACE_H
45#define LIBSBML_NAMESPACE_H 1
46
47/*
48 *
49 * The idea of the following marcors are borrowed from
50 * Xerces-C++ XML Parser (http://xerces.apache.org/xerces-c/).
51 *
52 */
53
54/* Define to enable libSBML C++ namespace */
55#undef LIBSBML_USE_CPP_NAMESPACE
56
57
58#if defined(__cplusplus) && defined(LIBSBML_USE_CPP_NAMESPACE) && !defined(SWIG)
59  /* C++ namespace of libSBML */
60  #define LIBSBML_CPP_NAMESPACE            libsbml
61  #define LIBSBML_CPP_NAMESPACE_BEGIN      namespace LIBSBML_CPP_NAMESPACE {
62  #define LIBSBML_CPP_NAMESPACE_END        }
63  #define LIBSBML_CPP_NAMESPACE_USE        using namespace LIBSBML_CPP_NAMESPACE;
64  #define LIBSBML_CPP_NAMESPACE_QUALIFIER  LIBSBML_CPP_NAMESPACE::
65
66  namespace LIBSBML_CPP_NAMESPACE {}
67#else
68  #define LIBSBML_CPP_NAMESPACE
69  #define LIBSBML_CPP_NAMESPACE_BEGIN
70  #define LIBSBML_CPP_NAMESPACE_END
71  #define LIBSBML_CPP_NAMESPACE_USE
72  #define LIBSBML_CPP_NAMESPACE_QUALIFIER
73#endif
74
75
76#endif  /* LIBSBML_NAMESPACE_H */
77
78