![]() |
Eclipse SUMO - Simulation of Urban MObility
|
#include <GNEAttributeProperties.h>
Public Types | |
enum | AttrProperty { INT = 1 << 0 , FLOAT = 1 << 1 , SUMOTIME = 1 << 2 , BOOL = 1 << 3 , STRING = 1 << 4 , POSITION = 1 << 5 , COLOR = 1 << 6 , VTYPE = 1 << 7 , VCLASS = 1 << 8 , POSITIVE = 1 << 9 , UNIQUE = 1 << 10 , FILENAME = 1 << 11 , DISCRETE = 1 << 12 , PROBABILITY = 1 << 13 , ANGLE = 1 << 14 , LIST = 1 << 15 , SECUENCIAL = 1 << 16 , DEFAULTVALUE = 1 << 17 , VCLASSES = 1 << 18 , SYNONYM = 1 << 19 , RANGE = 1 << 20 , EXTENDED = 1 << 21 , UPDATEGEOMETRY = 1 << 22 , ACTIVATABLE = 1 << 23 , FLOWDEFINITION = 1 << 24 , AUTOMATICID = 1 << 25 } |
struct with the tag Properties More... | |
Public Member Functions | |
void | checkAttributeIntegrity () const |
check Attribute integrity (For example, throw an exception if tag has a Float default value, but given default value cannot be parse to float) | |
SumoXMLAttr | getAttr () const |
get XML Attribute | |
const std::string & | getAttrStr () const |
get XML Attribute | |
SumoXMLAttr | getAttrSynonym () const |
get tag synonym | |
bool | getDefaultActivated () const |
get default active value | |
const std::string & | getDefaultValue () const |
get default value | |
const std::string & | getDefinition () const |
get default value | |
std::string | getDescription () const |
return a description of attribute | |
const std::vector< std::string > & | getDiscreteValues () const |
get discrete values | |
double | getMaximumRange () const |
get maximum range | |
double | getMinimumRange () const |
get minimum range | |
int | getPositionListed () const |
get position in list (used in frames for listing attributes with certain sort) | |
const GNETagProperties & | getTagPropertyParent () const |
get reference to tagProperty parent | |
GNEAttributeProperties () | |
default constructor | |
GNEAttributeProperties (const SumoXMLAttr attribute, const int attributeProperty, const std::string &definition, std::string defaultValue="") | |
parameter constructor | |
bool | hasAttrRange () const |
return true if Attr correspond to an element that only accept a range of values | |
bool | hasAttrSynonym () const |
return true if Attr correspond to an element that will be written in XML with another name | |
bool | hasAutomaticID () const |
return true if attribute ID can generate an automatic ID | |
bool | hasDefaultValue () const |
return true if attribute owns a default value | |
bool | isActivatable () const |
return true if attribute is activatable | |
bool | isBool () const |
return true if attribute is boolean | |
bool | isColor () const |
return true if attribute is a color | |
bool | isDiscrete () const |
return true if attribute is discrete | |
bool | isExtended () const |
return true if attribute is extended | |
bool | isFilename () const |
return true if attribute is a filename | |
bool | isFloat () const |
return true if attribute is a float | |
bool | isFlowDefinition () const |
return true if attribute is part of a flow definition | |
bool | isInt () const |
return true if attribute is an integer | |
bool | isList () const |
return true if attribute is a list | |
bool | isNumerical () const |
return true if attribute is numerical (int or float) | |
bool | isPosition () const |
return true if attribute is a position | |
bool | isPositive () const |
return true if attribute is positive | |
bool | isProbability () const |
return true if attribute is a probability | |
bool | isSecuential () const |
return true if attribute is sequential | |
bool | isString () const |
return true if attribute is a string | |
bool | isSUMOTime () const |
return true if attribute is a SUMOTime | |
bool | isSVCPermission () const |
return true if attribute is a VehicleClass | |
bool | isUnique () const |
return true if attribute is unique | |
bool | isVClass () const |
return true if attribute is a VehicleClass | |
bool | isVClasses () const |
return true if attribute is a list of VClasses | |
bool | isVType () const |
return true if attribute is a VType or vTypeDistribution | |
bool | requireUpdateGeometry () const |
return true if attribute requires a update geometry in setAttribute(...) | |
void | setDefaultActivated (const bool value) |
set default activated value | |
void | setDiscreteValues (const std::vector< std::string > &discreteValues, bool showAll) |
set discrete values | |
void | setRange (const double minimum, const double maximum) |
set range | |
void | setSynonym (const SumoXMLAttr synonym) |
set synonim | |
void | setTagPropertyParent (GNETagProperties *tagPropertyParent) |
set tag property parent | |
bool | showAllDiscreteValues () const |
show all discrete values in the comboBox | |
~GNEAttributeProperties () | |
destructor | |
Private Attributes | |
SumoXMLAttr | myAttribute = SUMO_ATTR_NOTHING |
XML Attribute. | |
int | myAttributeProperty = STRING |
Property of attribute. | |
std::string | myAttrStr |
string with the Attribute in text format (to avoid unnecesaries toStrings(...) calls) | |
SumoXMLAttr | myAttrSynonym = SUMO_ATTR_NOTHING |
Attribute written in XML (If is SUMO_ATTR_NOTHING), original Attribute will be written) | |
bool | myDefaultActivated = false |
default activated (by default false) | |
std::string | myDefaultValue |
default value (by default empty) | |
std::string | myDefinition |
text with a definition of attribute | |
std::vector< std::string > | myDiscreteValues |
discrete values that can take this Attribute (by default empty) | |
double | myMaximumRange = 0 |
maxium Range | |
double | myMinimumRange = 0 |
minimun Range | |
bool | myShowAllDiscreteValues = false |
show all discrete values in ComboBox | |
GNETagProperties * | myTagPropertyParent = nullptr |
pointer to tagProperty parent | |
Definition at line 42 of file GNEAttributeProperties.h.
struct with the tag Properties
Definition at line 47 of file GNEAttributeProperties.h.
GNEAttributeProperties::GNEAttributeProperties | ( | ) |
default constructor
Definition at line 36 of file GNEAttributeProperties.cpp.
GNEAttributeProperties::GNEAttributeProperties | ( | const SumoXMLAttr | attribute, |
const int | attributeProperty, | ||
const std::string & | definition, | ||
std::string | defaultValue = "" |
||
) |
parameter constructor
Definition at line 39 of file GNEAttributeProperties.cpp.
References ACTIVATABLE, DEFAULTVALUE, FLOWDEFINITION, and toString().
GNEAttributeProperties::~GNEAttributeProperties | ( | ) |
destructor
Definition at line 65 of file GNEAttributeProperties.cpp.
void GNEAttributeProperties::checkAttributeIntegrity | ( | ) | const |
check Attribute integrity (For example, throw an exception if tag has a Float default value, but given default value cannot be parse to float)
Definition at line 69 of file GNEAttributeProperties.cpp.
References hasAttrRange(), hasAttrSynonym(), hasDefaultValue(), isBool(), isColor(), isFloat(), isInt(), isList(), isPosition(), isPositive(), isSecuential(), isSUMOTime(), myAttrSynonym, myDefaultValue, myMaximumRange, myMinimumRange, and SUMO_ATTR_NOTHING.
SumoXMLAttr GNEAttributeProperties::getAttr | ( | ) | const |
get XML Attribute
Definition at line 176 of file GNEAttributeProperties.cpp.
References myAttribute.
Referenced by GNETagProperties::addAttribute(), GNEAttributesCreatorRow::onCmdOpenAttributeDialog(), GNEAttributesCreatorRow::onCmdSetAttribute(), and GNEAttributesCreatorRow::refreshRow().
const std::string & GNEAttributeProperties::getAttrStr | ( | ) | const |
get XML Attribute
Definition at line 182 of file GNEAttributeProperties.cpp.
References myAttrStr.
Referenced by GNETagProperties::addAttribute(), GNEAttributesCreatorRow::refreshRow(), and GNETypeDistributionFrame::TypeAttributesEditorRow::TypeAttributesEditorRow().
SumoXMLAttr GNEAttributeProperties::getAttrSynonym | ( | ) | const |
get tag synonym
Definition at line 293 of file GNEAttributeProperties.cpp.
References hasAttrSynonym(), and myAttrSynonym.
bool GNEAttributeProperties::getDefaultActivated | ( | ) | const |
get default active value
Definition at line 217 of file GNEAttributeProperties.cpp.
References myDefaultActivated.
const std::string & GNEAttributeProperties::getDefaultValue | ( | ) | const |
get default value
Definition at line 211 of file GNEAttributeProperties.cpp.
References myDefaultValue.
Referenced by GNEAttributesCreatorRow::onCmdOpenAttributeDialog(), GNEAttributesCreatorRow::onCmdSetAttribute(), and GNEAttributesCreatorRow::refreshRow().
const std::string & GNEAttributeProperties::getDefinition | ( | ) | const |
get default value
Definition at line 205 of file GNEAttributeProperties.cpp.
References myDefinition.
Referenced by GNEAttributesCreatorRow::refreshRow(), and GNETypeDistributionFrame::TypeAttributesEditorRow::TypeAttributesEditorRow().
std::string GNEAttributeProperties::getDescription | ( | ) | const |
const std::vector< std::string > & GNEAttributeProperties::getDiscreteValues | ( | ) | const |
get discrete values
Definition at line 287 of file GNEAttributeProperties.cpp.
References myDiscreteValues.
Referenced by GNEAttributesCreatorRow::refreshRow().
double GNEAttributeProperties::getMaximumRange | ( | ) | const |
get maximum range
Definition at line 313 of file GNEAttributeProperties.cpp.
References hasAttrRange(), and myMaximumRange.
double GNEAttributeProperties::getMinimumRange | ( | ) | const |
get minimum range
Definition at line 303 of file GNEAttributeProperties.cpp.
References hasAttrRange(), and myMinimumRange.
int GNEAttributeProperties::getPositionListed | ( | ) | const |
get position in list (used in frames for listing attributes with certain sort)
Definition at line 194 of file GNEAttributeProperties.cpp.
References GNETagProperties::begin(), GNETagProperties::end(), myAttribute, and myTagPropertyParent.
const GNETagProperties & GNEAttributeProperties::getTagPropertyParent | ( | ) | const |
get reference to tagProperty parent
Definition at line 188 of file GNEAttributeProperties.cpp.
References myTagPropertyParent.
Referenced by GNEAttributesCreatorRow::generateID(), GNEFrameAttributeModules::isSupermodeValid(), and GNEAttributesCreatorRow::isValidID().
bool GNEAttributeProperties::hasAttrRange | ( | ) | const |
return true if Attr correspond to an element that only accept a range of values
Definition at line 334 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and RANGE.
Referenced by checkAttributeIntegrity(), getMaximumRange(), getMinimumRange(), and setRange().
bool GNEAttributeProperties::hasAttrSynonym | ( | ) | const |
return true if Attr correspond to an element that will be written in XML with another name
Definition at line 329 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and SYNONYM.
Referenced by checkAttributeIntegrity(), getAttrSynonym(), and setSynonym().
bool GNEAttributeProperties::hasAutomaticID | ( | ) | const |
return true if attribute ID can generate an automatic ID
Definition at line 484 of file GNEAttributeProperties.cpp.
References AUTOMATICID, and myAttributeProperty.
Referenced by GNEAttributesCreatorRow::refreshRow().
bool GNEAttributeProperties::hasDefaultValue | ( | ) | const |
return true if attribute owns a default value
Definition at line 323 of file GNEAttributeProperties.cpp.
References DEFAULTVALUE, and myAttributeProperty.
Referenced by checkAttributeIntegrity(), GNEAttributesCreatorRow::onCmdSetAttribute(), and GNEAttributesCreatorRow::refreshRow().
bool GNEAttributeProperties::isActivatable | ( | ) | const |
return true if attribute is activatable
Definition at line 472 of file GNEAttributeProperties.cpp.
References ACTIVATABLE, and myAttributeProperty.
Referenced by GNEAttributesCreatorRow::refreshRow(), and setDefaultActivated().
bool GNEAttributeProperties::isBool | ( | ) | const |
return true if attribute is boolean
Definition at line 358 of file GNEAttributeProperties.cpp.
References BOOL, and myAttributeProperty.
Referenced by checkAttributeIntegrity(), GNEAttributesCreatorRow::disableAttributesCreatorRow(), GNEAttributesCreatorRow::enableAttributesCreatorRow(), GNEAttributesCreatorRow::getValue(), GNEAttributesCreatorRow::isAttributesCreatorRowEnabled(), GNEAttributesCreatorRow::refreshRow(), and GNEAttributesCreatorRow::setAttributeCheckButtonCheck().
bool GNEAttributeProperties::isColor | ( | ) | const |
return true if attribute is a color
Definition at line 394 of file GNEAttributeProperties.cpp.
References COLOR, and myAttributeProperty.
Referenced by checkAttributeIntegrity(), and GNEAttributesCreatorRow::refreshRow().
bool GNEAttributeProperties::isDiscrete | ( | ) | const |
return true if attribute is discrete
Definition at line 442 of file GNEAttributeProperties.cpp.
References DISCRETE, and myAttributeProperty.
Referenced by GNEAttributesCreatorRow::disableAttributesCreatorRow(), GNEAttributesCreatorRow::enableAttributesCreatorRow(), GNEAttributesCreatorRow::getValue(), GNEAttributesCreatorRow::isAttributesCreatorRowEnabled(), GNEAttributesCreatorRow::refreshRow(), GNEAttributesCreatorRow::setAttributeCheckButtonCheck(), and setDiscreteValues().
bool GNEAttributeProperties::isExtended | ( | ) | const |
return true if attribute is extended
Definition at line 460 of file GNEAttributeProperties.cpp.
References EXTENDED, and myAttributeProperty.
bool GNEAttributeProperties::isFilename | ( | ) | const |
return true if attribute is a filename
Definition at line 406 of file GNEAttributeProperties.cpp.
References FILENAME, and myAttributeProperty.
bool GNEAttributeProperties::isFloat | ( | ) | const |
return true if attribute is a float
Definition at line 346 of file GNEAttributeProperties.cpp.
References FLOAT, and myAttributeProperty.
Referenced by checkAttributeIntegrity().
bool GNEAttributeProperties::isFlowDefinition | ( | ) | const |
return true if attribute is part of a flow definition
Definition at line 478 of file GNEAttributeProperties.cpp.
References FLOWDEFINITION, and myAttributeProperty.
bool GNEAttributeProperties::isInt | ( | ) | const |
return true if attribute is an integer
Definition at line 340 of file GNEAttributeProperties.cpp.
References INT, and myAttributeProperty.
Referenced by checkAttributeIntegrity().
bool GNEAttributeProperties::isList | ( | ) | const |
return true if attribute is a list
Definition at line 424 of file GNEAttributeProperties.cpp.
References LIST, and myAttributeProperty.
Referenced by checkAttributeIntegrity(), and GNENet::replaceInListAttribute().
bool GNEAttributeProperties::isNumerical | ( | ) | const |
return true if attribute is numerical (int or float)
Definition at line 382 of file GNEAttributeProperties.cpp.
References FLOAT, INT, myAttributeProperty, and SUMOTIME.
bool GNEAttributeProperties::isPosition | ( | ) | const |
return true if attribute is a position
Definition at line 370 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and POSITION.
Referenced by checkAttributeIntegrity().
bool GNEAttributeProperties::isPositive | ( | ) | const |
return true if attribute is positive
Definition at line 388 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and POSITIVE.
Referenced by checkAttributeIntegrity().
bool GNEAttributeProperties::isProbability | ( | ) | const |
return true if attribute is a probability
Definition at line 376 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and PROBABILITY.
bool GNEAttributeProperties::isSecuential | ( | ) | const |
return true if attribute is sequential
Definition at line 430 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and SECUENCIAL.
Referenced by checkAttributeIntegrity().
bool GNEAttributeProperties::isString | ( | ) | const |
return true if attribute is a string
Definition at line 364 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and STRING.
bool GNEAttributeProperties::isSUMOTime | ( | ) | const |
return true if attribute is a SUMOTime
Definition at line 352 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and SUMOTIME.
Referenced by checkAttributeIntegrity().
bool GNEAttributeProperties::isSVCPermission | ( | ) | const |
return true if attribute is a VehicleClass
Definition at line 418 of file GNEAttributeProperties.cpp.
References LIST, myAttributeProperty, and VCLASS.
bool GNEAttributeProperties::isUnique | ( | ) | const |
return true if attribute is unique
Definition at line 436 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and UNIQUE.
bool GNEAttributeProperties::isVClass | ( | ) | const |
return true if attribute is a VehicleClass
Definition at line 412 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and VCLASS.
bool GNEAttributeProperties::isVClasses | ( | ) | const |
return true if attribute is a list of VClasses
Definition at line 454 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and VCLASSES.
bool GNEAttributeProperties::isVType | ( | ) | const |
return true if attribute is a VType or vTypeDistribution
Definition at line 400 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and VTYPE.
bool GNEAttributeProperties::requireUpdateGeometry | ( | ) | const |
return true if attribute requires a update geometry in setAttribute(...)
Definition at line 466 of file GNEAttributeProperties.cpp.
References myAttributeProperty, and UPDATEGEOMETRY.
Referenced by GNEChange_Attribute::redo(), GNEVType::setAttribute(), and GNEChange_Attribute::undo().
void GNEAttributeProperties::setDefaultActivated | ( | const bool | value | ) |
set default activated value
Definition at line 131 of file GNEAttributeProperties.cpp.
References isActivatable(), and myDefaultActivated.
Referenced by GNEAttributeCarrier::fillCommonStopAttributes().
void GNEAttributeProperties::setDiscreteValues | ( | const std::vector< std::string > & | discreteValues, |
bool | showAll | ||
) |
set discrete values
Definition at line 120 of file GNEAttributeProperties.cpp.
References isDiscrete(), myDiscreteValues, and myShowAllDiscreteValues.
Referenced by GNEAttributeCarrier::fillCarFollowingModelAttributes(), GNEAttributeCarrier::fillCommonMeanDataAttributes(), GNEAttributeCarrier::fillCommonStopAttributes(), GNEAttributeCarrier::fillDemandElements(), and GNEAttributeCarrier::fillNetworkElements().
void GNEAttributeProperties::setRange | ( | const double | minimum, |
const double | maximum | ||
) |
set range
Definition at line 151 of file GNEAttributeProperties.cpp.
References hasAttrRange(), myMaximumRange, and myMinimumRange.
Referenced by GNEAttributeCarrier::fillCarFollowingModelAttributes(), and GNEAttributeCarrier::fillLaneChangingModelAttributes().
void GNEAttributeProperties::setSynonym | ( | const SumoXMLAttr | synonym | ) |
set synonim
Definition at line 141 of file GNEAttributeProperties.cpp.
References hasAttrSynonym(), and myAttrSynonym.
void GNEAttributeProperties::setTagPropertyParent | ( | GNETagProperties * | tagPropertyParent | ) |
set tag property parent
Definition at line 170 of file GNEAttributeProperties.cpp.
References myTagPropertyParent.
bool GNEAttributeProperties::showAllDiscreteValues | ( | ) | const |
show all discrete values in the comboBox
Definition at line 448 of file GNEAttributeProperties.cpp.
References myShowAllDiscreteValues.
Referenced by GNEAttributesCreatorRow::refreshRow().
|
private |
XML Attribute.
Definition at line 225 of file GNEAttributeProperties.h.
Referenced by getAttr(), and getPositionListed().
|
private |
Property of attribute.
Definition at line 234 of file GNEAttributeProperties.h.
Referenced by getDescription(), hasAttrRange(), hasAttrSynonym(), hasAutomaticID(), hasDefaultValue(), isActivatable(), isBool(), isColor(), isDiscrete(), isExtended(), isFilename(), isFloat(), isFlowDefinition(), isInt(), isList(), isNumerical(), isPosition(), isPositive(), isProbability(), isSecuential(), isString(), isSUMOTime(), isSVCPermission(), isUnique(), isVClass(), isVClasses(), isVType(), and requireUpdateGeometry().
|
private |
string with the Attribute in text format (to avoid unnecesaries toStrings(...) calls)
Definition at line 231 of file GNEAttributeProperties.h.
Referenced by getAttrStr().
|
private |
Attribute written in XML (If is SUMO_ATTR_NOTHING), original Attribute will be written)
Definition at line 252 of file GNEAttributeProperties.h.
Referenced by checkAttributeIntegrity(), getAttrSynonym(), and setSynonym().
|
private |
default activated (by default false)
Definition at line 243 of file GNEAttributeProperties.h.
Referenced by getDefaultActivated(), and setDefaultActivated().
|
private |
default value (by default empty)
Definition at line 240 of file GNEAttributeProperties.h.
Referenced by checkAttributeIntegrity(), and getDefaultValue().
|
private |
text with a definition of attribute
Definition at line 237 of file GNEAttributeProperties.h.
Referenced by getDefinition().
|
private |
discrete values that can take this Attribute (by default empty)
Definition at line 246 of file GNEAttributeProperties.h.
Referenced by getDiscreteValues(), and setDiscreteValues().
|
private |
maxium Range
Definition at line 258 of file GNEAttributeProperties.h.
Referenced by checkAttributeIntegrity(), getMaximumRange(), and setRange().
|
private |
minimun Range
Definition at line 255 of file GNEAttributeProperties.h.
Referenced by checkAttributeIntegrity(), getMinimumRange(), and setRange().
|
private |
show all discrete values in ComboBox
Definition at line 249 of file GNEAttributeProperties.h.
Referenced by setDiscreteValues(), and showAllDiscreteValues().
|
private |
pointer to tagProperty parent
Definition at line 228 of file GNEAttributeProperties.h.
Referenced by getPositionListed(), getTagPropertyParent(), and setTagPropertyParent().