SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
GUIGlObject_AbstractAdd Class Referenceabstract

#include <GUIGlObject_AbstractAdd.h>

Inheritance diagram for GUIGlObject_AbstractAdd:
Inheritance graph
Collaboration diagram for GUIGlObject_AbstractAdd:
Collaboration graph

Public Member Functions

virtual void drawGLAdditional (GUISUMOAbstractView *const parent, const GUIVisualizationSettings &s) const
 Draws additional, user-triggered visualisations. More...
 
void drawName (const Position &pos, const SUMOReal scale, const GUIVisualizationTextSettings &settings, const SUMOReal angle=0) const
 draw name of item More...
 
 GUIGlObject_AbstractAdd (const std::string &prefix, GUIGlObjectType type, const std::string &id)
 
 ~GUIGlObject_AbstractAdd ()
 
Atomar getter methods

Returns the full name appearing in the tool tip

Returns
This object's typed id
const std::string & getFullName () const
 
virtual const std::string & getParentName () const
 Returns the name of the parent object (if any) More...
 
GUIGlID getGlID () const
 Returns the numerical id of the object. More...
 
interfaces to be implemented by derived classes
virtual GUIGLObjectPopupMenugetPopUpMenu (GUIMainWindow &app, GUISUMOAbstractView &parent)=0
 Returns an own popup-menu. More...
 
virtual GUIParameterTableWindowgetParameterWindow (GUIMainWindow &app, GUISUMOAbstractView &parent)=0
 Returns an own parameter window. More...
 
virtual GUIParameterTableWindowgetTypeParameterWindow (GUIMainWindow &app, GUISUMOAbstractView &parent)
 Returns an own type parameter window (optional) More...
 
virtual const std::string & getMicrosimID () const
 Returns the id of the object as known to microsim. More...
 
virtual void setMicrosimID (const std::string &newID)
 Changes the microsimID of the object. More...
 
GUIGlObjectType getType () const
 Returns the type of the object as coded in GUIGlObjectType. More...
 
virtual Boundary getCenteringBoundary () const =0
 
virtual void drawGL (const GUIVisualizationSettings &s) const =0
 Draws the object. More...
 
Parameter table window I/O

Lets this object know a parameter window showing the object's values was opened

Parameters
[in]wThe opened parameter window
void addParameterTable (GUIParameterTableWindow *w)
 
void removeParameterTable (GUIParameterTableWindow *w)
 Lets this object know a parameter window showing the object's values was closed. More...
 

Static Public Member Functions

static void clearDictionary ()
 Clears the dictionary (the objects will not be deleted) More...
 
static GUIGlObject_AbstractAddget (const std::string &name)
 Returns a named object. More...
 
static std::vector< GUIGlIDgetIDList ()
 Returns the list of gl-ids of all additional objects. More...
 
static const std::vector
< GUIGlObject_AbstractAdd * > & 
getObjectList ()
 Returns the list of all additional objects. More...
 
static void remove (GUIGlObject_AbstractAdd *o)
 Removes an object. More...
 

Static Public Attributes

static const GUIGlID INVALID_ID = 0
 
static StringBijection
< GUIGlObjectType
TypeNames
 associates object types with strings More...
 

Protected Member Functions

void setPrefix (const std::string &prefix)
 usually names are prefixed by a type-specific string. this method can be used to change the default More...
 
helper methods for building popup-menus
void buildPopupHeader (GUIGLObjectPopupMenu *ret, GUIMainWindow &app, bool addSeparator=true)
 Builds the header. More...
 
void buildCenterPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to center to the object. More...
 
void buildNameCopyPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds entries which allow to copy the name / typed name into the clipboard. More...
 
void buildSelectionPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to (de)select the object. More...
 
void buildShowParamsPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to open the parameter window. More...
 
void buildShowTypeParamsPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to open the type parameter window. More...
 
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. More...
 
void buildShowManipulatorPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to open the manipulator window. More...
 

Static Protected Attributes

static std::vector
< GUIGlObject_AbstractAdd * > 
myObjectList
 The list of all addtional objects currently loaded. More...
 
static std::map< std::string,
GUIGlObject_AbstractAdd * > 
myObjects
 Map from names of loaded additional objects to the objects themselves. More...
 

Detailed Description

Definition at line 47 of file GUIGlObject_AbstractAdd.h.

Constructor & Destructor Documentation

GUIGlObject_AbstractAdd::GUIGlObject_AbstractAdd ( const std::string &  prefix,
GUIGlObjectType  type,
const std::string &  id 
)

Definition at line 55 of file GUIGlObject_AbstractAdd.cpp.

References GUIGlObject::getFullName(), myObjectList, and myObjects.

GUIGlObject_AbstractAdd::~GUIGlObject_AbstractAdd ( )

Definition at line 62 of file GUIGlObject_AbstractAdd.cpp.

Member Function Documentation

void GUIGlObject::addParameterTable ( GUIParameterTableWindow w)
inherited

Definition at line 260 of file GUIGlObject.cpp.

References GUIGlObject::myParamWindows.

void GUIGlObject::buildShowManipulatorPopupEntry ( GUIGLObjectPopupMenu ret,
bool  addSeparator = true 
)
protectedinherited

Builds an entry which allows to open the manipulator window.

Parameters
in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 251 of file GUIGlObject.cpp.

References GUIIconSubSys::getIcon(), ICON_MANIP, and MID_MANIP.

Referenced by GUILaneSpeedTrigger::getPopUpMenu(), and GUITriggeredRerouter::getPopUpMenu().

void GUIGlObject::buildShowParamsPopupEntry ( GUIGLObjectPopupMenu ret,
bool  addSeparator = true 
)
protectedinherited
void GUIGlObject::buildShowTypeParamsPopupEntry ( GUIGLObjectPopupMenu ret,
bool  addSeparator = true 
)
protectedinherited

Builds an entry which allows to open the type parameter window.

Parameters
in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 230 of file GUIGlObject.cpp.

References GUIIconSubSys::getIcon(), ICON_APP_TABLE, and MID_SHOWTYPEPARS.

Referenced by GUIBaseVehicle::getPopUpMenu().

void GUIGlObject_AbstractAdd::clearDictionary ( )
static

Clears the dictionary (the objects will not be deleted)

!! delete (*i).second;

Definition at line 66 of file GUIGlObject_AbstractAdd.cpp.

References myObjectList, and myObjects.

Referenced by GUINet::~GUINet().

void GUIGlObject::drawGLAdditional ( GUISUMOAbstractView *const  parent,
const GUIVisualizationSettings s 
) const
virtualinherited

Draws additional, user-triggered visualisations.

Parameters
[in]parentThe view
[in]sThe settings for the current view (may influence drawing)

Reimplemented in GUIBaseVehicle, GUIPerson, and GUIContainer.

Definition at line 158 of file GUIGlObject.cpp.

References UNUSED_PARAMETER.

GUIGlObject_AbstractAdd * GUIGlObject_AbstractAdd::get ( const std::string &  name)
static

Returns a named object.

Definition at line 77 of file GUIGlObject_AbstractAdd.cpp.

References myObjects.

GUIGlID GUIGlObject::getGlID ( ) const
inherited

Returns the numerical id of the object.

Returns
This object's gl-id

Definition at line 125 of file GUIGlObject.cpp.

References GUIGlObject::myGlID.

