Conversation
HenkMutsaerts
left a comment
There was a problem hiding this comment.
Very nice work! Some minor stuff, that are mainly about code, header, and comment consistencies, trying to keep everything readable. You currently have a lot of subfunctions where variables change names (e.g., "input") and depending on the content of the variable a different action will be triggered by a single function, that may not help readability and debugging. I would always go for simplicity, like you nicely do sometimes with things like
switch type
A -> do this subfunction
B -> do this subfunction
instead of doing the same subfunction for both A and B but inside the subfunction determining to what other subfunction A or B go
Another important issue: you use imshow and perhaps other functions from the Matlab image processing toolbox. Jan and I have put a lot of effort in not having any toolbox dependencies outside Matlab itself. This will ensure that most users can use ExploreASL (also those that didn't pay for the toolbox) and that the docker container stays lean.
jan-petr
left a comment
There was a problem hiding this comment.
Some minor changes needed.
|
Just tested this:
Then I saw 2 minor bugs which I fixed. Finally, the current config gives an example, can you replace the default config with one that creates a similar PDF as we had? Then we can improve it from there, but then at least I can already check how it works. Also, now if there are any pre-existing xASL reports, it will delete them; this behavior should be disabled. Only, if there already is a PDF existing with an identical filename, it should perhaps rename the new file (I wouldn't touch the old/pre-existing file). Also, this function now is dependent on |
Excellent, the changes added by you seem to improve stability when parameters are missing, as well as some householding data. I will also improve this by including the definitions here as default for units and names if no alternatives are given. |
jan-petr
left a comment
There was a problem hiding this comment.
Good work. No further comments.
|
Last conversations have been handled: Edit: |
|
While adding text wrapping I've noticed that xASL_num2str does not convert logical to str, which the matlab native num2str does. |
jan-petr
left a comment
There was a problem hiding this comment.
I am merely blocking the merging, because some commit messages need fixing ;)
HenkMutsaerts
left a comment
There was a problem hiding this comment.
Nice work! Some questions as we discussed, to keep the current functionality of generating the PDF dependent on what was analyzed in ExploreASL.
E.g, if you have analyzed 2 ASL runs, you want to show 2 ASL runs. If you have analyzed only T1w and FLAIR, you want to only show them.
So while there might be a static part of the template/settings file, it would be nice if these things can also be generated dependently.
HenkMutsaerts
left a comment
There was a problem hiding this comment.
Some minor comments, and a bug while testing ExploreASL's TestDataSet
60a2806 to
f218d7a
Compare
|
Two force pushed to incorporate two minor appends to the last commit. |
HenkMutsaerts
left a comment
There was a problem hiding this comment.
My test worked fine. I have added some wishes to the follow-up issue #1476 (in which we actually implement this in ExploreASL).
… and variables to xASL_qc_ParsePdfConfig
…prove specifity of subfunctions
51be2f0 to
c394f5e
Compare
Linked issue
Closes #1225
How to test
You can run the pdf generator using [x, config] = xASL_qc_GenerateReport(x[, subject]), with x being the ExploreASL s struct, if no subject is provided, it will default to the subject defined in x.SUBJECT.
A Small manual has been written that goes over the basics to creating a config report for the layout.
If no configuration file is found in
<dataroot>/Derivatives/ExploreASLit will use the default in the exploreASL root directory.Manual should be moved to the docs before merging!