Realistic 3D camera system
3D camera system components
steady_timer.hpp
Go to the documentation of this file.
1 //
2 // steady_timer.hpp
3 // ~~~~~~~~~~~~~~~~
4 //
5 // Copyright (c) 2003-2015 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6 //
7 // Distributed under the Boost Software License, Version 1.0. (See accompanying
8 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9 //
10 
11 #ifndef ASIO_STEADY_TIMER_HPP
12 #define ASIO_STEADY_TIMER_HPP
13 
14 #if defined(_MSC_VER) && (_MSC_VER >= 1200)
15 # pragma once
16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
17 
18 #include "asio/detail/config.hpp"
19 
20 #if defined(ASIO_HAS_STD_CHRONO) \
21  || defined(ASIO_HAS_BOOST_CHRONO) \
22  || defined(GENERATING_DOCUMENTATION)
23 
24 #if defined(ASIO_HAS_STD_CHRONO)
25 # include <chrono>
26 #elif defined(ASIO_HAS_BOOST_CHRONO)
27 # include <boost/chrono/system_clocks.hpp>
28 #endif
29 
31 
32 namespace asio {
33 
34 #if defined(GENERATING_DOCUMENTATION)
35 
44 typedef basic_waitable_timer<chrono::steady_clock> steady_timer;
45 #elif defined(ASIO_HAS_STD_CHRONO)
46 # if defined(ASIO_HAS_STD_CHRONO_MONOTONIC_CLOCK)
47 typedef basic_waitable_timer<std::chrono::monotonic_clock> steady_timer;
48 # else // defined(ASIO_HAS_STD_CHRONO_MONOTONIC_CLOCK)
49 typedef basic_waitable_timer<std::chrono::steady_clock> steady_timer;
50 # endif // defined(ASIO_HAS_STD_CHRONO_MONOTONIC_CLOCK)
51 #elif defined(ASIO_HAS_BOOST_CHRONO)
52 typedef basic_waitable_timer<boost::chrono::steady_clock> steady_timer;
53 #endif
54 
55 } // namespace asio
56 
57 #endif // defined(ASIO_HAS_STD_CHRONO)
58  // || defined(ASIO_HAS_BOOST_CHRONO)
59  // || defined(GENERATING_DOCUMENTATION)
60 
61 #endif // ASIO_STEADY_TIMER_HPP