The purpose of this repo is to provide a starting point for developing software that uses PETSIRD. It is currently mostly needed/useful for C++ development.
The Emission Tomography Standardization Initiative (ETSI) is working towards establishing a standard for PET Raw Data, called PETSIRD ("PET ETSI Raw Data"). More information is on https://github.com/ETSInitiative/PETSIRD.
These instructions will use YourRepoName
for the name of your new repository. Obviously replace it with something appropriate.
Easiest is to start from GitHub:
- Navigate to the URL of this repo: https://github.com/ETSInitiative/PETSIRDUseCaseTemplate
- Click on the
Use this template
button and create your own repo
- Open your repo in GitHub Codespaces or
in a VS Code devcontainer.
This codespace/container will contain all necessary tools, including
yardl
itself, as well as your repository.
(Alternatively, clone to your local computer withgit clone --recurse-submodules <repository_url>
, downloadyardl
, install dependencies etc.) - Start with basic house-keeping
- Search-and-replace all occurences of
PETSIRDUseCaseTemplate
withYourRepoName
- Update the README.md to remove references to this template and write something about what your repo is going to do
- Update the
environment.yml
to include what you need. For instance, if you need ROOT, add something like- root=6.28.0
- Make some other basic changes and commit
git commit -a -m "Updated template to YourRepoName" git push
- Search-and-replace all occurences of
- Start working in the
cpp
directory. - Edit the
justfile
, e.g. to add a@run
target - type
just build
(orjust run
)
Note: if you don't want to use just
, you will have to use yardl
to generate C++ and Python
code for the model:
cd YourRepoName
cd PETSIRD/model
yardl generate
cd ../..