It is the common library for QE Framework.
The easiest way to use this library in your code is by Conan Package Manager. Please use the project setup that you can find in QECommon/1.0.0 Conan.
This library uses Semantic Versioning and internal private implementation to provide a long-term, stable, and reusable binaries.
These are the most important tools that are provided by this library.
This class is a mixture of std::shared_future, std::promise and QFuture. Briefly, it supports:
- It shares implicitly the future value and promise (like std::shared_future).
- You can set the value (like a std::promise).
- You can connect using Qt signal/slot mechanism.
It is the base class for QE Framework exception. It is able to clone and raise itself, and it is useful to clone exceptions between several thread context.
This license follows the dual-license pattern that Qt is currently using. A LGPL 3.0 license for projects that do not need commercial support, and another one, Commercial license for rest of cases.
You can find a brief comparison between both licenses in the below table:
License types | LGPLv3 | Commercial |
---|---|---|
Community Support | Yes | Yes |
Official Support Helpdesk | No | Yes |
Keep your application private | No | Yes |
Possible to keep your application private with dynamic linking | Yes | Yes |
No need to provide a relinking mechanism for QE Framework (can always use static linking) |
No | Yes |
No need to provide a copy of license and explicitly acknowledge the use of QE |
No | Yes |
No need to make copy of the QE Framework source code available for customers |
No | Yes |
Full rights to proprietary QE source code modifications | No | Yes |
Enforce DRM | See LGPLv3 FAQ | Yes |
Enforce software patents | See LGPLv3 FAQ | Yes |