Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.raster.legend / org.gvsig.raster.legend.imageio / src / main / java / org / gvsig / fmap / dal / file / imageio / legend / ImageIOGetColorInterpretation.java @ 44831

History | View | Annotate | Download (1.76 KB)

1
package org.gvsig.fmap.dal.file.imageio.legend;
2

    
3
import java.awt.image.BufferedImage;
4
import org.gvsig.fmap.dal.file.imageio.ImageIOStoreProvider;
5

    
6
import org.gvsig.fmap.dal.raster.RasterStore;
7
import org.gvsig.raster.lib.legend.api.RasterLegendLocator;
8
import org.gvsig.raster.lib.legend.api.RasterLegendManager;
9
import org.gvsig.tools.ToolsLocator;
10
import org.gvsig.tools.dynobject.DynClass;
11
import org.gvsig.tools.dynobject.DynMethod;
12
import org.gvsig.tools.dynobject.DynObject;
13
import org.gvsig.tools.dynobject.exception.DynMethodException;
14
import org.gvsig.tools.dynobject.exception.DynMethodNotSupportedException;
15

    
16

    
17
public class ImageIOGetColorInterpretation implements DynMethod {
18

    
19
    private int code;
20

    
21
    static public void register(DynClass storeClass) {
22
      ImageIOGetColorInterpretation method = new ImageIOGetColorInterpretation();
23
      method.code = ToolsLocator.getDynObjectManager().registerDynMethod(storeClass,method);
24
    }
25

    
26
    @Override
27
    public int getCode() throws DynMethodNotSupportedException {
28
        return code;
29
    }
30

    
31
    @Override
32
    public String getDescription() {
33
        return "ImageIO based Color Interpretation";
34
    }
35

    
36
    @Override
37
    public String getName() {
38
        return RasterStore.DYNMETHOD_GETCOLORINTERPRETATION_NAME;
39
    }
40

    
41
    @Override
42
    public Object invoke(DynObject self, Object[] args) throws DynMethodException {
43
        ImageIOStoreProvider provider = (ImageIOStoreProvider) self;
44

    
45
        RasterLegendManager legendManager = RasterLegendLocator.getRasterLegendManager();
46

    
47
        BufferedImage image = provider.getImage();
48
        return legendManager.createColorInterpretation(image, provider.getName());
49
    }
50
    
51
    @Override
52
    public Object clone() throws CloneNotSupportedException {
53
        return super.clone();
54
    }
55
}