#include #include #include #include #include #include #include #include #include #include #include #include namespace SACE { namespace bu = boost::units; namespace units { namespace fds { typedef bu::make_system::type system; typedef bu::unit second; BOOST_UNITS_STATIC_CONSTANT(seconds, second); typedef bu::make_scaled_unit > >::type minute; typedef bu::quantity seconds_t; typedef bu::quantity minutes_t; typedef bu::quantity iminutes_t; BOOST_UNITS_STATIC_CONSTANT(minutes, minute); } } } namespace boost { namespace units { std::string name_string(const SACE::units::fds::second&) {return "sec";} std::string symbol_string(const SACE::units::fds::second&) {return "s";} std::string name_string(const SACE::units::fds::minute&) {return "min";} std::string symbol_string(const SACE::units::fds::minute&) {return "min";} } } namespace SACE { typedef units::fds::minute plan_tick; typedef units::fds::iminutes_t plan_tick_t; typedef units::fds::minutes_t fplan_tick_t; BOOST_UNITS_STATIC_CONSTANT(plan_ticks, plan_tick); } int main(int argc, char** argv) { SACE::plan_tick_t tick = 33 * SACE::plan_ticks; std::cout << tick << std::endl; return 0; }