Commit Graph

18 Commits

Author SHA1 Message Date
Robert Haschke
81d88911a9 cosmetic fixes 2018-03-23 17:18:56 +01:00
Robert Haschke
94bb50ddc1 fixup! PropertyMap: different exception types 2018-02-24 13:42:18 +01:00
v4hn
30de5e1a8c add catch-rethrow for property initialization
The property doesn't know its own name, so we add it here
2018-02-24 13:42:18 +01:00
Robert Haschke
e9d1742337 ContainerBase::exposePropertiesOfChild 2018-02-24 13:42:18 +01:00
Robert Haschke
8152614d33 properties: init from source if current value is not defined
- reset(): reset current value to empty, not default
- value(): return current value, or - if not defined - the default
- initialize from source if current value is undefined,
  don't care about default value
2018-02-24 13:42:18 +01:00
Robert Haschke
0c8c298450 declare by std::type_index (instead of std::type_info) 2018-02-24 13:42:18 +01:00
Robert Haschke
6444229877 Stage::reportPropertyError 2018-02-24 13:42:18 +01:00
Robert Haschke
da9cdb5cf6 PropertyMap: different exception types
undeclared
undefined
type_error
2018-02-24 13:42:18 +01:00
Robert Haschke
fe2c4f312e serialize stage properties 2018-02-12 22:45:15 +01:00
Robert Haschke
5ff78f653e signal callback function
... to allow for syncing with rviz::Property
2018-02-12 22:45:15 +01:00
Robert Haschke
c3eead0115 allow only a single inititialization source 2018-02-12 22:45:15 +01:00
Robert Haschke
3ab899a9a8 cleanup error handling
throw std::logic_error on type errors
throw std::runtime_error on undeclared property
don't expose generic PropertyMap::declare()
2018-02-04 08:56:11 +01:00
Robert Haschke
f6253c46a4 generalize initialization source from enum to int 2018-02-04 08:56:11 +01:00
Robert Haschke
59fe1e7860 separate setValue() and setCurrentValue()
setValue() also updates the default value.
reset() reset to the default value.
setCurrentValue() only updates the current value, keeping current default.
Thus setCurrentValue() can be reverted (to default) using reset().
2018-02-04 08:55:58 +01:00
Robert Haschke
d62b85572a remove property name from InitializerFunction's signature 2018-02-03 21:45:40 +01:00
Robert Haschke
0d6dbee215 initFrom() -> configureInitFrom() + performInitFrom()
Use different function names for different semantics.
2018-02-03 21:45:40 +01:00
Robert Haschke
32a0de6bf3 countDefined(): count number of defined properties 2018-02-03 21:45:40 +01:00
Robert Haschke
7d8f8dfc8d PropertyMap 2017-12-13 14:19:20 +01:00