|
SUMO - Simulation of Urban MObility
|
#include <GUIGlObject.h>
Public Member Functions | |
| virtual void | drawGLAdditional (GUISUMOAbstractView *const parent, const GUIVisualizationSettings &s) const |
| Draws additional, user-triggered visualisations. | |
| void | drawName (const Position &pos, const SUMOReal scale, const GUIVisualizationTextSettings &settings, const SUMOReal angle=0) const |
| GUIGlObject (const std::string &prefix, GUIGlObjectType type, const std::string µsimID) | |
| Constructor. | |
| GUIGlObject (GUIGlObjectType type, const std::string µsimID) | |
| Constructor. | |
| virtual | ~GUIGlObject () |
| Destructor. | |
Atomar getter methods | |
| const std::string & | getFullName () const |
| Returns the full name appearing in the tool tip. | |
| GUIGlID | getGlID () const |
| Returns the numerical id of the object. | |
interfaces to be implemented by derived classes | |
| virtual GUIGLObjectPopupMenu * | getPopUpMenu (GUIMainWindow &app, GUISUMOAbstractView &parent)=0 |
| Returns an own popup-menu. | |
| virtual GUIParameterTableWindow * | getParameterWindow (GUIMainWindow &app, GUISUMOAbstractView &parent)=0 |
| Returns an own parameter window. | |
| const std::string & | getMicrosimID () const |
| Returns the id of the object as known to microsim. | |
| void | setMicrosimID (const std::string &newID) |
| Changes the microsimID of the object (happens in NETEDIT) | |
| GUIGlObjectType | getType () const |
| Returns the type of the object as coded in GUIGlObjectType. | |
| virtual Boundary | getCenteringBoundary () const =0 |
| Returns the boundary to which the view shall be centered in order to show the object. | |
| virtual void | drawGL (const GUIVisualizationSettings &s) const =0 |
| Draws the object. | |
Parameter table window I/O | |
| void | addParameterTable (GUIParameterTableWindow *w) |
| Lets this object know a parameter window showing the object's values was opened. | |
| void | removeParameterTable (GUIParameterTableWindow *w) |
| Lets this object know a parameter window showing the object's values was closed. | |
Static Public Attributes | |
| static StringBijection < GUIGlObjectType > | TypeNames |
| associates object types with strings | |
Protected Member Functions | |
| void | setPrefix (const std::string &prefix) |
helper methods for building popup-menus | |
| void | buildPopupHeader (GUIGLObjectPopupMenu *ret, GUIMainWindow &app, bool addSeparator=true) |
| Builds the header. | |
| void | buildCenterPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true) |
| Builds an entry which allows to center to the object. | |
| void | buildNameCopyPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true) |
| Builds entries which allow to copy the name / typed name into the clipboard. | |
| void | buildSelectionPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true) |
| Builds an entry which allows to (de)select the object. | |
| void | buildShowParamsPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true) |
| Builds an entry which allows to open the parameter window. | |
| void | buildPositionCopyEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true) |
| Builds an entry which allows to copy the cursor position if geo projection is used, also builds an entry for copying the geo-position. | |
| void | buildShowManipulatorPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true) |
| Builds an entry which allows to open the manipulator window. | |
Private Member Functions | |
| std::string | createFullName () const |
| GUIGlObject (const GUIGlObject &) | |
| Invalidated copy constructor. | |
| GUIGlObject & | operator= (const GUIGlObject &) |
| Invalidated assignment operator. | |
Private Attributes | |
| std::string | myFullName |
| GUIGlID | myGlID |
| The numerical id of the object. | |
| const GUIGlObjectType | myGLObjectType |
| The type of the object. | |
| std::string | myMicrosimID |
| std::set < GUIParameterTableWindow * > | myParamWindows |
| Parameter table windows which refer to this object. | |
| std::string | myPrefix |
Static Private Attributes | |
| static StringBijection < GUIGlObjectType >::Entry | GUIGlObjectTypeNamesInitializer [] |
Definition at line 71 of file GUIGlObject.h.
| GUIGlObject::GUIGlObject | ( | GUIGlObjectType | type, |
| const std::string & | microsimID | ||
| ) |
Constructor.
This is the standard constructor that assures that the object is known and its id is unique. Use it always :-)
| [in] | fullName | The complete name, including a type-prefix |
Definition at line 84 of file GUIGlObject.cpp.
References createFullName(), GUIGlObjectStorage::gIDStorage, myFullName, myGlID, and GUIGlObjectStorage::registerObject().
| GUIGlObject::GUIGlObject | ( | const std::string & | prefix, |
| GUIGlObjectType | type, | ||
| const std::string & | microsimID | ||
| ) |
Constructor.
This constructor should be used only for compound objects, that share visualization. Use it only if you know what you are doing.
| [in] | fullName | The complete name, including a type-prefix |
Definition at line 93 of file GUIGlObject.cpp.
References createFullName(), GUIGlObjectStorage::gIDStorage, myFullName, myGlID, and GUIGlObjectStorage::registerObject().
| GUIGlObject::~GUIGlObject | ( | ) | [virtual] |
Destructor.
Definition at line 103 of file GUIGlObject.cpp.
References getGlID(), GUIGlObjectStorage::gIDStorage, myParamWindows, and GUIGlObjectStorage::remove().
| GUIGlObject::GUIGlObject | ( | const GUIGlObject & | ) | [private] |
Invalidated copy constructor.
| void GUIGlObject::addParameterTable | ( | GUIParameterTableWindow * | w | ) |
Lets this object know a parameter window showing the object's values was opened.
| [in] | w | The opened parameter window |
Definition at line 191 of file GUIGlObject.cpp.
References myParamWindows.
| void GUIGlObject::buildCenterPopupEntry | ( | GUIGLObjectPopupMenu * | ret, |
| bool | addSeparator = true |
||
| ) | [protected] |
Builds an entry which allows to center to the object.
| in,filled] | ret The popup menu to add the entry to | |
| [in] | addSeparator | Whether a separator shall be added, too |
Definition at line 129 of file GUIGlObject.cpp.
References GUIIconSubSys::getIcon(), ICON_RECENTERVIEW, and MID_CENTER.
Referenced by GUIVehicle::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GUIPointOfInterest::getPopUpMenu(), GUINet::getPopUpMenu(), GUILaneWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUIEdge::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), and GUIBusStop::getPopUpMenu().
| void GUIGlObject::buildNameCopyPopupEntry | ( | GUIGLObjectPopupMenu * | ret, |
| bool | addSeparator = true |
||
| ) | [protected] |
Builds entries which allow to copy the name / typed name into the clipboard.
| in,filled] | ret The popup menu to add the entry to | |
| [in] | addSeparator | Whether a separator shall be added, too |
Definition at line 138 of file GUIGlObject.cpp.
References MID_COPY_NAME, and MID_COPY_TYPED_NAME.
Referenced by GUIVehicle::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GUIPointOfInterest::getPopUpMenu(), GUILaneWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUIEdge::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), and GUIBusStop::getPopUpMenu().
| void GUIGlObject::buildPopupHeader | ( | GUIGLObjectPopupMenu * | ret, |
| GUIMainWindow & | app, | ||
| bool | addSeparator = true |
||
| ) | [protected] |
Builds the header.
| in,filled] | ret The popup menu to add the entry to | |
| [in] | addSeparator | Whether a separator shall be added, too |
Definition at line 119 of file GUIGlObject.cpp.
References GUIMainWindow::getBoldFont(), and getFullName().
Referenced by GUIVehicle::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GUIPointOfInterest::getPopUpMenu(), GUINet::getPopUpMenu(), GUILaneWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUIEdge::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), and GUIBusStop::getPopUpMenu().
| void GUIGlObject::buildPositionCopyEntry | ( | GUIGLObjectPopupMenu * | ret, |
| bool | addSeparator = true |
||
| ) | [protected] |
Builds an entry which allows to copy the cursor position if geo projection is used, also builds an entry for copying the geo-position.
| in,filled] | ret The popup menu to add the entry to | |
| [in] | addSeparator | Whether a separator shall be added, too |
Definition at line 170 of file GUIGlObject.cpp.
References GeoConvHelper::getFinal(), MID_COPY_CURSOR_GEOPOSITION, and MID_COPY_CURSOR_POSITION.
Referenced by GUIVehicle::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GUIPointOfInterest::getPopUpMenu(), GUINet::getPopUpMenu(), GUILaneWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUIEdge::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), and GUIBusStop::getPopUpMenu().
| void GUIGlObject::buildSelectionPopupEntry | ( | GUIGLObjectPopupMenu * | ret, |
| bool | addSeparator = true |
||
| ) | [protected] |
Builds an entry which allows to (de)select the object.
| in,filled] | ret The popup menu to add the entry to | |
| [in] | addSeparator | Whether a separator shall be added, too |
Definition at line 148 of file GUIGlObject.cpp.
References getGlID(), GUIIconSubSys::getIcon(), getType(), gSelected, ICON_FLAG_MINUS, ICON_FLAG_PLUS, GUISelectedStorage::isSelected(), MID_ADDSELECT, and MID_REMOVESELECT.
Referenced by GUIVehicle::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GUIPointOfInterest::getPopUpMenu(), GUILaneWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUIEdge::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), and GUIBusStop::getPopUpMenu().
| void GUIGlObject::buildShowManipulatorPopupEntry | ( | GUIGLObjectPopupMenu * | ret, |
| bool | addSeparator = true |
||
| ) | [protected] |
Builds an entry which allows to open the manipulator window.
| in,filled] | ret The popup menu to add the entry to | |
| [in] | addSeparator | Whether a separator shall be added, too |
Definition at line 182 of file GUIGlObject.cpp.
References GUIIconSubSys::getIcon(), ICON_MANIP, and MID_MANIP.
Referenced by GUITriggeredRerouter::getPopUpMenu(), and GUILaneSpeedTrigger::getPopUpMenu().
| void GUIGlObject::buildShowParamsPopupEntry | ( | GUIGLObjectPopupMenu * | ret, |
| bool | addSeparator = true |
||
| ) | [protected] |
Builds an entry which allows to open the parameter window.
| in,filled] | ret The popup menu to add the entry to | |
| [in] | addSeparator | Whether a separator shall be added, too |
Definition at line 161 of file GUIGlObject.cpp.
References GUIIconSubSys::getIcon(), ICON_APP_TABLE, and MID_SHOWPARS.
Referenced by GUIVehicle::getPopUpMenu(), GUINet::getPopUpMenu(), GUILaneWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIEdge::getPopUpMenu(), and GUIDetectorWrapper::getPopUpMenu().
| std::string GUIGlObject::createFullName | ( | ) | const [private] |
Definition at line 212 of file GUIGlObject.cpp.
References getMicrosimID(), and myPrefix.
Referenced by GUIGlObject(), setMicrosimID(), and setPrefix().
| virtual void GUIGlObject::drawGL | ( | const GUIVisualizationSettings & | s | ) | const [pure virtual] |
Draws the object.
| [in] | s | The settings for the current view (may influence drawing) |
Implemented in GUI_E2_ZS_Collector::MyWrapper, GUI_E2_ZS_CollectorOverLanes::MyWrapper, GUIBusStop, GUIE3Collector::MyWrapper, GUIEdge, GUIInductLoop::MyWrapper, GUIInstantInductLoop::MyWrapper, GUIJunctionWrapper, GUILaneSpeedTrigger, GUILaneWrapper, GUINet, GUITrafficLightLogicWrapper, GUITriggeredRerouter, GUIVehicle, GUIPointOfInterest, and GUIPolygon.
| virtual void GUIGlObject::drawGLAdditional | ( | GUISUMOAbstractView *const | parent, |
| const GUIVisualizationSettings & | s | ||
| ) | const [inline, virtual] |
Draws additional, user-triggered visualisations.
| [in] | parent | The view |
| [in] | s | The settings for the current view (may influence drawing) |
Reimplemented in GUIVehicle.
Definition at line 182 of file GUIGlObject.h.
References UNUSED_PARAMETER.
| void GUIGlObject::drawName | ( | const Position & | pos, |
| const SUMOReal | scale, | ||
| const GUIVisualizationTextSettings & | settings, | ||
| const SUMOReal | angle = 0 |
||
| ) | const |
Definition at line 218 of file GUIGlObject.cpp.
References GUIVisualizationTextSettings::color, GLHelper::drawText(), getMicrosimID(), GLO_MAX, GUIVisualizationTextSettings::show, and GUIVisualizationTextSettings::size.
Referenced by GUIVehicle::drawGL(), GUIPointOfInterest::drawGL(), GUILaneSpeedTrigger::drawGL(), GUIJunctionWrapper::drawGL(), GUIEdge::drawGL(), and GUIBusStop::drawGL().
| virtual Boundary GUIGlObject::getCenteringBoundary | ( | ) | const [pure virtual] |
Returns the boundary to which the view shall be centered in order to show the object.
Implemented in GUI_E2_ZS_Collector::MyWrapper, GUI_E2_ZS_CollectorOverLanes::MyWrapper, GUIBusStop, GUIE3Collector::MyWrapper, GUIEdge, GUIInductLoop::MyWrapper, GUIInstantInductLoop::MyWrapper, GUIJunctionWrapper, GUILaneSpeedTrigger, GUILaneWrapper, GUINet, GUITrafficLightLogicWrapper, GUITriggeredRerouter, GUIVehicle, GUIPointOfInterest, and GUIPolygon.
Referenced by SUMORTree::addAdditionalGLObject(), GUISUMOAbstractView::centerTo(), GUI_E2_ZS_CollectorOverLanes::MyWrapper::MyWrapper(), and SUMORTree::removeAdditionalGLObject().
| const std::string& GUIGlObject::getFullName | ( | ) | const [inline] |
Returns the full name appearing in the tool tip.
Definition at line 107 of file GUIGlObject.h.
References myFullName.
Referenced by buildPopupHeader(), GUIGlObject_AbstractAdd::GUIGlObject_AbstractAdd(), GUIGLObjectPopupMenu::onCmdCopyTypedName(), GUIParam_PopupMenuInterface::onCmdOpenTracker(), GUITriggeredRerouter::openManipulator(), GUILaneSpeedTrigger::openManipulator(), GUIDialog_GLChosenEditor::rebuildList(), GUISelectedStorage::save(), and GUISUMOAbstractView::showToolTipFor().
| GUIGlID GUIGlObject::getGlID | ( | ) | const [inline] |
Returns the numerical id of the object.
Definition at line 115 of file GUIGlObject.h.
References myGlID.
Referenced by buildSelectionPopupEntry(), GUINet::createTLWrapper(), GUIVehicle::drawGL(), GUITriggeredRerouter::drawGL(), GUIPolygon::drawGL(), GUIPointOfInterest::drawGL(), GUILaneWrapper::drawGL(), GUILaneSpeedTrigger::drawGL(), GUIJunctionWrapper::drawGL(), GUIEdge::drawGL(), GUIBusStop::drawGL(), GUIVehicle::drawGLAdditional(), GUILaneWrapper::getColorValue(), GUIEdge::getIDs(), GUISUMOAbstractView::getObjectAtPosition(), GUIVehicle::getPopUpMenu(), GUIDialog_GLObjChooser::GUIDialog_GLObjChooser(), GUISUMOViewParent::isSelected(), GUIGlChildWindow::isSelected(), GUISelectedStorage::loadIDs(), GUIGLObjectPopupMenu::onCmdAddSelected(), GUIGLObjectPopupMenu::onCmdCenter(), GUIGLObjectPopupMenu::onCmdRemoveSelected(), GUIVehicle::GUIVehiclePopupMenu::onCmdStartTrack(), GUISUMOAbstractView::removeAdditionalGLVisualisation(), GLObjectValuePassConnector< std::pair< SUMOTime, MSPhaseDefinition > >::removeObject(), GUILaneWrapper::ROWdrawAction_drawLinkRules(), and ~GUIGlObject().
| const std::string& GUIGlObject::getMicrosimID | ( | ) | const [inline] |
Returns the id of the object as known to microsim.
Definition at line 146 of file GUIGlObject.h.
References myMicrosimID.
Referenced by createFullName(), drawName(), GUIDialog_GLObjChooser::GUIDialog_GLObjChooser(), and GUIGLObjectPopupMenu::onCmdCopyName().
| virtual GUIParameterTableWindow* GUIGlObject::getParameterWindow | ( | GUIMainWindow & | app, |
| GUISUMOAbstractView & | parent | ||
| ) | [pure virtual] |
Returns an own parameter window.
| [in] | app | The application needed to build the parameter window |
| [in] | parent | The parent window needed to build the parameter window |
Implemented in GUI_E2_ZS_Collector::MyWrapper, GUI_E2_ZS_CollectorOverLanes::MyWrapper, GUIBusStop, GUIE3Collector::MyWrapper, GUIEdge, GUIInductLoop::MyWrapper, GUIInstantInductLoop::MyWrapper, GUIJunctionWrapper, GUILaneSpeedTrigger, GUILaneWrapper, GUINet, GUITrafficLightLogicWrapper, GUITriggeredRerouter, GUIVehicle, GUIPointOfInterest, and GUIPolygon.
Referenced by GUIGLObjectPopupMenu::onCmdShowPars().
| virtual GUIGLObjectPopupMenu* GUIGlObject::getPopUpMenu | ( | GUIMainWindow & | app, |
| GUISUMOAbstractView & | parent | ||
| ) | [pure virtual] |
Returns an own popup-menu.
| [in] | app | The application needed to build the popup-menu |
| [in] | parent | The parent window needed to build the popup-menu |
Implemented in GUIBusStop, GUIDetectorWrapper, GUIEdge, GUIJunctionWrapper, GUILaneSpeedTrigger, GUILaneWrapper, GUINet, GUITrafficLightLogicWrapper, GUITriggeredRerouter, GUIVehicle, GUIPointOfInterest, and GUIPolygon.
Referenced by GUISUMOAbstractView::openObjectDialog().
| GUIGlObjectType GUIGlObject::getType | ( | ) | const [inline] |
Returns the type of the object as coded in GUIGlObjectType.
Definition at line 159 of file GUIGlObject.h.
References myGLObjectType.
Referenced by buildSelectionPopupEntry(), GUIVehicle::drawGL(), GUITriggeredRerouter::drawGL(), GUILaneWrapper::drawGL(), GUILaneSpeedTrigger::drawGL(), GUIJunctionWrapper::drawGL(), GUIBusStop::drawGL(), GUIVehicle::drawGLAdditional(), GUILaneWrapper::getColorValue(), GUISUMOAbstractView::getObjectAtPosition(), GUISUMOViewParent::isSelected(), GUIGlChildWindow::isSelected(), GUISelectedStorage::loadIDs(), and GUISelectedStorage::toggleSelection().
| GUIGlObject& GUIGlObject::operator= | ( | const GUIGlObject & | ) | [private] |
Invalidated assignment operator.
| void GUIGlObject::removeParameterTable | ( | GUIParameterTableWindow * | w | ) |
Lets this object know a parameter window showing the object's values was closed.
| [in] | w | The closed parameter window |
Definition at line 197 of file GUIGlObject.cpp.
References myParamWindows.
Referenced by GUIParameterTableWindow::~GUIParameterTableWindow().
| void GUIGlObject::setMicrosimID | ( | const std::string & | newID | ) |
Changes the microsimID of the object (happens in NETEDIT)
Definition at line 112 of file GUIGlObject.cpp.
References createFullName(), myFullName, and myMicrosimID.
| void GUIGlObject::setPrefix | ( | const std::string & | prefix | ) | [protected] |
Definition at line 206 of file GUIGlObject.cpp.
References createFullName(), myFullName, and myPrefix.
StringBijection< GUIGlObjectType >::Entry GUIGlObject::GUIGlObjectTypeNamesInitializer [static, private] |
{
{"network", GLO_NETWORK},
{"edge", GLO_EDGE},
{"lane", GLO_LANE},
{"junction", GLO_JUNCTION},
{"tlLogic", GLO_TLLOGIC},
{"detector", GLO_DETECTOR},
{"trigger", GLO_TRIGGER},
{"shape", GLO_SHAPE},
{"vehicle", GLO_VEHICLE},
{"additional", GLO_ADDITIONAL},
{"undefined", GLO_MAX}
}
Definition at line 300 of file GUIGlObject.h.
std::string GUIGlObject::myFullName [private] |
Definition at line 287 of file GUIGlObject.h.
Referenced by getFullName(), GUIGlObject(), setMicrosimID(), and setPrefix().
GUIGlID GUIGlObject::myGlID [private] |
The numerical id of the object.
Definition at line 278 of file GUIGlObject.h.
Referenced by getGlID(), and GUIGlObject().
const GUIGlObjectType GUIGlObject::myGLObjectType [private] |
std::string GUIGlObject::myMicrosimID [private] |
Definition at line 283 of file GUIGlObject.h.
Referenced by getMicrosimID(), and setMicrosimID().
std::set<GUIParameterTableWindow*> GUIGlObject::myParamWindows [private] |
Parameter table windows which refer to this object.
Definition at line 290 of file GUIGlObject.h.
Referenced by addParameterTable(), removeParameterTable(), and ~GUIGlObject().
std::string GUIGlObject::myPrefix [private] |
Definition at line 285 of file GUIGlObject.h.
Referenced by createFullName(), and setPrefix().
StringBijection< GUIGlObjectType > GUIGlObject::TypeNames [static] |
associates object types with strings
Definition at line 99 of file GUIGlObject.h.