Skip to content
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

Place IMGUI UIs into a separate common module #25131

Merged
merged 14 commits into from
Feb 17, 2023

Conversation

andy31415
Copy link
Contributor

@andy31415 andy31415 commented Feb 16, 2023

This allows any app to add UIs on linux and mac. Specifically any app can add a QR code for sure and then we can develop various cluster views as needed.

This does not add new functionality, just makes things more modular.

image

src/app/util/types_stub.h Outdated Show resolved Hide resolved
examples/common/imgui_ui/ui.cpp Outdated Show resolved Hide resolved
examples/common/imgui_ui/ui.cpp Outdated Show resolved Hide resolved
examples/common/imgui_ui/ui.cpp Show resolved Hide resolved
@github-actions
Copy link

PR #25131: Size comparison from c32ca61 to 6471755

Increases (5 builds for bl602, bl702, cc32xx)
platform target config section c32ca61 6471755 change % change
bl602 lighting-app bl602 .text 1025366 1025368 2 0.0
bl602+rpc .text 1056042 1056044 2 0.0
bl702 lighting-app bl702 .debug_info 40664853 40664854 1 0.0
.text 954764 954766 2 0.0
bl702+rpc (read/write) 1280607 1280623 16 0.0
.debug_info 45074209 45074211 2 0.0
.text 1032158 1032162 4 0.0
cc32xx lock CC3235SF_LAUNCHXL .debug_info 20347053 20347055 2 0.0
Full report (9 builds for bl602, bl702, cc32xx, linux, qpg)
platform target config section c32ca61 6471755 change % change
bl602 lighting-app bl602 (read/write) 1349102 1349102 0 0.0
.bss 94834 94834 0 0.0
.data 9736 9736 0 0.0
.text 1025366 1025368 2 0.0
bl602+rpc (read/write) 1394270 1394270 0 0.0
.bss 102882 102882 0 0.0
.data 10128 10128 0 0.0
.text 1056042 1056044 2 0.0
bl702 lighting-app bl702 0 0 0 0.0
(read only) 3358 3358 0 0.0
(read/write) 1187451 1187451 0 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 292 292 0 0.0
.bss 69937 69937 0 0.0
.bss_psram 30064 30064 0 0.0
.comment 48 48 0 0.0
.data 4056 4056 0 0.0
.debug_abbrev 1552964 1552964 0 0.0
.debug_aranges 134384 134384 0 0.0
.debug_frame 492440 492440 0 0.0
.debug_info 40664853 40664854 1 0.0
.debug_line 5282334 5282334 0 0.0
.debug_loc 3414245 3414245 0 0.0
.debug_ranges 372192 372192 0 0.0
.debug_str 3575377 3575377 0 0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 144 144 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 107552 107552 0 0.0
.rsvd 2960 2960 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 574023 574023 0 0.0
.symtab 173584 173584 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3358 3358 0 0.0
.text 954764 954766 2 0.0
bl702+rpc 0 0 0 0.0
(read only) 3358 3358 0 0.0
(read/write) 1280607 1280623 16 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 292 292 0 0.0
.bss 77985 77985 0 0.0
.bss_psram 30320 30320 0 0.0
.comment 48 48 0 0.0
.data 4608 4608 0 0.0
.debug_abbrev 1701454 1701454 0 0.0
.debug_aranges 142616 142616 0 0.0
.debug_frame 520188 520188 0 0.0
.debug_info 45074209 45074211 2 0.0
.debug_line 5681330 5681330 0 0.0
.debug_loc 3611163 3611163 0 0.0
.debug_ranges 395960 395960 0 0.0
.debug_str 3978881 3978881 0 0.0
.hbn 536 536 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 160 160 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 122192 122192 0 0.0
.rsvd 2960 2960 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 635082 635082 0 0.0
.symtab 192048 192048 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3358 3358 0 0.0
.text 1032158 1032162 4 0.0
cc32xx lock CC3235SF_LAUNCHXL 0 0 0 0.0
(read only) 641857 641857 0 0.0
(read/write) 204124 204124 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197528 197528 0 0.0
.comment 194 194 0 0.0
.data 1476 1476 0 0.0
.debug_abbrev 931515 931515 0 0.0
.debug_aranges 87464 87464 0 0.0
.debug_frame 300232 300232 0 0.0
.debug_info 20347053 20347055 2 0.0
.debug_line 2658245 2658245 0 0.0
.debug_loc 2791387 2791387 0 0.0
.debug_ranges 281600 281600 0 0.0
.debug_str 3015122 3015122 0 0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 105697 105697 0 0.0
.shstrtab 232 232 0 0.0
.stab 204 204 0 0.0
.stabstr 441 441 0 0.0
.stack 2048 2048 0 0.0
.strtab 376514 376514 0 0.0
.symtab 256016 256016 0 0.0
.text 534036 534036 0 0.0
linux chip-tool-ipv6only arm64 (read only) 12050772 12050772 0 0.0
(read/write) 729208 729208 0 0.0
.bss 34248 34248 0 0.0
.data 3008 3008 0 0.0
.data.rel.ro 671424 671424 0 0.0
.dynamic 560 560 0 0.0
.got 15328 15328 0 0.0
.init 24 24 0 0.0
.init_array 208 208 0 0.0
.rodata 585300 585300 0 0.0
.text 9735204 9735204 0 0.0
thermostat-no-ble arm64 (read only) 2517204 2517204 0 0.0
(read/write) 145320 145320 0 0.0
.bss 56488 56488 0 0.0
.data 1824 1824 0 0.0
.data.rel.ro 77544 77544 0 0.0
.dynamic 560 560 0 0.0
.got 5408 5408 0 0.0
.init 24 24 0 0.0
.init_array 432 432 0 0.0
.rodata 151232 151232 0 0.0
.text 2103680 2103680 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1150556 1150556 0 0.0
.bss 99932 99932 0 0.0
.data 848 848 0 0.0
.text 597656 597656 0 0.0
lock-app qpg6105+debug (read/write) 1117820 1117820 0 0.0
.bss 96428 96428 0 0.0
.data 860 860 0 0.0
.text 564916 564916 0 0.0

