Commit Graph

40 Commits

Author SHA1 Message Date
mazzol_a 6ff664f812 allow passing mask to clustervector (#304)
Build on RHEL9 / build (push) Successful in 2m24s
Build on RHEL8 / build (push) Successful in 2m54s
Run tests using data on local RHEL8 / build (push) Successful in 3m52s
Build on local RHEL8 / build (push) Successful in 2m34s
- passing mask to ClusterVector 
- creates a copy of the ClusterVector

Co-authored-by: Erik Fröjdh <erik.frojdh@psi.ch>
2026-04-17 17:13:02 +02:00
lunin_l 8f8173feb6 CI/CD: Integrate pre-commit hooks and GitHub Actions workflow (#303)
Build on RHEL8 / build (push) Successful in 2m48s
Build on RHEL9 / build (push) Successful in 3m8s
Run tests using data on local RHEL8 / build (push) Successful in 3m34s
Build on local RHEL8 / build (push) Successful in 2m24s
To improve codebase quality and reduce human error, this PR introduces
the pre-commit framework. This ensures that all code adheres to project
standards before it is even committed, maintaining a consistent style
and catching common mistakes early.

Key Changes:

- Code Formatting: Automated C++ formatting using clang-format (based on
the project's .clang-format file).
- Syntax Validation: Basic checks for file integrity and syntax.
- Spell Check: Automated scanning for typos in source code and comments.
- CMake Formatting: Standardization of CMakeLists.txt and .cmake
configuration files.
- GitHub Workflow: Added a CI action that validates every Pull Request
against the pre-commit configuration to ensure compliance.

The configuration includes a [ci] block to handle automated fixes within
the PR. Currently, this is disabled. If we want the CI to automatically
commit formatting fixes back to the PR branch, this can be toggled to
true in .pre-commit-config.yaml.

```yaml
ci:
  autofix_commit_msg: [pre-commit] auto fixes from pre-commit hooks
  autofix_prs: false
  autoupdate_schedule: monthly
```

The last large commit with the fit functions, for example, was not
formatted according to the clang-format rules. This PR would allow to
avoid similar mistakes in the future.

Python fomat with `ruff` for tests and sanitiser for `.ipynb` notebooks
can be added as well.
2026-04-14 11:52:23 +02:00
mazzol_a 1f7a87cc30 updated Documentation and README (#274)
Build on RHEL8 / build (push) Successful in 2m38s
Build on RHEL9 / build (push) Successful in 2m58s
Run tests using data on local RHEL8 / build (push) Failing after 3m16s
2026-02-19 11:22:35 +01:00
mazzol_a fb95e518b4 Dev/interpolation documentation (#255)
Build on RHEL8 / build (push) Successful in 3m5s
Build on RHEL9 / build (push) Successful in 3m21s
- added transform_eta_values for easier debugging more control for the
user
- updated Documentation
2025-12-16 13:06:28 +01:00
Erik Fröjdh 80a2b02345 Dev/decode my302 (#254)
Build on RHEL8 / build (push) Failing after 0s
Build on RHEL9 / build (push) Failing after 0s
This PR adds support for decoding digital data from the my320 test chip.
- Added BitOffset (strong type)
- Expand 24 to 32 bit 
- Python bindings for decoding my302
- Improved docs
2025-12-09 18:27:02 +01:00
mazzol_a 267ca87ab0 Dev/rosenblatttransform (#241)
- added rosenblatttransform 
- added 3x3 eta methods 
- interpolation can be used with various eta functions
- added documentation for interpolation, eta calculation 
- exposed full eta struct in python 
- disable ClusterFinder for 2x2 clusters 
- factory function for ClusterVector

---------

Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
Co-authored-by: Erik Fröjdh <erik.frojdh@psi.ch>
2025-11-21 14:48:46 +01:00
mazzol_a 474c35cc6b Merge branch 'main' into dev/reduce
Build on RHEL8 / build (push) Successful in 3m16s
Build on RHEL9 / build (push) Successful in 3m35s
2025-09-08 15:39:27 +02:00
mazzol_a 12114e7275 added documentation
Build on RHEL8 / build (push) Successful in 3m10s
Build on RHEL9 / build (push) Successful in 3m12s
2025-09-01 15:29:58 +02:00
Erik Fröjdh 5de402f91b added docs 2025-07-23 11:05:44 +02:00
Erik Fröjdh abae2674a9 Apply calibration to Jungfrau raw data (#216)
- Added function to read calibration file
- Multi threaded pedestal subtraction and application of the calibration
2025-07-18 10:19:14 +02:00
Erik Fröjdh 97dae4ac60 added empty() to ClusterVector and fixed docs (#209)
- added ClusterVector::empty() to check if the vector is empty
- Fixed generation of missing docs for ClusterVector
2025-06-27 17:00:46 +02:00
Erik Fröjdh 6ec8fbee72 migrated tags for tests and added missing raw files (#206)
Build on RHEL8 / build (push) Successful in 2m57s
Build on RHEL9 / build (push) Successful in 2m59s
- No changes or evaluation of existing tests
- Tags for including tests that require data is changed to
**[.with-data]** and **--with-data** for C++ and python respectively
- Minor update to docs
- Added missing files to the test data repo
2025-06-26 17:11:20 +02:00
Erik Fröjdh 11fa95b23c Improved documentation for ClusterFile on the python side (#201)
- Fixed CI job not doing python docs
- added more docs on cluster file 
- fixed generating docs on cluster vector
2025-06-13 10:41:39 +02:00
Erik Fröjdh 3cc44f780f Added branching strategy etc. to docs (#191)
Build on RHEL9 / build (push) Successful in 2m56s
Build on RHEL8 / build (push) Successful in 2m57s
Added a section on the ideas behind the library and also explaining the
branching strategy.

---------

Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
2025-06-11 13:21:21 +02:00
Erik Fröjdh fd0196f2fd Developer (#164)
Build on RHEL9 / build (push) Successful in 1m58s
Build on RHEL8 / build (push) Successful in 2m22s
- State before merging the new cluster vector API

---------

Co-authored-by: Patrick <patrick.sieberer@psi.ch>
Co-authored-by: JulianHeymes <julian.heymes@psi.ch>
Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
Co-authored-by: Xiangyu Xie <45243914+xiangyuxie@users.noreply.github.com>
Co-authored-by: xiangyu.xie <xiangyu.xie@psi.ch>
Co-authored-by: siebsi <sieb.patr@gmail.com>
2025-04-22 16:41:48 +02:00
Erik Fröjdh dadf5f4869 Added fitting, fixed roi etc (#129)
Co-authored-by: Patrick <patrick.sieberer@psi.ch>
Co-authored-by: JulianHeymes <julian.heymes@psi.ch>
2025-02-12 16:50:31 +01:00
froejdh_e b3a9e9576b WIP 2024-12-11 16:27:36 +01:00
Erik Fröjdh 3af8182998 added links 2024-11-18 16:18:29 +01:00
Erik Fröjdh 47e867fc1a Merge branch 'main' into developer 2024-11-18 15:38:15 +01:00
Erik Fröjdh 35c6706b3c docs 2024-11-18 14:39:46 +01:00
Erik Fröjdh 95ff77c8fc Cluster reading, expression templates (#99)
Co-authored-by: froejdh_e <erik.frojdh@psi.ch>
2024-11-15 16:32:36 +01:00
Erik Fröjdh 62a14dda13 Merge branch 'main' into developer 2024-11-15 16:19:34 +01:00
Erik Fröjdh 17f8d28019 frame reading for cluster file 2024-11-15 16:13:46 +01:00
Erik Fröjdh fbaf9dce89 Developer (#94) 2024-11-14 08:03:18 +01:00
Erik Fröjdh 17917ac7ea Merge branch 'main' into developer 2024-11-12 16:44:15 +01:00
Erik Fröjdh db936b6357 improved documentation 2024-11-12 16:39:03 +01:00
Erik Fröjdh 349e3af8e1 Brining in changes (#93) 2024-11-11 19:59:55 +01:00
Erik Fröjdh a0b6c4cc03 Merge branch 'main' into developer 2024-11-11 18:52:23 +01:00
froejdh_e ecf1b2a90b WIP 2024-11-11 17:13:48 +01:00
Erik Fröjdh d8d1f0c517 Taking v1 as the first release (#92)
- file reading
- decoding master file
2024-11-07 10:14:20 +01:00
Erik Fröjdh cbfd1f0b6c ClusterFinder 2024-11-06 12:41:41 +01:00
Erik Fröjdh 25812cb291 RawFile is now using RawMasterFile 2024-11-06 09:10:09 +01:00
Erik Fröjdh 7f244e22a2 extra methods in CtbRawFile 2024-11-05 15:55:17 +01:00
Erik Fröjdh 80a39415de added CtbRawFile 2024-11-05 14:36:18 +01:00
Erik Fröjdh 19c6a4091f improved docs and added PixelMap 2024-10-31 08:56:12 +01:00
Erik Fröjdh 79d924c2a3 docs and version bump 2024-10-30 17:48:50 +01:00
Erik Fröjdh 8a435cbe9b WIP 2024-10-28 16:26:14 +01:00
Erik Fröjdh 7f9151f270 WIP 2024-10-28 13:37:58 +01:00
Erik Fröjdh a4fb217e3f Files and structure for python interface 2024-10-28 11:22:12 +01:00
Erik Fröjdh 54dd88f070 added documentation 2024-10-25 13:54:36 +02:00