stabilize build system: depends, installer, boost/bdb fixes, cross targets groundwork
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
/*
|
||||
* Copyright Andrey Semashev 2007 - 2015.
|
||||
* 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)
|
||||
*/
|
||||
/*!
|
||||
* \file time_traits.hpp
|
||||
* \author Andrey Semashev
|
||||
* \date 01.12.2007
|
||||
*
|
||||
* The header contains implementation of time traits that are used in various parts of the
|
||||
* library to acquire current time.
|
||||
*/
|
||||
|
||||
#ifndef BOOST_LOG_ATTRIBUTES_TIME_TRAITS_HPP_INCLUDED_
|
||||
#define BOOST_LOG_ATTRIBUTES_TIME_TRAITS_HPP_INCLUDED_
|
||||
|
||||
#include <boost/date_time/posix_time/posix_time_types.hpp>
|
||||
#include <boost/log/detail/config.hpp>
|
||||
#include <boost/log/detail/header.hpp>
|
||||
|
||||
#ifdef BOOST_HAS_PRAGMA_ONCE
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
namespace boost {
|
||||
|
||||
BOOST_LOG_OPEN_NAMESPACE
|
||||
|
||||
namespace attributes {
|
||||
|
||||
//! Base class for time traits involving Boost.DateTime.
|
||||
struct basic_time_traits
|
||||
{
|
||||
//! Time type
|
||||
typedef posix_time::ptime time_type;
|
||||
|
||||
//! Current time source
|
||||
#if defined(BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK)
|
||||
typedef posix_time::microsec_clock clock_source;
|
||||
#else
|
||||
typedef posix_time::second_clock clock_source;
|
||||
#endif // defined(BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK)
|
||||
};
|
||||
|
||||
//! Time traits that describes UTC time acquirement via Boost.DateTime facilities
|
||||
struct utc_time_traits :
|
||||
public basic_time_traits
|
||||
{
|
||||
/*!
|
||||
* \return Current time stamp
|
||||
*/
|
||||
static time_type get_clock()
|
||||
{
|
||||
return clock_source::universal_time();
|
||||
}
|
||||
};
|
||||
|
||||
//! Time traits that describes local time acquirement via Boost.DateTime facilities
|
||||
struct local_time_traits :
|
||||
public basic_time_traits
|
||||
{
|
||||
/*!
|
||||
* \return Current time stamp
|
||||
*/
|
||||
static time_type get_clock()
|
||||
{
|
||||
return clock_source::local_time();
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace attributes
|
||||
|
||||
BOOST_LOG_CLOSE_NAMESPACE // namespace log
|
||||
|
||||
} // namespace boost
|
||||
|
||||
#include <boost/log/detail/footer.hpp>
|
||||
|
||||
#endif // BOOST_LOG_ATTRIBUTES_TIME_TRAITS_HPP_INCLUDED_
|
||||
Reference in New Issue
Block a user