Alexey Rybalchenko
882edbbdb8
Apply modernize-pass-by-value
2021-05-28 13:14:51 +02:00
Alexey Rybalchenko
c847a7ca02
Apply readability-container-size-empty
2021-05-28 13:14:51 +02:00
Alexey Rybalchenko
9444de5868
Apply readability-redundant-member-init
2021-05-28 13:14:51 +02:00
Alexey Rybalchenko
fc2241ece7
Fix incorrect channel index passed to OnData callback
2021-03-11 12:14:00 +01:00
Alexey Rybalchenko
1f26883b75
Formatting
2021-03-11 12:14:00 +01:00
Alexey Rybalchenko
751c53171c
Replace tools::make_unique with std::make_unique
2021-01-25 13:46:40 +01:00
Alexey Rybalchenko
ea746b17d0
Remove deprecated methods
2021-01-13 12:36:32 +01:00
Alexey Rybalchenko
cfa18ccfce
FairMQChannel: remove artifacts from no longer used optimizations
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
15de80cfd3
Detect network interface of the default route without use of ip
2020-01-17 16:48:31 +01:00
Alexey Rybalchenko
c34d1f0946
Cleanup includes
2019-10-29 20:06:31 +01:00
Alexey Rybalchenko
d8d293302d
Remove unused includes
2019-09-18 18:06:46 +02:00
Dennis Klein
6275f4d267
fairmq: Remove obsolete functions
2019-09-04 21:17:35 +02:00
Alexey Rybalchenko
f515eb1100
Extract state queue into own class. Use in device, plugins
2019-07-19 14:45:27 +02:00
Alexey Rybalchenko
8bb6a9518a
Use TransitionTo in Plugins
2019-07-19 14:45:27 +02:00
Alexey Rybalchenko
5256e7c580
Add support and test for concurrent TransitionTo
2019-07-19 14:45:27 +02:00
Alexey Rybalchenko
74d301a16f
Implement Device::TransitionTo() and test it
2019-07-19 14:45:27 +02:00
Alexey Rybalchenko
8be2fd33f4
Refactor some device code for better readability
2019-07-11 18:58:46 +02:00
Alexey Rybalchenko
48e04b636b
Initialize initialization timeout in InitWrapper()
2019-07-11 18:58:46 +02:00
Alexey Rybalchenko
937c9e8921
Clear channels & transports containers in Reset()
2019-07-11 18:58:46 +02:00
Alexey Rybalchenko
7c13503e22
Include definitions of constexpr members in cxx
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
cba6d19781
Add config plugin class.
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
bf8ec968e7
Remove FairMQChannel from parser, implement bulk operations
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
3538d9f410
Deprecate Channel::GetChannelX() in favor of Channel::GetX()
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
7e6eb382d5
Extend Readout example
2019-04-29 20:32:38 +02:00
Alexey Rybalchenko
2cc1117637
Notify all listeners on state changes
2019-04-29 20:32:37 +02:00
Alexey Rybalchenko
d9edcad845
Add backwards compatibility for removed ChangeState(int)
2019-02-26 16:13:09 +01:00
Alexey Rybalchenko
8375faf835
Add --max-run-time option and fix bug in LogSocketRates
2019-02-25 12:19:50 +01:00
Alexey Rybalchenko
fc94342db8
Update state machine
...
- Split INITIALIZING state into Init+Bind+Connect
- Remove PAUSE state
- Convert state/transitions to enum classes (CamelCase)
- Transition to a state only once previous handler is complete
- Add CompleteInit transition to notify Initializing state
that config updates are complete
- Deprecate WaitForEndOfState(transition) in favor of
WaitForState(state)/WaitForNextState()
- Update tests/plugins to new APIs
- Deprecate CheckCurrentState() in favor of NewStatePending()
2019-02-25 12:19:50 +01:00
Alexey Rybalchenko
25fcf13985
Move Bind/Connect/Attach to FairMQChannel
2018-11-13 11:08:48 +01:00
Alexey Rybalchenko
3b5b2b501f
Use exceptions for fatal errors in device/channel
...
- These will be caught by StateMachine::ProcessWork
and lead to error state.
- Solve issue where device goes into ready state if
it encounters misconfigured channel in the Run.
- deprecate WaitForInitialValidation().
2018-10-31 15:26:43 +01:00
mkrzewic
d40bbfe208
Equip FairMQMessage with pointer to factory (at creation)
...
the patch seems big but most of it is just propagating the new notion of
constness of the factory - since it keeps track of created messages with
the internal allocator it no longer is const
2018-10-31 13:12:38 +01:00
Alexey Rybalchenko
c40bd7d6a9
Apply clang-tidy suggestions [performance-faster-string-find]
2018-10-29 13:45:36 +01:00
Alexey Rybalchenko
4951433330
Apply clang-tidy suggestions [modernize-loop-convert]
2018-10-29 13:45:36 +01:00
Alexey Rybalchenko
f8824335a5
Add setters/getters for socket options
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
dfa1b68867
Make factory classes final (optimization potential)
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
44acd4997d
Implement nanomsg linger in our transport
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
cb199e7283
Fix throw after quit signal case
2018-10-10 19:35:18 +02:00
Alexey Rybalchenko
45354f268b
Use future instead of thread for device rateLogger
2018-10-10 19:35:18 +02:00
Dennis Klein
1aab354a5d
Resolve hanging process in case of uncaught exception
2018-10-10 19:35:18 +02:00
Alexey Rybalchenko
e1f555bc05
Fix issues found by Codacy
2018-10-08 17:20:02 +02:00
Alexey Rybalchenko
4123ebc9d4
Add interruptable FairMQDevice::WaitFor(duration) method
2018-09-20 14:05:44 +02:00
Alexey Rybalchenko
2498837b8e
Use new RateLimiter for ConditionalRun
2018-08-27 17:37:22 +02:00
Alexey Rybalchenko
1bb558a457
Refactor initialization
...
- add device constructor that accepts FairMQProgOptions object.
- Initialize config values in INIT state (to allow their update).
- Simplify FairMQProgOptions handling in FairMQDevice.
- Simplify SetTransport/SetConfig - refactor duplicated code.
- Add FairMQDevice methods to add channels.
2018-08-27 17:37:22 +02:00
Alexey Rybalchenko
21419adb40
Change unregistered options warning to debug
2018-06-16 17:40:05 +02:00
Alexey Rybalchenko
653e82cab4
Avoid copy (where possible) when switching transports
2018-06-08 13:10:06 +02:00
Alexey Rybalchenko
2894af803b
Add getter for cmd line args & align channel names in log
2018-06-06 16:04:08 +02:00
Alexey Rybalchenko
8b88e67360
Refactor FairMQProgOptions
2018-06-06 16:04:08 +02:00
Dennis Klein
72f5cdef58
Fix various warnings
...
-Wunused-parameter
-Wreorder
-Wsign-compare
-Wunused-private-field
2018-05-24 13:03:06 +02:00
Alexey Rybalchenko
d93dc2f7f7
Use enum transport types instead of strings in Channel/Device
2018-05-15 19:18:11 +02:00
Alexey Rybalchenko
7a4fd96b27
Fix namespaces in Transports.h and add conversion map
2018-05-15 19:18:11 +02:00