gps_position.hpp

来自「Boost provides free peer-reviewed portab」· HPP 代码 · 共 62 行

HPP
62
字号
#ifndef GPS_POSITION_HPP#define GPS_POSITION_HPP// Copyright Matthias Troyer// 2005. Distributed under the Boost Software License, Version// 1.0. (See accompanying file LICENSE_1_0.txt or copy at// http://www.boost.org/LICENSE_1_0.txt)#include <boost/mpi/datatype_fwd.hpp>#include <boost/mpl/and.hpp>#include <boost/serialization/export.hpp>#include <boost/shared_ptr.hpp>class gps_position{private:    friend class boost::serialization::access;    // When the class Archive corresponds to an output archive, the    // & operator is defined similar to <<.  Likewise, when the class Archive    // is a type of input archive the & operator is defined similar to >>.    template<class Archive>    void serialize(Archive & ar, const unsigned int version)    {        ar & degrees & minutes & seconds;    }    int degrees;    int minutes;    float seconds;public:    gps_position(){};    gps_position(int d, int m, float s) :        degrees(d), minutes(m), seconds(s)    {}  friend bool operator==(const gps_position& x, const gps_position& y)  {    return (x.degrees == y.degrees            && x.minutes == y.minutes            && x.seconds == y.seconds);  }  inline friend bool operator!=(const gps_position& x, const gps_position& y)  {    return !(x == y);  }};namespace boost { namespace mpi {  template <>  struct is_mpi_datatype<gps_position>   : public mpl::and_       <                 is_mpi_datatype<int>,                 is_mpi_datatype<float>           >  {};} }#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?