0

我正在使用 CSI DM3 阅读器 ( http://code.google.com/p/cornell-spectrum-imager/wiki/Home ) 来阅读我的 .dm3 文件。我想为此添加拖放功能,所以我更改了文件 HandleExtraFileTypes.java ( http://rsbweb.nih.gov/ij/plugins/download/HandleExtraFileTypes.java ) 并在第 101 行更改了它的 .dm3 关联- 103 起

    if (name.endsWith(".dm3") && buf[0]==0 && buf[1]==0 && buf[2]==0 && buf[3]==3) {
        return tryPlugIn("DM3_Reader", path);
    }

    if (name.endsWith(".dm3") && buf[0]==0 && buf[1]==0 && buf[2]==0 && buf[3]==3) {
        return tryPlugIn("CSI_DM3_Reader", path);
    }

这会在 CSI DM3 阅读器和标准 DM3 阅读器中打开文件,我希望它只在 CSI DM3 阅读器中打开。如何禁止 ImageJ 打开其常规 DM3 阅读器?

注意:tryPlugIn 对象如下

/**
* Attempts to open the specified path with the given plugin. If the
* plugin extends the ImagePlus class (e.g., BioRad_Reader), set
* extendsImagePlus to true, otherwise (e.g., LSM_Reader) set it to false.
*
* @return A reference to the plugin, if it was successful.
*/
private Object tryPlugIn(String className, String path) {
    Object o = IJ.runPlugIn(className, path);
    if (o instanceof ImagePlus) {
        // plugin extends ImagePlus class
        ImagePlus imp = (ImagePlus)o;
            if (imp.getWidth()==0)
                o = null; // invalid image
            else
                width = IMAGE_OPENED; // success
    } else {
        // plugin does not extend ImagePlus; assume success
        width = IMAGE_OPENED;
    }
    return o;
}
4

0 回答 0