Referenced by GNENet::addReversedEdge(), GUIMessageWindow::appendMsg(), GUIGlObject::buildSelectionPopupEntry(), GUINet::createTLWrapper(), GNENet::deleteConnection(), GNENet::deleteEdge(), GNENet::deleteJunction(), GNENet::deleteLane(), GNENet::deleteSingleEdge(), GNENet::deleteSingleJunction(), GUIVehicle::drawAction_drawPersonsAndContainers(), GNEDetectorExit::drawGL(), GNEDetectorEntry::drawGL(), GNEDetectorE1::drawGL(), GNEDetectorE2::drawGL(), GNEContainerStop::drawGL(), GNEBusStop::drawGL(), GNEDetectorE3::drawGL(), GNEInternalLane::drawGL(), GNECrossing::drawGL(), GNEJunction::drawGL(), GUIContainer::drawGL(), GNEVaporizer::drawGL(), GNEVariableSpeedSignal::drawGL(), GUIPerson::drawGL(), GUIPolygon::drawGL(), GUILaneSpeedTrigger::drawGL(), GUICalibrator::drawGL(), GUIPointOfInterest::drawGL(), GNERouteProbe::drawGL(), GUIJunctionWrapper::drawGL(), GNEChargingStation::drawGL(), GNEEdge::drawGL(), GNELane::drawGL(), GUIChargingStation::drawGL(), GUIContainerStop::drawGL(), GNEPoly::drawGL(), GNEConnection::drawGL(), GNECalibrator::drawGL(), GUIBusStop::drawGL(), GUIEdge::drawGL(), GUITriggeredRerouter::GUITriggeredRerouterEdge::drawGL(), GUILane::drawGL(), GNERerouter::drawGL(), GUIContainer::drawGLAdditional(), GUIPerson::drawGLAdditional(), GUIBaseVehicle::drawGLAdditional(), GUILane::drawLinkRule(), GUIBaseVehicle::drawOnPos(), GUIMEVehicle::getColorValue(), GUIVehicle::getColorValue(), GUIJunctionWrapper::getColorValue(), GUIEdge::getColorValue(), GUIContainer::getColorValue(), GUIPerson::getColorValue(), GNEJunction::getColorValue(), GUILane::getColorValue(), GNELane::getColorValue(), GUIEdge::getIDs(), GNEEdge::getLaneGlIDs(), GUISUMOAbstractView::getObjectAtPosition(), GUISUMOAbstractView::getObjectsAtPosition(), GUIPerson::getPopUpMenu(), GNELane::getPopUpMenu(), GUIBaseVehicle::getPopUpMenu(), GUIEdge::getScaleValue(), GUILane::getScaleValue(), GNECalibrator::GNECalibrator(), GNERouteProbe::GNERouteProbe(), GNEVaporizer::GNEVaporizer(), GUIDialog_GLObjChooser::GUIDialog_GLObjChooser(), GNESelectorFrame::handleIDs(), GNETLSEditorFrame::handleMultiChange(), GNEAdditional::isAdditionalSelected(), GUIGlChildWindow::isSelected(), GUISUMOViewParent::isSelected(), GNEViewParent::isSelected(), GUISelectedStorage::loadIDs(), GNEViewNet::mergeJunctions(), GUIViewTraffic::onCmdAddRerouter(), GUIGLObjectPopupMenu::onCmdAddSelected(), GUIGLObjectPopupMenu::onCmdCenter(), GUIViewTraffic::onCmdCloseEdge(), GUIViewTraffic::onCmdCloseLane(), GNEViewNet::onCmdDuplicateLane(), GUIApplicationWindow::onCmdEditChosen(), GUIGLObjectPopupMenu::onCmdRemoveSelected(), GNEViewNet::onCmdRevertRestriction(), GNEConnectorFrame::onCmdSelectDeadStarts(), GNEConnectorFrame::onCmdSelectPass(), GUIPerson::GUIPersonPopupMenu::onCmdStartTrack(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdStartTrack(), GNEViewNet::onCmdStraightenEdges(), GNEViewNet::onLeftBtnPress(), GUISUMOAbstractView::removeAdditionalGLVisualisation(), GLObjectValuePassConnector< std::pair< SUMOTime, MSPhaseDefinition > >::removeObject(), GUIVehicle::selectBlockingFoes(), GNEJunction::setColor(), GUIMessageWindow::setCursorPos(), and GUIGlObject::~GUIGlObject().

std::vector< GUIGlID > GUIGlObject_AbstractAdd::getIDList ( )
static

Returns the list of gl-ids of all additional objects.

Definition at line 100 of file GUIGlObject_AbstractAdd.cpp.

References myObjectList.

Referenced by GUISUMOViewParent::onCmdLocate().

const std::string & GUIGlObject::getMicrosimID ( ) const
virtualinherited

Returns the id of the object as known to microsim.

Definition at line 139 of file GUIGlObject.cpp.

References GUIGlObject::myMicrosimID.

Referenced by GNEAdditional::changeEdge(), GNEAdditional::changeLane(), GNETLSEditorFrame::controlsEdge(), GUIGlObject::createFullName(), GNENet::deleteSingleEdge(), GNENet::deleteSingleJunction(), GUIGlObject::drawName(), GNEAdditional::getAdditionalID(), GNEPOI::getAttribute(), GNECrossing::getAttribute(), GNEConnection::getAttribute(), GNEJunction::getAttribute(), GNEPoly::getAttribute(), GNEEdge::getAttribute(), GNELane::getAttribute(), GNELane::getParentName(), GNENetElement::getParentName(), GNEDetectorE3::getParentName(), GNEVariableSpeedSignal::getParentName(), GNEVaporizer::getParentName(), GNEStoppingPlace::getParentName(), GNERouteProbe::getParentName(), GNEDetector::getParentName(), GNECalibrator::getParentName(), GNEAdditional::getParentName(), GNERerouter::getParentName(), GNEAdditional::getPopUpMenu(), GUIDialog_GLObjChooser::GUIDialog_GLObjChooser(), GNEConnectorFrame::handleLaneClick(), GNETLSEditorFrame::handleMultiChange(), GNEEdge::isValid(), GNEViewNet::mergeJunctions(), GNEPoly::moveGeometry(), GNEEdge::moveGeometry(), GUIGLObjectPopupMenu::onCmdAddSelected(), GUIGLObjectPopupMenu::onCmdCopyName(), GNEViewNet::onCmdNodeShape(), GNEViewNet::onLeftBtnPress(), GNEInspectorFrame::onUpdCopyTemplate(), GNENet::registerEdge(), GNENet::registerJunction(), GNENet::remapEdge(), GNEEdge::removeConnection(), GNENet::replaceJunctionByGeometry(), GNENet::retrieveAttributeCarriers(), GNEAdditional::setAdditionalID(), GNEEdge::setAttribute(), GNENet::splitEdge(), and GNEConnectorFrame::updateDescription().

const std::vector< GUIGlObject_AbstractAdd * > & GUIGlObject_AbstractAdd::getObjectList ( )
static

Returns the list of all additional objects.

Definition at line 94 of file GUIGlObject_AbstractAdd.cpp.

References myObjectList.

Referenced by GNEPOI::saveToFile().

const std::string & GUIGlObject::getParentName ( ) const
virtualinherited

Returns the name of the parent object (if any)

Returns
This object's parent id

Reimplemented in GNERerouter, GNEAdditional, GNEAdditionalSet, GNECalibrator, GNEDetector, GNERouteProbe, GNEStoppingPlace, GNEVaporizer, GNEVariableSpeedSignal, GUILane, GNEDetectorE3, GNELane, and GNENetElement.

Definition at line 119 of file GUIGlObject.cpp.

References StringUtils::emptyString.

Referenced by GUIGLObjectPopupMenu::onCmdCopyEdgeName().

virtual GUIGLObjectPopupMenu* GUIGlObject::getPopUpMenu ( GUIMainWindow app,
GUISUMOAbstractView parent 
)
pure virtualinherited
GUIGlObjectType GUIGlObject::getType ( ) const
inherited

Returns the type of the object as coded in GUIGlObjectType.

See also
GUIGlObjectType

Definition at line 152 of file GUIGlObject.cpp.

References GUIGlObject::myGLObjectType.

Referenced by GUIGlObject::buildSelectionPopupEntry(), GUIVehicle::drawAction_drawPersonsAndContainers(), GUIVehicle::drawAction_drawRailCarriages(), GUIPerson::drawAction_drawWalkingareaPath(), GNEAdditionalSet::drawConnections(), GNEDetector::drawDetectorIcon(), GNEDetectorExit::drawGL(), GNEDetectorEntry::drawGL(), GNEDetectorE1::drawGL(), GNEDetectorE2::drawGL(), GNEContainerStop::drawGL(), GNEBusStop::drawGL(), GNEDetectorE3::drawGL(), GNEJunction::drawGL(), GUIContainer::drawGL(), GUIPerson::drawGL(), GNEVaporizer::drawGL(), GNEVariableSpeedSignal::drawGL(), GUILaneSpeedTrigger::drawGL(), GUICalibrator::drawGL(), GNERouteProbe::drawGL(), GUIJunctionWrapper::drawGL(), GNEChargingStation::drawGL(), GNEEdge::drawGL(), GNELane::drawGL(), GUIChargingStation::drawGL(), GUIContainerStop::drawGL(), GNEConnection::drawGL(), GNECalibrator::drawGL(), GUIBusStop::drawGL(), GUITriggeredRerouter::GUITriggeredRerouterEdge::drawGL(), GUILane::drawGL(), GNERerouter::drawGL(), GUIPerson::drawGLAdditional(), GUIBaseVehicle::drawGLAdditional(), GNEAdditional::drawLockIcon(), GUIBaseVehicle::drawOnPos(), GNEDetectorEntry::getAttribute(), GNEDetectorExit::getAttribute(), GNEDetectorE1::getAttribute(), GNEDetectorE2::getAttribute(), GNEContainerStop::getAttribute(), GNEBusStop::getAttribute(), GNEDetectorE3::getAttribute(), GNEVariableSpeedSignal::getAttribute(), GNEVaporizer::getAttribute(), GNERouteProbe::getAttribute(), GNEChargingStation::getAttribute(), GNECalibrator::getAttribute(), GNEJunction::getAttribute(), GNERerouter::getAttribute(), GUIJunctionWrapper::getColorValue(), GUIEdge::getColorValue(), GNEJunction::getColorValue(), GUILane::getColorValue(), GNELane::getColorValue(), GNEViewNet::getEdgeAtCursorPosition(), GNEViewNet::getEdgesAtCursorPosition(), GNEViewNet::getJunctionAtCursorPosition(), GNEViewNet::getLaneAtCurserPosition(), GUISUMOAbstractView::getObjectAtPosition(), GUISUMOAbstractView::getObjectsAtPosition(), GUIEdge::getScaleValue(), GUILane::getScaleValue(), GNESelectorFrame::handleIDs(), GNEAdditional::isAdditionalSelected(), GUIGlChildWindow::isSelected(), GUISUMOViewParent::isSelected(), GNEViewParent::isSelected(), GNEDetectorEntry::isValid(), GNEDetectorExit::isValid(), GNEDetectorE1::isValid(), GNEDetectorE2::isValid(), GNEContainerStop::isValid(), GNEBusStop::isValid(), GNEDetectorE3::isValid(), GNEVariableSpeedSignal::isValid(), GNEVaporizer::isValid(), GNERouteProbe::isValid(), GNEChargingStation::isValid(), GNECalibrator::isValid(), GNERerouter::isValid(), GUISelectedStorage::loadIDs(), GNEViewNet::mergeJunctions(), GNEConnectorFrame::onCmdClearSelectedConnections(), GUIGLObjectPopupMenu::onCmdCopyEdgeName(), GNEViewNet::onDoubleClicked(), GNEViewNet::onLeftBtnPress(), LayeredRTree::selectLayer(), GNEDetectorExit::setAttribute(), GNEDetectorEntry::setAttribute(), GNEDetectorE1::setAttribute(), GNEDetectorE2::setAttribute(), GNEBusStop::setAttribute(), GNEContainerStop::setAttribute(), GNEDetectorE3::setAttribute(), GNEVaporizer::setAttribute(), GNEVariableSpeedSignal::setAttribute(), GNERouteProbe::setAttribute(), GNEChargingStation::setAttribute(), GNECalibrator::setAttribute(), GNERerouter::setAttribute(), GNEJunction::setColor(), and GUISelectedStorage::toggleSelection().

GUIParameterTableWindow * GUIGlObject::getTypeParameterWindow ( GUIMainWindow app,
GUISUMOAbstractView parent 
)
virtualinherited

Returns an own type parameter window (optional)

Parameters
[in]appThe application needed to build the parameter window
[in]parentThe parent window needed to build the parameter window
Returns
The built parameter window

Reimplemented in GUIVehicle, GUIBaseVehicle, and GUIMEVehicle.

Definition at line 131 of file GUIGlObject.cpp.

References UNUSED_PARAMETER.

Referenced by GUIGLObjectPopupMenu::onCmdShowTypePars().

void GUIGlObject_AbstractAdd::remove ( GUIGlObject_AbstractAdd o)
static

Removes an object.

Definition at line 87 of file GUIGlObject_AbstractAdd.cpp.

References GUIGlObject::getFullName(), myObjectList, and myObjects.

void GUIGlObject::removeParameterTable ( GUIParameterTableWindow w)
inherited

Lets this object know a parameter window showing the object's values was closed.

Parameters
[in]wThe closed parameter window

Definition at line 266 of file GUIGlObject.cpp.

References GUIGlObject::myParamWindows.

Referenced by GUIParameterTableWindow::~GUIParameterTableWindow().

void GUIGlObject::setMicrosimID ( const std::string &  newID)
virtualinherited

Changes the microsimID of the object.

Note
happens in NETEDIT

Reimplemented in GNEEdge.

Definition at line 145 of file GUIGlObject.cpp.

References GUIGlObject::createFullName(), GUIGlObject::myFullName, and GUIGlObject::myMicrosimID.

Referenced by GNENet::renameJunction(), GNEAdditional::setAdditionalID(), GNELane::setIndex(), and GNEEdge::setMicrosimID().

void GUIGlObject::setPrefix ( const std::string &  prefix)
protectedinherited

usually names are prefixed by a type-specific string. this method can be used to change the default

Definition at line 275 of file GUIGlObject.cpp.

References GUIGlObject::createFullName(), GUIGlObject::myFullName, and GUIGlObject::myPrefix.

Field Documentation

const GUIGlID GUIGlObject::INVALID_ID = 0
staticinherited
std::vector< GUIGlObject_AbstractAdd * > GUIGlObject_AbstractAdd::myObjectList
staticprotected

The list of all addtional objects currently loaded.

Definition at line 78 of file GUIGlObject_AbstractAdd.h.

Referenced by clearDictionary(), getIDList(), getObjectList(), GUIGlObject_AbstractAdd(), and remove().

std::map< std::string, GUIGlObject_AbstractAdd * > GUIGlObject_AbstractAdd::myObjects
staticprotected

Map from names of loaded additional objects to the objects themselves.

Definition at line 75 of file GUIGlObject_AbstractAdd.h.

Referenced by clearDictionary(), get(), GUIGlObject_AbstractAdd(), and remove().

StringBijection< GUIGlObjectType > GUIGlObject::TypeNames
staticinherited

associates object types with strings

Definition at line 76 of file GUIGlObject.h.


The documentation for this class was generated from the following files: