-
-
Notifications
You must be signed in to change notification settings - Fork 221
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rework applicative options #1580
Rework applicative options #1580
Conversation
dd2fd46
to
1fc20c5
Compare
ae494db
to
59c1dc6
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1580 +/- ##
==========================================
- Coverage 96.85% 96.82% -0.04%
==========================================
Files 107 108 +1
Lines 7694 7643 -51
==========================================
- Hits 7452 7400 -52
- Misses 242 243 +1 ☔ View full report in Codecov by Sentry. |
db0195d
to
079b64b
Compare
There has been an issue in the past with
|
Absolutely correct! |
af4af35
to
0bc1752
Compare
d5a184e
to
9d0ee0d
Compare
abb270f
to
934cdb0
Compare
934cdb0
to
86ebfbd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Last minor nitpicking but please change the web app too.
86ebfbd
to
bac40fd
Compare
Implementation: - Create a new F3DOptionsTools namespace that declare all app options and corresponding libf3d options and parse CLI - Expose F3DConfigFileTools and update the config parsing feature - Rewrite fully F3DStarter to use F3DOptionsTools and F3DConfigFileTools relying on a clear logic The logic is: - Parse the CLI once, store the CLI options in a single OptionsDict in a OptionsEntries - Parse the config file once, store in a OptionEntries - Update the app and lib options with `config < cli` logic without a provided filename - Finish engine, window initialization - Create a dynamic OptionsDict containing the changed options and emplace in DynamicOptionsEntries - Update the app and lib options with `config < cli < dynamic ` logic with filename Other features: - `--input` is back as a proper positional cli option! - Add support for using libf3d option names in config - Add GetClosestOption for configs
…--coloring-array` - Remove `--scalars, -s` - Introduce `--scalar-coloring, -s` option and corresponding libf3d option - Introduce `coloring-array` option and corresponding libf3d option - Update tests and configs - Add an `enable` boolean to the SetColoring API - Update API usage in window and interactor - Remove fully F3D_RESERVED* constants
bac40fd
to
0555a6e
Compare
Complete refactoring of the options parsing mechanism in F3D application.
Implementation:
- Create a new F3DOptionsTools namespace that declare all app options and corresponding libf3d options and parse CLI
- Expose F3DConfigFileTools and update the config parsing feature
- Rewrite fully F3DStarter to use F3DOptionsTools and F3DConfigFileTools relying on a clear logic
The logic is:
- Parse the CLI once, store the CLI options in a single OptionsDict in a OptionsEntries
- Parse the config file once, store in a OptionEntries
- Update the app and lib options with
config < cli
logic without a provided filename- Finish engine, window initialization
- Create a dynamic OptionsDict containing the changed options and emplace in DynamicOptionsEntries
- Update the app and lib options with
config < cli < dynamic
logic with filenameOther features:
-
--input
is back as a proper positional cli option!-
--scalars, -s
is now split into--scalar-coloring, -s
and--coloring-array
, with F3D, F3DWeb, libf3d and vtkext related changes- Add support for using libf3d option names in config
- Add GetClosestOption for configs
- Remove support for
f3d --option val
,=
must be used: jarro2783/cxxopts#211Fixes: #1569 #434 #1114
In other PRs:
-D
--define
support: Add a-D
--define
option to set libf3d options directly #1600