46 GNEHierarchicalElement(dataSetParent->getNet(),
SUMO_TAG_DATAINTERVAL, {}, {}, {}, {}, {}, {}, {}, {}),
47 myDataSetParent(dataSetParent),
64 genericData->getParentEdges().front()->getID());
68 genericData->getParentEdges().front()->getID() +
"->" + genericData->getParentEdges().back()->getID());
83 for (
const auto& param : genericData->getParametersMap()) {
85 if (canParse<double>(param.second)) {
87 const double value = parse<double>(param.second);
104 const std::map<SumoXMLTag, GNEDataSet::AttributeColors>&
205 throw ProcessError(
"GenericData wasn't previously inserted");
216 const std::vector<GNEGenericData*>&
227 (genericData->getParentTAZElements().size() == 1) &&
228 (genericData->getParentTAZElements().front() ==
TAZ)) {
241 (genericData->getParentTAZElements().size() == 2) &&
242 (genericData->getParentTAZElements().front() == fromTAZ) &&
243 (genericData->getParentTAZElements().back() == toTAZ)) {
296 return canParse<double>(value);
298 return canParse<double>(value);
346 const std::map<std::string, std::string>&
356 myBegin = parse<double>(value);
361 myEnd = parse<double>(value);
@ SUMO_TAG_EDGEREL
a relation between two edges
@ SUMO_TAG_MEANDATA_EDGE
an edge based mean data detector
@ SUMO_TAG_TAZREL
a relation between two TAZs
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
@ SUMO_ATTR_BEGIN
weights: time range begin
@ SUMO_ATTR_END
weights: time range end
std::string toString(const T &t, std::streamsize accuracy=gPrecision)
friend class GNEChange_Attribute
declare friend class
const std::string & getTagStr() const
get tag assigned to this object in string format
const GNETagProperties & getTagProperty() const
get tagProperty associated with this Attribute Carrier
GNENet * myNet
pointer to net
GNENet * getNet() const
get pointer to net
void fixDataIntervalProblem()
fix data element problem (by default throw an exception, has to be reimplemented in children)
bool isAttributeEnabled(SumoXMLAttr key) const
double myBegin
begin interval
Position getPositionInView() const
Returns element position in view.
GNEDataInterval(GNEDataSet *dataSetParent, const double begin, const double end)
Constructor.
GNEDataSet * myDataSetParent
GNEDataSet parent to which this data interval belongs.
void setAttribute(SumoXMLAttr key, const std::string &value, GNEUndoList *undoList)
method for setting the attribute and letting the object perform data element changes
void toogleAttribute(SumoXMLAttr key, const bool value, const int previousParameters)
method for enable or disable the attribute and nothing else (used in GNEChange_EnableAttribute)
void removeGenericDataChild(GNEGenericData *genericData)
add generic data child
std::string getAttribute(SumoXMLAttr key) const
double getAttributeDouble(SumoXMLAttr key) const
GUIGlObject * getGUIGlObject()
get GUIGlObject associated with this AttributeCarrier
bool isDataIntervalValid() const
GNEDataSet * getDataSetParent() const
Returns a pointer to GNEDataSet parent.
bool isValid(SumoXMLAttr key, const std::string &value)
method for checking if the key and their conrrespond attribute are valids
const std::string & getID() const
get ID
bool hasGenericDataChild(GNEGenericData *genericData) const
check if given generic data is child of this data interval
GNEDataSet::AttributeColors myAllAttributeColors
all attribute colors
const std::vector< GNEGenericData * > & getGenericDataChildren() const
get generic data children
void enableAttribute(SumoXMLAttr key, GNEUndoList *undoList)
std::string getPopUpID() const
get PopPup ID (Used in AC Hierarchy)
const std::map< SumoXMLTag, GNEDataSet::AttributeColors > & getSpecificAttributeColors() const
specific attribute colors
void updateGenericDataIDs()
update generic data child IDs
~GNEDataInterval()
Destructor.
std::map< SumoXMLTag, GNEDataSet::AttributeColors > mySpecificAttributeColors
specific attribute colors
std::string getHierarchyName() const
get Hierarchy Name (Used in AC Hierarchy)
bool TAZRelExists(const GNETAZElement *TAZ) const
check if there is already a TAZRel defined in one TAZ
std::string getDataIntervalProblem() const
return a string with the current data element problem (by default empty, can be reimplemented in chil...
void disableAttribute(SumoXMLAttr key, GNEUndoList *undoList)
const std::map< std::string, std::string > & getACParametersMap() const
get parameters map
const GNEDataSet::AttributeColors & getAllAttributeColors() const
all attribute colors
bool isAttributeComputed(SumoXMLAttr key) const
std::vector< GNEGenericData * > myGenericDataChildren
vector with generic data children
void addGenericDataChild(GNEGenericData *genericData)
add generic data child
void updateGeometry()
update pre-computed geometry information
void updateAttributeColors()
update attribute colors deprecated
void clear()
clear AttributeColors
void updateValues(const std::string &attribute, const double value)
update value for an specific attribute
std::string getAttribute(SumoXMLAttr key) const
const std::string & getID() const
get ID
void updateAttributeColors()
update attribute colors deprecated
void removeCurrentEditedAttributeCarrier(const GNEAttributeCarrier *HE)
if given AttributeCarrier is the same of myHE, set it as nullptr
An Element which don't belongs to GNENet but has influency in the simulation.
GUIGlObject * getGUIGlObject()
get GUIGlObject associated with this AttributeCarrier
virtual void updateGeometry()=0
update pre-computed geometry information
GNEDataInterval * getDataIntervalParent() const
get data interval parent
GNEFrameModules::HierarchicalElementTree * getHierarchicalElementTree() const
get HierarchicalElementTree modul
void insertGenericData(GNEGenericData *genericData)
insert generic data
void deleteGenericData(GNEGenericData *genericData)
delete generic data
SUMORTree & getGrid()
Returns the RTree used for visualisation speed-up.
GNENetHelper::AttributeCarriers * getAttributeCarriers() const
get all attribute carriers used in this net
bool isUpdateGeometryEnabled() const
check if update geometry after inserting or removing has to be updated
bool isUpdateDataEnabled() const
check if update data after inserting or removing has to be updated
GNEPathManager * getPathManager()
get path manager
GNEViewNet * getViewNet() const
get view net
void removePath(PathElement *pathElement)
remove path
An Element which don't belongs to GNENet but has influency in the simulation.
bool isPlacedInRTree() const
return true if Tag correspond to an element that has has to be placed in RTREE
void changeAttribute(GNEChange_Attribute *change)
special method for change attributes, avoid empty changes, always execute
GNEViewParent * getViewParent() const
get the net object
void removeFromAttributeCarrierInspected(const GNEAttributeCarrier *AC)
remove given AC of list of inspected Attribute Carriers
GNEInspectorFrame * getInspectorFrame() const
get frame for inspect elements
const std::map< std::string, std::string > & getParametersMap() const
Returns the inner key/value map.
A point in 2D or 3D with translation and scaling methods.
void addAdditionalGLObject(GUIGlObject *o, const double exaggeration=1)
Adds an additional object (detector/shape/trigger) for visualisation.
void removeAdditionalGLObject(GUIGlObject *o, const double exaggeration=1)
Removes an additional object (detector/shape/trigger) from being visualised.