ADORe
ADORe is a modular open source software library and toolkit for decision making, planning, control and simulation of automated vehicles
gap_provider.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2017-2020 German Aerospace Center (DLR).
3  * Eclipse ADORe, Automated Driving Open Research https://eclipse.org/adore
4  *
5  * This program and the accompanying materials are made available under the
6  * terms of the Eclipse Public License 2.0 which is available at
7  * http://www.eclipse.org/legal/epl-2.0.
8  *
9  * SPDX-License-Identifier: EPL-2.0
10  *
11  * Contributors:
12  * Daniel Heß - initial implementation and API
13  ********************************************************************************/
14 #pragma once
15 
17 #include <adore/env/afactory.h>
19 
20 namespace adore
21 {
22 namespace apps
23 {
29  {
30  private:
37 
38  public:
40  laneView_(true),
41  gapsLeft_(laneView_.getLeftLaneChange()),
42  gapsRight_(laneView_.getRightLaneChange())
43  {
47  }
48  void update()
49  {
52  laneView_.update();
55  std::cout<<"left: "<<gapsLeft_.getData().size()<<std::endl;
56  std::cout<<"right: "<<gapsRight_.getData().size()<<std::endl;
59  }
60  };
61 }
62 }
63 
Definition: gap_provider.h:29
adore::env::AFactory::TGapQueueWriter * gapsRightWriter_
Definition: gap_provider.h:36
GapProvider()
Definition: gap_provider.h:39
adore::env::AFactory::TVehicleMotionStateReader * egoStateReader_
Definition: gap_provider.h:34
adore::env::LaneChangeGaps gapsLeft_
Definition: gap_provider.h:32
void update()
Definition: gap_provider.h:48
adore::env::LaneChangeGaps gapsRight_
Definition: gap_provider.h:33
adore::env::AFactory::TGapQueueWriter * gapsLeftWriter_
Definition: gap_provider.h:35
adore::env::ThreeLaneViewDecoupled laneView_
Definition: gap_provider.h:31
virtual TVehicleMotionStateReader * getVehicleMotionStateReader()=0
virtual TGapQueueWriter * getGapQueueWriterLeftLane()=0
virtual TGapQueueWriter * getGapQueueWriterRightLane()=0
static adore::env::AFactory * get()
Definition: afactory.h:236
Definition: lanechangegaps.h:49
GapQueue & getData()
Definition: lanechangegaps.h:65
void computeGaps(const adore::view::TrafficQueue &queue, const adore::env::VehicleMotionState9d &ego)
Definition: lanechangegaps.h:74
Definition: threelaneviewdecoupled.h:32
virtual adore::view::ALaneChangeView * getLeftLaneChange()
Definition: threelaneviewdecoupled.h:412
virtual adore::view::ALaneChangeView * getRightLaneChange()
Definition: threelaneviewdecoupled.h:419
void update()
Definition: threelaneviewdecoupled.h:373
Definition: com_patterns.h:68
virtual void getData(T &value)=0
Definition: com_patterns.h:97
virtual void write(const T &value)=0
virtual ALane * getTargetLane()=0
virtual const TrafficQueue & getOnLaneTraffic() const =0
x
Definition: adore_set_goal.py:30
Definition: areaofeffectconverter.h:20
This struct holds the motion state of the vehicle in 9d.
Definition: vehiclemotionstate9d.h:39