v1.0.0-rc.123 (#30)
All checks were successful
Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 10m22s
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 11m30s
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 11m41s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 12m32s
Build Packages / Generate python client (push) Successful in 18s
Build Packages / Build documentation (push) Successful in 54s
Build Packages / Create release (push) Has been skipped
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 9m44s
Build Packages / build:rpm (ubuntu2204) (push) Successful in 8m53s
Build Packages / build:rpm (rocky8) (push) Successful in 9m40s
Build Packages / build:rpm (rocky9) (push) Successful in 10m37s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 9m54s
Build Packages / Unit tests (push) Successful in 1h6m33s

This is an UNSTABLE release.

* jfjoch_broker: Use newer version of Google Ceres for (potential) CUDA 13 compatibility
* jfjoch_broker: Improve performance of generating preview images, especially for large detectors (9M-16M)
* jfjoch_viewer: Improve performance of displaying images, especially for large detectors (9M-16M)
* jfjoch_viewer: Add more color schemes for better image readability
* HDF5: Common mutex for reading and writing HDF5 if both operations were to happen in the same executable
* HDF5: suppress warning if path (upstream group) doesn't exists when checking if leaf exists

Reviewed-on: #30
Co-authored-by: Filip Leonarski <filip.leonarski@psi.ch>
Co-committed-by: Filip Leonarski <filip.leonarski@psi.ch>
This commit was merged in pull request #30.
This commit is contained in:
2026-01-30 13:43:09 +01:00
committed by leonarski_f
parent 27496b8207
commit 1c4dfd03e2
146 changed files with 401 additions and 229 deletions

View File

@@ -58,6 +58,31 @@ TEST_CASE("TIFFTest_File_signed","[TIFF]") {
REQUIRE_NOTHROW(WriteTIFFToFile("test_image_signed.tiff", image));
}
rgb rainbowColor(float t) {
// Ensure t is in [0,1]
t = std::max(0.0f, std::min(1.0f, t));
// Convert to hue (0 to 6)
float hue = t * 6.0f;
int phase = static_cast<int>(hue);
float fract = hue - phase;
uint8_t p = static_cast<uint8_t>(255 * (1.0f - fract));
uint8_t q = static_cast<uint8_t>(255 * fract);
uint8_t full = 255;
switch (phase) {
case 0: return {full, q, 0}; // Red to Yellow
case 1: return {p, full, 0}; // Yellow to Green
case 2: return {0, full, q}; // Green to Cyan
case 3: return {0, p, full}; // Cyan to Blue
case 4: return {q, 0, full}; // Blue to Magenta
case 5: return {full, 0, p}; // Magenta to Red
default: return {full, 0, 0}; // Fallback (red)
}
}
TEST_CASE("TIFFTest_File_rgb","[TIFF]") {
std::vector<rgb> values(512 * 1024);