/*******************************************************************************
* Copyright (c) 2016 Weasis Team and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Nicolas Roduit - initial API and implementation
*******************************************************************************/
package org.weasis.core.api.image;
import java.util.Map;
import org.weasis.core.api.util.Copyable;
public interface ImageOpNode extends Copyable<ImageOpNode> {
public final class Param {
public static final String NAME = "op.display.name"; //$NON-NLS-1$
public static final String ENABLE = "op.enable"; //$NON-NLS-1$
public static final String INPUT_IMG = "op.input.img"; //$NON-NLS-1$
public static final String OUTPUT_IMG = "op.output.img"; //$NON-NLS-1$
private Param() {
}
}
void process() throws Exception;
boolean isEnabled();
void setEnabled(boolean enabled);
String getName();
void setName(String name);
Object getParam(String key);
void setParam(String key, Object value);
void setAllParameters(Map<String, Object> map);
void removeParam(String key);
void clearParams();
/**
* Clear all the parameter values starting by "op.input" or "op.output"
*/
void clearIOCache();
void handleImageOpEvent(ImageOpEvent event);
}