SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SUMOXMLDefinitions.h
Go to the documentation of this file.
1 /****************************************************************************/
12 // Definitions of elements and attributes known by SUMO
13 /****************************************************************************/
14 // SUMO, Simulation of Urban MObility; see http://sumo-sim.org/
15 // Copyright (C) 2002-2014 DLR (http://www.dlr.de/) and contributors
16 /****************************************************************************/
17 //
18 // This file is part of SUMO.
19 // SUMO is free software: you can redistribute it and/or modify
20 // it under the terms of the GNU General Public License as published by
21 // the Free Software Foundation, either version 3 of the License, or
22 // (at your option) any later version.
23 //
24 /****************************************************************************/
25 #ifndef SUMOXMLDefinitions_h
26 #define SUMOXMLDefinitions_h
27 
28 
29 // ===========================================================================
30 // included modules
31 // ===========================================================================
32 #ifdef _MSC_VER
33 #include <windows_config.h>
34 #else
35 #include <config.h>
36 #endif
37 
39 
40 // ===========================================================================
41 // definitions
42 // ===========================================================================
49 enum SumoXMLTag {
159 
165 
190 
201 
205 
211 
216  /* streets object */
218 
219  /* workingHours object */
223 
224  /* school object */
227 
228  /* busStation and bus objects */
235 
236  /* population and children accompaniment brackets */
239  //AGEN_TAG_CHILD_ACOMP,
240 
241  /* city entrances */
244 
245  /* parameters */
247 
248 };
249 
250 
260  /* common attributes */
279  /* sumo-junction attributes */
295  /* vehicle attributes */
313  /* Car following model attributes */
314  SUMO_ATTR_SIGMA, // used by: Krauss
315  SUMO_ATTR_TAU, // Krauss
321  /* route alternatives / distribution attributes */
328  /* trip definition attributes */
339  /* source definitions */
350  /* the edges crossed by a pedestrian crossing */
380 
388  // Attributes for actuated traffic lights:
393  // Attributes for junction-internal lanes
396  // Attributes for detectors
402 
409 
440 
447 
457 
462 
472 
478 
488 
489 
493  /* general object */
503 
504  /* streets object */
505  //SUMO_ATTR_EDGE already defined
508 
509  /* workHours object */
512 
513  /* school object */
514  //SUMO_ATTR_EDGE, SUMO_ATTR_POSITION, SUMO_ATTR_TYPE already defined
518 
519  /* busStation and Bus objects */
520  // ID, EDGE, POSITION, REFID, BEGIN and END are already defined
522  //AGEN_ATTR_ORDER,
524 
525  /* population and children accompaniment brackets */
529 
530  /* parameters */
536 
537  /* city gates */
540 
541  //@name Netedit Attributes (used as virtual property holders, must be in SumoXMLAttr)
542  //
544  /* whether a feature has been loaded,guessed,modified or approved */
546  /* first coordinate of edge shape */
548  /* last coordinate of edge shape */
551 };
552 
553 /*
554  * definitions of special SumoXML-attribute values.
555  * Since these enums shall be used in switch statements we keep them separated
556  * @{
557  */
558 
565  NODETYPE_UNKNOWN, // terminator
567  NODETYPE_TRAFFIC_LIGHT_NOJUNCTION, // junction controlled only by traffic light but without other prohibitions
569  NODETYPE_PRIORITY_STOP, // like priority but all minor links have stop signs
577 };
578 
579 
593 };
594 
595 
607 };
608 
609 
622 enum LinkState {
649 };
650 
651 
673 };
674 
675 
683 };
684 
685 
693 };
694 
695 
697 
704 
705 public:
708 
711 
714 
717 
719 
721 
723 
725 
727 
729 
731 
734 
736 
737 
739  static std::string getJunctionIDFromInternalEdge(const std::string internalEdge);
740 
742  static std::string getEdgeIDFromLane(const std::string laneID);
743 
745 
746 private:
747 
749 
751 
753 
755 
757 
759 
761 
762 };
763 
764 #endif
765 
766 /****************************************************************************/
767