test
test_fcl_profiler.cpp
Go to the documentation of this file.
1
/*
2
* Software License Agreement (BSD License)
3
*
4
* Copyright (c) 2011-2014, Willow Garage, Inc.
5
* Copyright (c) 2014-2016, Open Source Robotics Foundation
6
* Copyright (c) 2016, Toyota Research Institute
7
* All rights reserved.
8
*
9
* Redistribution and use in source and binary forms, with or without
10
* modification, are permitted provided that the following conditions
11
* are met:
12
*
13
* * Redistributions of source code must retain the above copyright
14
* notice, this list of conditions and the following disclaimer.
15
* * Redistributions in binary form must reproduce the above
16
* copyright notice, this list of conditions and the following
17
* disclaimer in the documentation and/or other materials provided
18
* with the distribution.
19
* * Neither the name of Open Source Robotics Foundation nor the names of its
20
* contributors may be used to endorse or promote products derived
21
* from this software without specific prior written permission.
22
*
23
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
27
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
28
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
29
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
31
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
33
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34
* POSSIBILITY OF SUCH DAMAGE.
35
*/
36
39
#include <gtest/gtest.h>
40
#include "
fcl/common/profiler.h
"
41
42
using namespace
fcl
;
43
44
//==============================================================================
45
GTEST_TEST
(FCL_PROFILER, basic)
46
{
47
detail::Profiler::Start
();
48
{
49
detail::Profiler::Begin
(
"Section 1"
);
50
{
51
std::this_thread::sleep_for(std::chrono::milliseconds(500));
52
53
detail::Profiler::Begin
(
"Section 1.1"
);
54
{
55
std::this_thread::sleep_for(std::chrono::milliseconds(500));
56
}
57
detail::Profiler::End
(
"Section 1.1"
);
58
59
}
60
detail::Profiler::End
(
"Section 1"
);
61
62
detail::Profiler::Begin
(
"Section 2"
);
63
{
64
std::this_thread::sleep_for(std::chrono::milliseconds(500));
65
}
66
detail::Profiler::End
(
"Section 2"
);
67
}
68
detail::Profiler::Stop
();
69
70
detail::Profiler::Status
(std::cout);
71
}
72
73
//==============================================================================
74
int
main
(
int
argc,
char
* argv[])
75
{
76
::testing::InitGoogleTest(&argc, argv);
77
return
RUN_ALL_TESTS();
78
}
fcl::detail::Profiler::Status
static void Status(std::ostream &out=std::cout, bool merge=true)
Print the status of the profiled code chunks and events. Optionally, computation done by different th...
Definition:
profiler.cpp:178
main
int main(int argc, char *argv[])
Definition:
test_fcl_profiler.cpp:74
profiler.h
GTEST_TEST
GTEST_TEST(FCL_PROFILER, basic)
Definition:
test_fcl_profiler.cpp:45
fcl::detail::Profiler::Begin
static void Begin(const std::string &name)
Begin counting time for a specific chunk of code.
Definition:
profiler.cpp:150
fcl::detail::Profiler::Start
static void Start(void)
Start counting time.
Definition:
profiler.cpp:66
fcl::detail::Profiler::End
static void End(const std::string &name)
Stop counting time for a specific chunk of code.
Definition:
profiler.cpp:156
fcl::detail::Profiler::Stop
static void Stop(void)
Stop counting time.
Definition:
profiler.cpp:72
fcl
Main namespace.
Definition:
broadphase_bruteforce-inl.h:45
fcl
Author(s):
autogenerated on Tue Dec 5 2023 03:40:49