Dear Gadgetron team,
I'm writing to ask whether I can re-use the code for the IceGadgetron emitter/injector functors in another project on Siemens scanners.
I want to convert some of my MR spectroscopy processing tools that currently do their "heavy lifting" in my MRS functors in a C++ library that I link with recent Boost, numerics libs etc. But this is a bit tricky when Siemens update the versions of these same libraries that they link elsewhere in ICE. Hence, I am now assessing whether I can move this library into a process of its own with a stub emitter and receiver to hook it into the ICE pipeline.
Gadgetron/IceGadgetron is great. I think IceGadgetron will nearly (but not quite) do what I want.
So my question... do you mind if I make a derivative of IceGadgetron with the changes I need to support my MRS processing? I will rename it to something so it doesn't conflict with yours, and probably remove a lot of irrelevant code for the time being. I'd like to package this in with MRS pulse sequences that we share by C2P and potentially into a WIP that we are making for some of these MRS methods with Siemens.
When everything is working, I'd be happy to share back my modified version if you want it - although it may be a bit specific to MRS. One day perhaps everything will use Gadgetron but for now I think that setting up Gadgetron is a bit too much overhead for my use case.
My alternative is to patch up my existing code that marshalls the data in/out of my C++ library to make it spawn a process and use something like sockets or Boost IPC to send the data. But this feels like basically re-writing what you've implemented, and tested, very nicely already.
Thanks for considering.
Best wishes,
Chris.