17b902ebcc
add PIClientServer::Config, common configuration type for both sides, stream packer and encryption settings
2024-09-13 11:08:32 +03:00
996b7ea403
important:
...
* PIThread::~PIThread() now unregister itself from introspection, if terminates than show warning
* PISystemMonitor now correctly stops
* PIPeer now can correctly stopAndWait
* PIPeer::destroy(), protected method for close all eths and threads
* new PIINTROSPECTION_STOP macro
* Introspection now can be correctly stopped by macro, more safety
ClientServer:
* ClientBase::close() stop and disconnect channel
* Server clients clean-up now event-based
* No warnings on client destructor
2024-09-12 17:07:48 +03:00
da4b09be9e
PIEthernet fix tcp-server close (properly delete all clients)
...
PIEthernet::stopThreadedListen() method
decompose client to 2 implementations - server-side and client-side
2024-09-11 21:41:55 +03:00
b24b5a1346
add encryption
2024-09-11 15:44:02 +03:00
0d94699206
first try, works
2024-09-11 10:18:45 +03:00
af8c096c7a
PIStateMachine "addOnFinish" renamed to "setOnFinish"
2024-08-28 13:48:33 +03:00
e6c8714857
version 4.1.0
...
maybe fix hang on PIEthernet::interrupt()
replace piLetobe with piChangeEndian:
* piChangeEndianBinary
* piChangeBinary
* piChangedBinary
PIDiagnostics::start now accept PISystemTime instead of number
add PITimer::start(PISystemTime, std::function<void()>) overload
2024-08-28 11:56:36 +03:00
33fc334077
PIStateMachine::postEvent() now thread-safe and can be recursive
2024-08-05 23:25:23 +03:00
7d02f710ea
add PIPackedTCP
2024-08-02 14:43:42 +03:00
abdba6d68b
state machine, parallel seems to work, final state and info about active atomic states
2024-07-17 21:11:01 +03:00
3db26a762c
first state machine code, exclusive already works
...
need to make final, parallel, timeouts
2024-07-17 14:16:25 +03:00
d4a024ea75
remove harmful createPIPair()
2024-05-06 19:22:22 +03:00
04d3e31dbc
PISet fix
2024-04-05 21:02:37 +03:00
f47bc411bc
version 3.16.0
...
new PISystemTime::Frequency type
2024-03-05 17:55:25 +03:00
7efdacc979
main fix
2023-12-09 07:19:28 +03:00
b8fc44714c
version 3.15.0 - improved pip_cmg and PICodeInfo storage
...
Important! changed API to access PICodeInfo storage
2023-12-08 16:14:18 +03:00
ac76e07d9d
version 3.13.2
2023-07-14 22:14:02 +03:00
35aadb0e78
doc and brush
2023-07-04 13:08:37 +03:00
ccae1a7311
more literals, use some in PIP, small refactor PIThread::start (clang-format mistakes)
2023-07-02 14:02:10 +03:00
d1193e7aa1
version 3.12.1
...
add piliterals.h
2023-06-29 18:20:24 +03:00
1a214cff4e
version 3.12.0
...
split pibase.h into 2 files
add PIScopeExitCall
2023-06-18 22:02:20 +03:00
badcfac616
some PIValueTree changes, fix PIVariantTypes::Enum::fromString
2022-12-15 13:05:15 +03:00
c2b8a8d6da
code format
2022-12-14 14:13:52 +03:00
c74ba871cd
pivariant, enum, tiny format
2022-12-13 21:44:06 +03:00
c4cb81a104
PIJSON::toJSON with optionally unicode masking
...
PIVariantTypes::Color::toName()
2022-12-08 13:21:11 +03:00
cf5284a244
color collection, now only CSS colors
...
PIVariantTypes::Color from/to string (with CSS names)
2022-12-05 19:16:48 +03:00
b25ecf42fb
PIValueTreeConversions text, options
...
PIVariant fixes
2022-12-04 18:27:54 +03:00
5bb9477b5b
PIVariant string conversions, PIDateTime::fromString
2022-11-30 22:40:28 +03:00
d3d2b4281c
PIP_ADD_COUNTER now almost unique across different cpp
...
add PIValueTree
2022-11-28 14:41:12 +03:00
6e13ee173e
PIVariant::fromType() methods
2022-11-27 12:40:31 +03:00
a786c928e0
PIVariant custom casts works
2022-11-27 12:13:11 +03:00
e9128771db
version 3.6.0
...
another fixes in PIEthernet
remove PIThread::interrupt()
piwaitevent patches
2022-11-12 13:31:26 +03:00
4994d0bf66
condvar fixes
2022-11-10 14:11:40 +03:00
702d1642e0
PITimer thread imp changed from PIWaitEvent to PIConditionalVariable
2022-11-10 13:47:57 +03:00
d34374d4e0
missing
2022-11-10 12:29:49 +03:00
398d760ba9
PIObject::deleteLater important fix
...
PIWaitEvent::sleep() method
PITimer thread imp wait optimization, migrate to interruptable sleeps
2022-11-10 12:26:08 +03:00
8a5e72c723
migrate to async IO model
...
new PIIODevice::interrupt() virtual method
new PIWaitEvent private class
PIEthernet and PISerial basically tested on Windows and Linux
2022-11-05 23:43:07 +03:00
e48d0ebaab
linux signal
2022-11-01 09:38:27 +03:00
591c92b4bb
ready to test
2022-11-01 09:17:24 +03:00
6e81a419fb
start move to interruption of blocking calls, PIThread and PIEthernet
2022-11-01 00:02:44 +03:00
3c7e117661
PIJSON doc and << operator
2022-09-30 21:09:57 +03:00
44876836c5
PIJSON improvements and doc reference
2022-09-28 18:08:19 +03:00
2d2f6b254b
add PIJSON, yet without doc
2022-09-26 17:49:58 +03:00
858b54ce64
pistring::toFloat/Double/LDouble precise fixes
2022-09-19 15:20:24 +03:00
499ee386a7
PIString::toFloat/Double/LDouble own fast implementation (. and , equivalent)
...
PICout ldouble support
PIEthernet small optimization
2022-09-17 17:53:58 +03:00
67561636e5
return move-assignment dequeue optimization
2022-08-12 23:53:22 +03:00
Бычков Андрей
00f7a24d54
new caontainers functions
...
atWhere()
lastAtWhere()
contains(v)
filter(), map(), reduce(), forEach() indexed and reverse variants
fix PIDeque reverse for
fix insert with move of complex type potential segfault
2022-08-12 18:14:55 +03:00
Бычков Андрей
724a2dffcf
picout and clean
2022-08-08 16:44:37 +03:00
eb91fbfc45
doc stream
2022-08-01 21:23:21 +03:00
4ea5465637
PIString:: mid and cutMid does nothing if "start" < 0
2022-08-01 19:29:40 +03:00