- OnData() channel data handler.
- ConditionalRun() for devices without incoming data.
- Header file with common main(), to be extended with getDevice/addCustomOptions.
- Update examples (MQ/Tutorial3) to use the new API and config.
- NewSimpleMessage() for simpler creation of small messages (additional copy).
- Replace SetProperty/GetProperty with fConfig access.
- Runtime configurable channel names for common devices.
- Configurable logging interval per channel.
- FairMQMultiplier for distributing same data to multiple outputs.
- Cleanup state machine messages.
- Cmd option to toggle signal handling.
- Simpler API for send/receive timeouts.
- Enable --log-to-file.
- Fix coverity issues, warnings.
- Various code cleanup and minor tweaks.
- removed the obsolete startFairMQEx9.sh.in script
- added all *.root files in example9/macros/ to .gitignore;
- added run_digi.C to tests;
- added startFairMQEx9_Static.sh to tests;
- startFairMQEx9_Static.sh - script that will run the example non-interactively, statically;
- Pixel9MQConfig_Multipart.json - added acknowledgement channel to sampler and sink;
- runEx9Sampler.cxx and runEx9FileSink.cxx - added option to set the ack channel name;
- FairMQEx9FileSink - if ack channel name set, send acknowledgement of received message, save the tree and file at the end of Run;
- FairMQEx9Sampler - if ack channel name set, count acknowledgements and finish only if all events processed;
- FairMQEx9TaskProcessor - moved some printouts to debug.
General:
- fairmq/logger/logger.cxx - fixed colorless logger bug;
- parmq/runParameterMQServer.cxx - now using runStateMachine function (to enable static execution).
- Update DDS example command UI and extract it from example.
- Unify address handling via DDS properties for dynamic deployment.
- Update DDS docs with the new approach.
- Allow `--config-key` to be used to access common config in JSON.
- Allow common channel properties to be specified for all sockets.
- Update MQ examples and Tuto3 with new config options.
- Add start scripts to MQ examples for easier use.
Switch of compiler warnings for part of the code.
The compiler flag -Weffc++ of the gcc compiler creates many warnings about non virtual destructor of base classes where the
base class is actually a class from boost or from stl. Switch of the compiler flag for the problematic parts of the code
using preprocessor statements. There are also such preprocessor guards for code which creates many warnings when
using clang.
Filter warnings comming from generated files.
When using CTest all warnings comming from generated code (Root Dictionaries, code generated by protoc) will be filtered
before sending the results to the CDash web server.
Remove unused variables or use them.
Initialize all data members in initializer lists.
Use in initializer list the same order of data members as defined in the class declaration.
Declare private copy constructors and assignment operators where needed.
Fix format problems in printf statements.
Correctly cast the variables.
- Add FlatBuffers serialization example to Tutorial 3
- Add MessagePack serialization example to Tutorial 3
- Performance improvements in Boost serialization example
- Use `GetEntriesFast()` for FairTestDetectorRecoTask
- Use `Clear()` instead of `Delete()` in MQ parts of Tutorial 3
- Fix CMake variables from preventing compilation without nanomsg.
- create macro/data directories in install directory
- Get rid of data duplication in fill_parameters.C
- Various cleanups and fixes
Both FairMQLogger and FairMQStateMachine use Boost Fusion internaly.
Because the state machine needs FUSION_MAX_VECTOR_SIZE 20 defined,
same value has to be defined in the logger, otherwise Fusion is not
properly compiled.