octree_stamped_native_node.cpp
Go to the documentation of this file.
1 /******************************************************************************
2 * *
3 * octree_stamped_native_node.cpp *
4 * ============================== *
5 * *
6 *******************************************************************************
7 * *
8 * Repository: *
9 * https://github.com/TUC-ProAut/ros_octomap *
10 * *
11 * Chair of Automation Technology, Technische Universität Chemnitz *
12 * https://www.tu-chemnitz.de/etit/proaut *
13 * *
14 * Author: *
15 * Peter Weissig *
16 * *
17 *******************************************************************************
18 * *
19 * New BSD License *
20 * *
21 * Copyright (c) 2015-2021 TU Chemnitz *
22 * All rights reserved. *
23 * *
24 * Redistribution and use in source and binary forms, with or without *
25 * modification, are permitted provided that the following conditions are met: *
26 * * Redistributions of source code must retain the above copyright notice, *
27 * this list of conditions and the following disclaimer. *
28 * * Redistributions in binary form must reproduce the above copyright *
29 * notice, this list of conditions and the following disclaimer in the *
30 * documentation and/or other materials provided with the distribution. *
31 * * Neither the name of the copyright holder nor the names of its *
32 * contributors may be used to endorse or promote products derived from *
33 * this software without specific prior written permission. *
34 * *
35 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
36 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED *
37 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR *
38 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR *
39 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, *
40 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, *
41 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; *
42 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, *
43 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR *
44 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
45 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
46 * *
47 ******************************************************************************/
48 
49 // local headers
51 
52 // ros headers
53 #include <parameter_pa/parameter_pa_ros.h>
54 
55 // standard headers
56 #include <string>
57 
58 const std::string cOctreeStampedNativeNode::nodename_ =
59  "octree_stamped_native_node";
60 
61 //**************************[main]*********************************************
62 int main(int argc, char **argv) {
63 
66 
67  ros::spin();
68 
69  return 0;
70 }
71 
72 //**************************[cOctreeStampedNativeNode]*************************
74  TypeBase(nodename_) {
75 
76  cParameterPaRos paramloader;
77 
78  // degrading parameter
79  paramloader.load("~/degrading_time", rosparams_.degrading_time_);
80  paramloader.load("~/auto_degrading", rosparams_.auto_degrading_);
81  paramloader.load("~/auto_degrading_intervall",
83 }
84 
85 //**************************[~cOctreeStampedNativeNode]************************
87 
88 }
89 
90 
91 //**************************[getConfig]****************************************
92 octomap_pa_msgs::Config cOctreeStampedNativeNode::getConfig() {
93 
94  // init variables
95  octomap_pa_msgs::Config result;
96 
97  // call base class function
98  result = TypeBase::getConfig();
99 
100  // config for degrading (not used by default)
101  result.degrading.degrading_time = rosparams_.degrading_time_;
102  result.degrading.auto_degrading = rosparams_.degrading_time_;
103  result.degrading.auto_degrading_intervall =
105 
106  // return result
107  return result;
108 }
109 
110 //**************************[internal_node_update]*****************************
112 
113  checkDegrading();
114 }
cOctreeStampedNativeNode::nodename_
const static std::string nodename_
official node name
Definition: octree_stamped_native_node.h:122
cOctreeStampedNativeNode::getConfig
virtual octomap_pa_msgs::Config getConfig(void)
function for retrieving all current configs
Definition: octree_stamped_native_node.cpp:92
cOctreeStampedNativeNode::internal_node_update
virtual void internal_node_update(void)
virtual overload for additional updates
Definition: octree_stamped_native_node.cpp:111
cOctreeStampedPaRosParameter::auto_degrading_intervall_
double auto_degrading_intervall_
intervall for automatic degrading (2.0s)
Definition: octree_stamped_pa_ros_parameter.h:116
ros::init
ROSCPP_DECL void init(const M_string &remappings, const std::string &name, uint32_t options=0)
cOctreeStampedPaRosParameter::auto_degrading_
bool auto_degrading_
turns on automatic degrading (true)
Definition: octree_stamped_pa_ros_parameter.h:113
cOctreeStampedNativeRos::rosparams_
cOctreeStampedPaRosParameter rosparams_
parameters
Definition: octree_stamped_native_ros.h:125
cOctreeBasePaNode< cOctreeStampedNativeRos >::getConfig
virtual octomap_pa_msgs::Config getConfig(void)
function for retrieving all current configs
cOctreeStampedNativeRos::checkDegrading
void checkDegrading(void)
helper function for automatic degrading
Definition: octree_stamped_native_ros.cpp:75
main
int main(int argc, char **argv)
Definition: octree_stamped_native_node.cpp:62
cOctreeStampedNativeNode::cOctreeStampedNativeNode
cOctreeStampedNativeNode()
default constructor
Definition: octree_stamped_native_node.cpp:73
octree_stamped_native_node.h
cOctreeStampedPaRosParameter::degrading_time_
double degrading_time_
duration how long the outdated nodes will be kept (60s)
Definition: octree_stamped_pa_ros_parameter.h:110
cOctreeStampedNativeNode::~cOctreeStampedNativeNode
~cOctreeStampedNativeNode()
default destructor
Definition: octree_stamped_native_node.cpp:86
ros::spin
ROSCPP_DECL void spin()
cOctreeStampedNativeNode
Definition: octree_stamped_native_node.h:60
cOctreeBasePaNode< cOctreeStampedNativeRos >


octomap_pa
Author(s):
autogenerated on Wed Mar 2 2022 00:46:31