Apollo
10.0
自动驾驶开放平台
regular_interval_trigger.h
浏览该文件的文档.
1
/******************************************************************************
2
* Copyright 2019 The Apollo Authors. All Rights Reserved.
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
#pragma once
18
19
#include "modules/data/tools/smart_recorder/proto/smart_recorder_triggers.pb.h"
20
#include "
modules/data/tools/smart_recorder/trigger_base.h
"
21
22
namespace
apollo
{
23
namespace
data {
24
29
class
RegularIntervalTrigger
:
public
TriggerBase
{
30
public
:
31
RegularIntervalTrigger
();
32
33
void
Pull
(
const
cyber::record::RecordMessage
& msg)
override
;
34
bool
ShouldRestore
(
const
cyber::record::RecordMessage
& msg)
const override
{
35
return
false
;
36
};
37
38
virtual
~RegularIntervalTrigger
() =
default
;
39
40
private
:
41
// Trigger the recording every 300 seconds (5 minutes)
42
const
double
recording_interval_ = 300.0;
43
uint64_t current_recording_time_ = 0UL;
44
};
45
46
}
// namespace data
47
}
// namespace apollo
apollo::data::RegularIntervalTrigger
Definition
regular_interval_trigger.h:29
apollo::data::RegularIntervalTrigger::ShouldRestore
bool ShouldRestore(const cyber::record::RecordMessage &msg) const override
Definition
regular_interval_trigger.h:34
apollo::data::RegularIntervalTrigger::RegularIntervalTrigger
RegularIntervalTrigger()
Definition
regular_interval_trigger.cc:24
apollo::data::RegularIntervalTrigger::~RegularIntervalTrigger
virtual ~RegularIntervalTrigger()=default
apollo::data::RegularIntervalTrigger::Pull
void Pull(const cyber::record::RecordMessage &msg) override
Definition
regular_interval_trigger.cc:28
apollo::data::TriggerBase
Base class of triggers that defines interfaces
Definition
trigger_base.h:33
apollo
class register implement
Definition
arena_queue.h:37
apollo::cyber::record::RecordMessage
Basic data struct of record message.
Definition
record_message.h:34
trigger_base.h
modules
data
tools
smart_recorder
regular_interval_trigger.h