Main Page
Namespaces
Classes
Files
File List
File Members
src
timered_diagnostic_updater.cpp
Go to the documentation of this file.
1
// -*- mode: c++ -*-
2
/*********************************************************************
3
* Software License Agreement (BSD License)
4
*
5
* Copyright (c) 2014, JSK Lab
6
* All rights reserved.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions
10
* are met:
11
*
12
* * Redistributions of source code must retain the above copyright
13
* notice, this list of conditions and the following disclaimer.
14
* * Redistributions in binary form must reproduce the above
15
* copyright notice, this list of conditions and the following
16
* disclaimer in the documentation and/o2r other materials provided
17
* with the distribution.
18
* * Neither the name of the JSK Lab nor the names of its
19
* contributors may be used to endorse or promote products derived
20
* from this software without specific prior written permission.
21
*
22
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33
* POSSIBILITY OF SUCH DAMAGE.
34
*********************************************************************/
35
36
#include "
jsk_topic_tools/timered_diagnostic_updater.h
"
37
38
namespace
jsk_topic_tools
39
{
40
TimeredDiagnosticUpdater::TimeredDiagnosticUpdater
(
41
ros::NodeHandle
& nh,
42
const
ros::Duration
& timer_duration):
43
diagnostic_updater_(new
diagnostic_updater
::Updater)
44
{
45
timer_
= nh.
createTimer
(
46
timer_duration, boost::bind(
47
&
TimeredDiagnosticUpdater::timerCallback
,
48
this
,
49
_1));
50
timer_
.
stop
();
51
}
52
53
void
TimeredDiagnosticUpdater::start
()
54
{
55
timer_
.
start
();
56
}
57
58
TimeredDiagnosticUpdater::~TimeredDiagnosticUpdater
()
59
{
60
}
61
62
void
TimeredDiagnosticUpdater::setHardwareID
(
const
std::string& name)
63
{
64
diagnostic_updater_
->setHardwareID(name);
65
}
66
67
void
TimeredDiagnosticUpdater::add
(
const
std::string& name,
68
diagnostic_updater::TaskFunction
f)
69
{
70
diagnostic_updater_
->add(name, f);
71
}
72
73
// void TimeredDiagnosticUpdater::add(diagnostic_updater::DiagnosticTask task)
74
// {
75
// diagnostic_updater_->add(task);
76
// }
77
78
void
TimeredDiagnosticUpdater::update
()
79
{
80
diagnostic_updater_
->update();
81
}
82
83
void
TimeredDiagnosticUpdater::timerCallback
(
const
ros::TimerEvent
& event)
84
{
85
update
();
86
}
87
88
}
ros::NodeHandle
jsk_topic_tools::TimeredDiagnosticUpdater::add
virtual void add(const std::string &name, diagnostic_updater::TaskFunction f)
Definition:
timered_diagnostic_updater.cpp:67
jsk_topic_tools::TimeredDiagnosticUpdater::diagnostic_updater_
boost::shared_ptr< diagnostic_updater::Updater > diagnostic_updater_
Definition:
timered_diagnostic_updater.h:66
jsk_topic_tools::TimeredDiagnosticUpdater::TimeredDiagnosticUpdater
TimeredDiagnosticUpdater(ros::NodeHandle &nh, const ros::Duration &timer_duration)
Definition:
timered_diagnostic_updater.cpp:40
ros::Timer::stop
void stop()
ros::Timer::start
void start()
jsk_topic_tools::TimeredDiagnosticUpdater::update
virtual void update()
Definition:
timered_diagnostic_updater.cpp:78
diagnostic_updater
jsk_topic_tools::TimeredDiagnosticUpdater::setHardwareID
virtual void setHardwareID(const std::string &name)
Definition:
timered_diagnostic_updater.cpp:62
jsk_topic_tools::TimeredDiagnosticUpdater::timer_
ros::Timer timer_
Definition:
timered_diagnostic_updater.h:65
timered_diagnostic_updater.h
jsk_topic_tools
Definition:
block_nodelet.h:42
ros::NodeHandle::createTimer
Timer createTimer(Rate r, Handler h, Obj o, bool oneshot=false, bool autostart=true) const
jsk_topic_tools::TimeredDiagnosticUpdater::timerCallback
virtual void timerCallback(const ros::TimerEvent &event)
Definition:
timered_diagnostic_updater.cpp:83
jsk_topic_tools::TimeredDiagnosticUpdater::start
virtual void start()
Definition:
timered_diagnostic_updater.cpp:53
ros::Duration
diagnostic_updater::TaskFunction
boost::function< void(DiagnosticStatusWrapper &)> TaskFunction
ros::TimerEvent
jsk_topic_tools::TimeredDiagnosticUpdater::~TimeredDiagnosticUpdater
virtual ~TimeredDiagnosticUpdater()
Definition:
timered_diagnostic_updater.cpp:58
jsk_topic_tools
Author(s): Kei Okada
, Yusuke Furuta
autogenerated on Tue Feb 6 2018 03:45:19