andrey
7af2b0bb07
remove some ifdefs
2026-08-12 15:12:36 +03:00
andrey
077ac9887b
refactor: rename PIP_NO_\* to PIP_HAS_\* with inverted logic
...
All feature flags now use positive naming (enabled by default):
- PIP_HAS_FILESYSTEM, PIP_HAS_THREADS, PIP_HAS_SOCKET
- PIP_HAS_PROCESS, PIP_HAS_DYNLIB, PIP_HAS_FFT, PIP_HAS_SERIAL
Preprocessor guards inverted:
- #ifndef PIP_NO_X → #ifdef PIP_HAS_X
- #ifdef PIP_NO_X → #ifndef PIP_HAS_X
CMake options default ON instead of OFF.
Platform blocks set flags OFF to disable features.
85 files transformed via Python script + 2 manual fixes.
2026-08-11 19:51:42 +03:00
andrey
fd578ea927
fix: address review issues from MICRO_PIP migration
...
- piconditionvar.h: remove phantom wait(lk, timeout) stubs not in real class
- pithread.h: remove duplicate #ifndef PIP_NO_THREADS guard
- piscreendrawer/tile/tiles.cpp: remove duplicate #if !defined(PICO_SDK)
- cmake/FindPIP.cmake: replace PIP_MICRO with PIP_EMBEDDED
2026-08-11 15:26:55 +03:00
andrey
4d8b743075
refactor: migrate MICRO_PIP to fine-grained feature flags
...
Replace monolithic MICRO_PIP/PIP_MICRO with granular flags:
Feature flags (CMake options + platform auto-detection):
- PIP_NO_FILESYSTEM, PIP_NO_THREADS, PIP_NO_SOCKET
- PIP_NO_PROCESS, PIP_NO_DYNLIB, PIP_NO_FFT, PIP_NO_SERIAL
Embedded optimization flag:
- PIP_EMBEDDED (auto-set for Pico SDK and FreeRTOS)
Controls buffer sizes, time stubs, terminal fallback, init stubs
Platform blocks in CMakeLists.txt:
- Pico SDK: auto-disables FS, PROCESS, DYNLIB, FFT, SERIAL;
conditionally disables THREADS (no FreeRTOS) and SOCKET (no LWIP)
- FreeRTOS: auto-disables FS, PROCESS, DYNLIB, FFT, SERIAL;
conditionally disables SOCKET (no LWIP)
- Android: auto-disables PROCESS, DYNLIB, FFT
Updated 96 files across libs/, utils/, tests/, and CMakeLists.txt.
Builds verified for Linux (547 tests pass) and Pico SDK (100%).
Removed all MICRO_PIP and PIP_MICRO references (0 remaining).
2026-08-11 14:34:59 +03:00
andrey
4e7a5d58aa
Merge branch 'master' into pico_sdk
2026-03-29 12:28:36 +03:00
andrey
a450235743
PIP_NO_FILESYSTEM and PIP_NO_THREADS
2026-03-29 12:22:35 +03:00
peri4
3102b985d5
add new PIThreadPoolWorker - rework of PIThreadPoolExecutor
2026-03-24 14:09:41 +03:00
peri4
ed13838237
merged AI doc, some new pages
2026-03-12 14:46:57 +03:00
peri4
d01baffb0b
PITimeMeasurer remove some API, add elapsedAndReset()
...
got rid off some warnings
2025-01-17 11:49:24 +03:00
peri4
82cda42e75
change last logic to PIThreadNotifier
2025-01-15 18:38:50 +03:00
peri4
0dd47f50a0
version 4.6.0
...
PIThreadNotifier::waitFor() new method
PIThread::waitForFinish() now use condvar to exit as soon as possible
2025-01-15 17:57:16 +03:00
peri4
15548de79c
version 4.5.0
...
PIThread::stopAndWait now returns bool
PIKbdListener on Linux now use piwaitevent_p and can immediately stop
new base method piZeroMemory, also migrate all "memset 0" to piZeroMemory
2024-12-29 11:48:24 +03:00
peri4
49713ddc57
PIThread now setup itself in thread func
2024-12-29 10:50:38 +03:00
peri4
1c7fc39b6c
version 4.0.0_alpha
...
in almost all methods removed timeouts in milliseconds, replaced to PISystemTime
PITimer rewrite, remove internal impl, now only thread implementation, API similar to PIThread
PITimer API no longer pass void*
PIPeer, PIConnection improved stability on reinit and exit
PISystemTime new methods
pisd now exit without hanging
2024-07-30 14:18:02 +03:00
peri4
903b320629
version 3.21.0
...
add PISystemTime overload for thread/timer/io classes
2024-07-09 16:32:27 +03:00
peri4
ccae1a7311
more literals, use some in PIP, small refactor PIThread::start (clang-format mistakes)
2023-07-02 14:02:10 +03:00
peri4
c2b8a8d6da
code format
2022-12-14 14:13:52 +03:00
peri4
e9128771db
version 3.6.0
...
another fixes in PIEthernet
remove PIThread::interrupt()
piwaitevent patches
2022-11-12 13:31:26 +03:00
Бычков Андрей
d9eac06749
pithread, pitimer stop, stopAndWait
2022-11-09 17:17:21 +03:00
peri4
db5c4dcf3f
PIThread::stopAndWait
2022-11-09 17:02:28 +03:00
peri4
6e81a419fb
start move to interruption of blocking calls, PIThread and PIEthernet
2022-11-01 00:02:44 +03:00
peri4
a4882dc054
complex macros with ;
2022-07-25 11:18:09 +03:00
peri4
7f93ba55b4
doc
2022-04-23 12:37:55 +03:00
peri4
39e4d9a73c
doc ru
2022-04-22 21:19:12 +03:00
peri4
9deae168a6
thread doc ru
2022-04-21 22:26:49 +03:00
peri4
00830958df
doc ru, printf() before assert in containers
2022-04-12 23:17:05 +03:00
peri4
d5c27b1181
doc groups
2022-04-06 20:11:47 +03:00
peri4
54b5372356
doxygen @ tags replaced to \
2022-03-14 21:19:31 +03:00
Andrey
8296e9a32b
add FreeRTOS support for PIThread PIMutex PIConditionVariable
2022-01-21 14:15:42 +03:00
Andrey
6e5a5a6ade
remove msleep, clean PIConditionVariable, rewrite pipipelinethread, etc...
2021-10-29 16:52:03 +03:00
andrey
25def958a1
rename doc macros
2021-08-04 16:31:32 +03:00
peri4
ccd6a9888f
tree changes
2020-08-19 00:47:05 +03:00