cartographer
common
fixed_ratio_sampler.cc
Go to the documentation of this file.
1
/*
2
* Copyright 2016 The Cartographer Authors
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#include "
cartographer/common/fixed_ratio_sampler.h
"
18
19
#include "glog/logging.h"
20
21
namespace
cartographer
{
22
namespace
common {
23
24
FixedRatioSampler::FixedRatioSampler
(
const
double
ratio) : ratio_(ratio) {
25
CHECK_GE(ratio, 0.);
26
LOG_IF(WARNING, ratio == 0.) <<
"FixedRatioSampler is dropping all data."
;
27
CHECK_LE(ratio, 1.);
28
}
29
30
FixedRatioSampler::~FixedRatioSampler
() {}
31
32
bool
FixedRatioSampler::Pulse
() {
33
++
num_pulses_
;
34
if
(static_cast<double>(
num_samples_
) /
num_pulses_
<
ratio_
) {
35
++
num_samples_
;
36
return
true
;
37
}
38
return
false
;
39
}
40
41
std::string
FixedRatioSampler::DebugString
() {
42
return
std::to_string(
num_samples_
) +
" ("
+
43
std::to_string(100. *
num_samples_
/
num_pulses_
) +
"%)"
;
44
}
45
46
}
// namespace common
47
}
// namespace cartographer
cartographer::common::FixedRatioSampler::num_pulses_
int64 num_pulses_
Definition:
fixed_ratio_sampler.h:48
cartographer::common::FixedRatioSampler::num_samples_
int64 num_samples_
Definition:
fixed_ratio_sampler.h:49
cartographer::common::FixedRatioSampler::~FixedRatioSampler
~FixedRatioSampler()
Definition:
fixed_ratio_sampler.cc:30
fixed_ratio_sampler.h
cartographer::common::FixedRatioSampler::ratio_
const double ratio_
Definition:
fixed_ratio_sampler.h:46
cartographer
Definition:
map_builder_stub.cc:31
cartographer::common::FixedRatioSampler::Pulse
bool Pulse()
Definition:
fixed_ratio_sampler.cc:32
cartographer::common::FixedRatioSampler::FixedRatioSampler
FixedRatioSampler(double ratio)
Definition:
fixed_ratio_sampler.cc:24
cartographer::common::FixedRatioSampler::DebugString
std::string DebugString()
Definition:
fixed_ratio_sampler.cc:41
cartographer
Author(s): The Cartographer Authors
autogenerated on Mon Feb 28 2022 22:00:58