1 // Copyright (c) 2007-2016 Hartmut Kaiser 2 // Copyright (c) 2011 Bryce Lelbach 3 // 4 // Distributed under the Boost Software License, Version 1.0. (See accompanying 5 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 7 #ifndef HPX_RUNTIME_NAMING_FWD_HPP 8 #define HPX_RUNTIME_NAMING_FWD_HPP 9 10 #include <hpx/config.hpp> 11 #include <hpx/runtime/agas_fwd.hpp> 12 13 #include <cstdint> 14 15 namespace hpx 16 { 17 /// \namespace naming 18 /// 19 /// The namespace \a naming contains all definitions needed for the AGAS 20 /// (Active Global Address Space) service. 21 namespace naming 22 { 23 typedef agas::addressing_service resolver_client; 24 25 struct HPX_EXPORT gid_type; 26 struct HPX_EXPORT id_type; 27 struct HPX_API_EXPORT address; 28 29 HPX_API_EXPORT resolver_client& get_agas_client(); 30 31 typedef std::int32_t component_type; 32 typedef std::uint64_t address_type; 33 34 HPX_CONSTEXPR_OR_CONST std::uint32_t invalid_locality_id = ~0U; 35 } 36 37 /////////////////////////////////////////////////////////////////////////// 38 // Pulling important types into the main namespace 39 using naming::id_type; 40 } 41 42 #endif 43