@github-actions
Copy link

PR #25131: Size comparison from c32ca61 to 7a9f3b2

Increases (1 build for cc32xx)
platform target config section c32ca61 7a9f3b2 change % change
cc32xx lock CC3235SF_LAUNCHXL .debug_loc 2791387 2791404 17 0.0
Decreases (1 build for cc32xx)
platform target config section c32ca61 7a9f3b2 change % change
cc32xx lock CC3235SF_LAUNCHXL .debug_abbrev 931515 930151 -1364 -0.1
.debug_info 20347053 20330253 -16800 -0.1
.debug_line 2658245 2658243 -2 -0.0
.debug_str 3015122 3015052 -70 -0.0
Full report (1 build for cc32xx)
platform target config section c32ca61 7a9f3b2 change % change
cc32xx lock CC3235SF_LAUNCHXL 0 0 0 0.0
(read only) 641857 641857 0 0.0
(read/write) 204124 204124 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197528 197528 0 0.0
.comment 194 194 0 0.0
.data 1476 1476 0 0.0
.debug_abbrev 931515 930151 -1364 -0.1
.debug_aranges 87464 87464 0 0.0
.debug_frame 300232 300232 0 0.0
.debug_info 20347053 20330253 -16800 -0.1
.debug_line 2658245 2658243 -2 -0.0
.debug_loc 2791387 2791404 17 0.0
.debug_ranges 281600 281600 0 0.0
.debug_str 3015122 3015052 -70 -0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 105697 105697 0 0.0
.shstrtab 232 232 0 0.0
.stab 204 204 0 0.0
.stabstr 441 441 0 0.0
.stack 2048 2048 0 0.0
.strtab 376514 376514 0 0.0
.symtab 256016 256016 0 0.0
.text 534036 534036 0 0.0

