[ome-users] Bioformats Exporter plugin in Fiji
Jan Eglinger
jan.eglinger at gmail.com
Mon Mar 24 18:29:09 GMT 2014
Dear all,
On 24.03.2014, 5:08 PM, Roger Leigh wrote:
> I can reproduce your problem with the macro recorder. I have created a
> ticket for this: http://trac.openmicroscopy.org.uk/ome/ticket/12123
This should be fixed with the pull request:
https://github.com/openmicroscopy/bioformats/pull/986
>
> Regarding the options, I'm afraid I'll have to defer to others more
> expert here regarding the imagej plugin internals. I can't see anything
> but the "save" option being actively set by the plugin, so I'm unsure
> from where the "write" and "compression" parts of the string are set
> (and even the use of "save" is odd given that "outfile" is preferred,
> though this is likely a separate point). It's unclear to me the
> distinction between Macro.getOptions and plugin.arg, and why only "save"
> is obtained from Macro.getOptions, and not the other options. Can
> anyone clarify this?
>
The macro parameters are recorded via three instances of
ij.gui.GenericDialog shown in sequence. The second dialog is the one to
blame, because all three parameters started with "write" followed by a
space. The macro recorder records boolean options by taking the checkbox
label up to the first space as a parameter, so all three options result
in a simple "write". Adding underscores changes will make the macro code
look like:
run("Bio-Formats Exporter", "save=/tmp/4.ome.tif write_each_z_section
write_each_timepoint write_each_channel compression=Uncompressed");
(The "compression" parameter is recorded by the third dialog.)
Hope that helps,
Jan
(Fiji user, and contributor once in a while : )
> If invoked via Java, the split values are set in the run() method, and
> the initial values are set from splitZ/splitC/splitT values obtained
> from Macro.getValue(). So long as you can arrange for the values to be
> set prior to invocation, this should work. However, if this is where
> the bug lies, it will still fail of course. While you can call the java
> interface directly, the only entry point is the run() method, which
> still limits the argument passing to the LociExporter arg string when
> you construct it.
>
>
> Kind regards,
> Roger
>
> On 23/03/14 14:08, Maier, Lorenz wrote:
>> Dear all,
>>
>> am I right that the only way to use the splitting options of the
>> Bioformats Expporter with the ImageJ macro interface is checking the
>> Macro.getOptions()?
>>
>> Would there be any way to circumvent this, maybe by calling the Java
>> interface of the Exporter directly?
> [...]
>>
>> is there a reason why the bioformats exporter checks only at plugin.arg
>> if splitting C,Z,T is requested? In my eyes, the code should also check
>> Macro.getOptions(). The code in question starts at
>>
>> bioformats/components/bio-formats-plugins/src/loci/plugins/out/Exporter.java,
>> line 127.
>>
>> The selection of these options is neither recorded correctly using the
>> macro recorder. It inserts “write write write” in the options and shows
>> a warning that this is probably wrong.
>
More information about the ome-users
mailing list