Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:40:58

0001 // Copyright (C) 2006 Douglas Gregor <doug.gregor -at- gmail.com>.
0002 
0003 // Use, modification and distribution is subject to the Boost Software
0004 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
0005 // http://www.boost.org/LICENSE_1_0.txt)
0006 
0007 /** @file datatype_fwd.hpp
0008  *
0009  *  This header provides forward declarations for the contents of the
0010  *  header @c datatype.hpp. It is expected to be used primarily by
0011  *  user-defined C++ classes that need to specialize @c
0012  *  is_mpi_datatype.
0013  */
0014 #ifndef BOOST_MPI_DATATYPE_FWD_HPP
0015 #define BOOST_MPI_DATATYPE_FWD_HPP
0016 
0017 #include <boost/mpi/config.hpp>
0018 
0019 namespace boost { namespace mpi {
0020 
0021 template<typename T> struct is_mpi_builtin_datatype;
0022 template<typename T> struct is_mpi_integer_datatype;
0023 template<typename T> struct is_mpi_floating_point_datatype;
0024 template<typename T> struct is_mpi_logical_datatype;
0025 template<typename T> struct is_mpi_complex_datatype;
0026 template<typename T> struct is_mpi_byte_datatype;
0027 template<typename T> struct is_mpi_datatype;
0028 template<typename T> MPI_Datatype get_mpi_datatype(const T& x);
0029 template<typename T> MPI_Datatype get_mpi_datatype() 
0030                                   { return get_mpi_datatype(T());}
0031 
0032 /// a dummy data type giving MPI_PACKED as its MPI_Datatype
0033 struct packed {};
0034 } } // end namespace boost::mpi
0035 
0036 #endif // BOOST_MPI_MPI_DATATYPE_FWD_HPP