20 #ifndef TILEDARRAY_MADNESS_H__INCLUDED 21 #define TILEDARRAY_MADNESS_H__INCLUDED 24 #ifndef WORLD_INSTANTIATE_STATIC_TEMPLATES 25 #define WORLD_INSTANTIATE_STATIC_TEMPLATES 26 #endif // WORLD_INSTANTIATE_STATIC_TEMPLATES 29 #pragma GCC diagnostic push 30 #pragma GCC system_header 31 #include <madness/world/MADworld.h> 32 #include <madness/tensor/cblas.h> 33 #pragma GCC diagnostic pop 39 using madness::Future;
49 "TiledArray::detail::default_world::get() called " 50 "before madness::initialize()");
51 world() = &madness::World::get_default();
55 static void set(World* w) {
63 static World*& world() {
64 static World* world_ =
nullptr;
82 static void set_default_world(World& world) {
87 static World& get_default_world() {
92 static void reset_default_world() {
97 auto world_resetter = [](World* w) { set_default_world(*w); };
116 static std::unique_ptr<World, decltype(world_resetter)>
117 push_default_world(World& world) {
119 set_default_world(world);
120 return std::unique_ptr<World, decltype(world_resetter)>(
121 current_world, world_resetter);
129 inline World&
initialize(
int& argc,
char**& argv,
const SafeMPI::Intracomm& comm) {
131 TiledArray::set_default_world(default_world);
132 return default_world;
139 inline World&
initialize(
int& argc,
char**& argv,
const MPI_Comm& comm) {
145 TiledArray::reset_default_world();
152 #endif // TILEDARRAY_MADNESS_H__INCLUDED static void set(World *w)
World & initialize(int &argc, char **&argv, const SafeMPI::Intracomm &comm)
#define TA_USER_ASSERT(a, m)
World & initialize(int &argc, char **&argv, const MPI_Comm &comm)