/usr/include/libint2/cxxapi.h is in libint2-dev 2.3.0~beta3-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | /*
* This file is a part of Libint.
* Copyright (C) 2004-2014 Edward F. Valeev
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Library General Public License, version 2,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU Library General Public License
* along with this program. If not, see http://www.gnu.org/licenses/.
*
*/
#ifndef _libint2_src_lib_libint_cxxapi_h_
#define _libint2_src_lib_libint_cxxapi_h_
#include <libint2/util/cxxstd.h>
#if LIBINT2_CPLUSPLUS_STD < 2011
# error "Libint2 C++ API requires C++11 support"
#endif
#include <libint2.h> // NB this loads libint2/config.h
#ifdef LIBINT_USER_DEFINED_REAL
# error "C++11 API does not support with user-defined real types yet; omit --with-real-type when configuring"
#endif
#include <libint2/chemistry/elements.h>
#include <libint2/atom.h>
#include <libint2/basis.h>
#include <libint2/solidharmonics.h>
#include <libint2/util/deprecated.h>
#include <libint2/util/singleton.h>
namespace libint2 {
namespace detail {
struct __initializer {
__initializer() {
libint2_static_init();
}
~__initializer() {
libint2_static_cleanup();
}
};
} // namespace libint2::detail
inline bool initialized() {
using namespace detail;
return managed_singleton<__initializer>::instance_exists();
}
inline void initialize() {
using namespace detail;
__initializer* x = managed_singleton<__initializer>::instance();
assert(x != nullptr);
}
inline void finalize() {
using namespace detail;
managed_singleton<__initializer>::delete_instance();
}
DEPRECATED inline void init() {
initialize();
}
DEPRECATED inline void cleanup() {
finalize();
}
}
#include <libint2/engine.h> // this is the end-user stuff, needs to check if library is initialized
#endif /* _libint2_src_lib_libint_cxxapi_h_ */
|