Eclipse SUMO - Simulation of Urban MObility
MSTransportableDevice.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 // Copyright (C) 2007-2024 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
20 // Abstract in-person device
21 /****************************************************************************/
22 #pragma once
23 #include <config.h>
24 
25 #include <string>
26 #include <vector>
27 #include <map>
28 #include <set>
29 #include <random>
30 #include "MSDevice.h"
31 
32 
33 // ===========================================================================
34 // class declarations
35 // ===========================================================================
36 class MSTransportable;
37 
38 
39 // ===========================================================================
40 // class definitions
41 // ===========================================================================
51 public:
57  MSTransportableDevice(MSTransportable& holder, const std::string& id) :
58  MSDevice(id), MSMoveReminder(id), myHolder(holder) {
59  }
60 
61 
63  virtual ~MSTransportableDevice() { }
64 
65 
71  return myHolder;
72  }
73 
74 protected:
77 
78 private:
81 
84 
85 };
Abstract in-vehicle / in-person device.
Definition: MSDevice.h:62
Something on a lane to be noticed about vehicle movement.
Abstract in-person device.
MSTransportable & getHolder() const
Returns the person that holds this device.
MSTransportableDevice(const MSTransportableDevice &)
Invalidated copy constructor.
MSTransportable & myHolder
The person that stores the device.
MSTransportableDevice(MSTransportable &holder, const std::string &id)
Constructor.
virtual ~MSTransportableDevice()
Destructor.
MSTransportableDevice & operator=(const MSTransportableDevice &)
Invalidated assignment operator.