欢迎来到虫虫下载站 | 资源下载 资源专辑 关于我们
虫虫下载站

progress_monitor.ipp

Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
IPP
字号:
//  (C) Copyright Gennadiy Rozental 2005-2008.//  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)//  See http://www.boost.org/libs/test for the library home page.////  File        : $RCSfile$////  Version     : $Revision: 49312 $////  Description : implements simple text based progress monitor// ***************************************************************************#ifndef BOOST_TEST_PROGRESS_MONITOR_IPP_020105GER#define BOOST_TEST_PROGRESS_MONITOR_IPP_020105GER// Boost.Test#include <boost/test/progress_monitor.hpp>#include <boost/test/unit_test_suite_impl.hpp>// Boost#include <boost/progress.hpp>#include <boost/scoped_ptr.hpp>#include <boost/test/detail/suppress_warnings.hpp>//____________________________________________________________________________//namespace boost {namespace unit_test {// ************************************************************************** //// **************                progress_monitor              ************** //// ************************************************************************** //namespace {struct progress_monitor_impl {    // Constructor    progress_monitor_impl()    : m_stream( &std::cout )    {}    std::ostream*                m_stream;    scoped_ptr<progress_display> m_progress_display;};progress_monitor_impl& s_pm_impl() { static progress_monitor_impl the_inst; return the_inst; }} // local namespace//____________________________________________________________________________//voidprogress_monitor_t::test_start( counter_t test_cases_amount ){    s_pm_impl().m_progress_display.reset( new progress_display( test_cases_amount, *s_pm_impl().m_stream ) );}//____________________________________________________________________________//voidprogress_monitor_t::test_aborted(){    (*s_pm_impl().m_progress_display) += s_pm_impl().m_progress_display->count();}//____________________________________________________________________________//voidprogress_monitor_t::test_unit_finish( test_unit const& tu, unsigned long ){    if( tu.p_type == tut_case )        ++(*s_pm_impl().m_progress_display);}//____________________________________________________________________________//voidprogress_monitor_t::test_unit_skipped( test_unit const& tu ){    test_case_counter tcc;    traverse_test_tree( tu, tcc );        (*s_pm_impl().m_progress_display) += tcc.p_count;}//____________________________________________________________________________//voidprogress_monitor_t::set_stream( std::ostream& ostr ){    s_pm_impl().m_stream = &ostr;}//____________________________________________________________________________//    } // namespace unit_test} // namespace boost//____________________________________________________________________________//#include <boost/test/detail/enable_warnings.hpp>#endif // BOOST_TEST_PROGRESS_MONITOR_IPP_020105GER

⌨️ 快捷键说明

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