@github-actions
Copy link

PR #25131: Size comparison from c32ca61 to 1c2a2fb

Increases (1 build for cc32xx)
platform target config section c32ca61 1c2a2fb change % change
cc32xx lock CC3235SF_LAUNCHXL .debug_loc 2791387 2791404 17 0.0
Decreases (1 build for cc32xx)
platform target config section c32ca61 1c2a2fb change % change
cc32xx lock CC3235SF_LAUNCHXL .debug_abbrev 931515 930151 -1364 -0.1
.debug_info 20347053 20330255 -16798 -0.1
.debug_line 2658245 2658243 -2 -0.0
.debug_str 3015122 3015052 -70 -0.0
Full report (1 build for cc32xx)
platform target config section c32ca61 1c2a2fb change % change
cc32xx lock CC3235SF_LAUNCHXL 0 0 0 0.0
(read only) 641857 641857 0 0.0
(read/write) 204124 204124 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197528 197528 0 0.0
.comment 194 194 0 0.0
.data 1476 1476 0 0.0
.debug_abbrev 931515 930151 -1364 -0.1
.debug_aranges 87464 87464 0 0.0
.debug_frame 300232 300232 0 0.0
.debug_info 20347053 20330255 -16798 -0.1
.debug_line 2658245 2658243 -2 -0.0
.debug_loc 2791387 2791404 17 0.0
.debug_ranges 281600 281600 0 0.0
.debug_str 3015122 3015052 -70 -0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 105697 105697 0 0.0
.shstrtab 232 232 0 0.0
.stab 204 204 0 0.0
.stabstr 441 441 0 0.0
.stack 2048 2048 0 0.0
.strtab 376514 376514 0 0.0
.symtab 256016 256016 0 0.0
.text 534036 534036 0 0.0

examples/common/imgui_ui/ui.cpp Outdated Show resolved Hide resolved
examples/common/imgui_ui/ui.cpp Outdated Show resolved Hide resolved
@github-actions github-actions bot removed the app label Feb 17, 2023
@github-actions
Copy link

PR #25131: Size comparison from d684ecc to d219ead

Full report (1 build for cc32xx)
platform target config section d684ecc d219ead6 change % change
cc32xx lock CC3235SF_LAUNCHXL 0 0 0 0.0
(read only) 642473 642473 0 0.0
(read/write) 203784 203784 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197184 197184 0 0.0
.comment 194 194 0 0.0
.data 1480 1480 0 0.0
.debug_abbrev 934705 934705 0 0.0
.debug_aranges 87536 87536 0 0.0
.debug_frame 300464 300464 0 0.0
.debug_info 20372650 20372650 0 0.0
.debug_line 2662287 2662287 0 0.0
.debug_loc 2797042 2797042 0 0.0
.debug_ranges 281936 281936 0 0.0
.debug_str 3021415 3021415 0 0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 105705 105705 0 0.0
.shstrtab 232 232 0 0.0
.stab 204 204 0 0.0
.stabstr 441 441 0 0.0
.stack 2048 2048 0 0.0
.strtab 377819 377819 0 0.0
.symtab 256352 256352 0 0.0
.text 534648 534648 0 0.0

@andy31415 andy31415 merged commit 6e82863 into project-chip:master Feb 17, 2023
lecndav pushed a commit to lecndav/connectedhomeip that referenced this pull request Mar 22, 2023
* Modularize imgui - split windows and ready to add into any app

* Comment update

* Added extra assert

* Switch to using a work scheduler instead of a stack lock for state updates

* Restyle

* typo fix

* Update to sem_wait

* Restyle

* Generate shutdown event before stoppign the event loop task

* Restyle

* Update the code to not reference Server (would not compile otherwise)

* Use a semaphore to wait for UI to send the shutdown. Also update comments

* Restyle

---------

Co-authored-by: Andrei Litvin <andreilitvin@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants