org.geotools.coverage.processing
Class AbstractOperation

java.lang.Object
  extended by org.geotools.coverage.processing.AbstractOperation
All Implemented Interfaces:
java.io.Serializable, org.opengis.coverage.processing.Operation
Direct Known Subclasses:
Operation2D

public abstract class AbstractOperation
extends java.lang.Object
implements org.opengis.coverage.processing.Operation, java.io.Serializable

Provides descriptive information for a coverage processing operation. The descriptive information includes such information as the name of the operation, operation description, and number of source grid coverages required for the operation.

Since:
2.2
Version:
$Id: AbstractOperation.java 30892 2008-07-04 15:17:36Z desruisseaux $
Author:
Martin Desruisseaux (IRD)
See Also:
Serialized Form

Field Summary
protected  org.opengis.parameter.ParameterDescriptorGroup descriptor
          The parameters descriptor.
 
Constructor Summary
AbstractOperation(org.opengis.parameter.ParameterDescriptorGroup descriptor)
          Constructs an operation.
 
Method Summary
abstract  org.opengis.coverage.Coverage doOperation(org.opengis.parameter.ParameterValueGroup parameters, Hints hints)
          Applies a process operation to a coverage.
protected static void ensureNonNull(java.lang.String name, java.lang.Object object)
          Makes sure that an argument is non-null.
 boolean equals(java.lang.Object object)
          Compares the specified object with this operation for equality.
 java.lang.String getDescription()
          Deprecated. Return type need to be changed, maybe to InternationalString.
 java.lang.String getDocURL()
          Deprecated. To be replaced by a method returning a Citation.
 java.lang.String getName()
          Returns the name of the processing operation.
 int getNumSources()
          Returns the number of source coverages required for the operation.
 org.opengis.parameter.ParameterValueGroup getParameters()
          Returns an initially empty set of parameters.
protected static AbstractProcessor getProcessor(java.awt.RenderingHints hints)
          Returns the AbstractProcessor instance used for an operation.
 java.lang.String getVendor()
          Deprecated. Replaced by getName().getAuthority().
 java.lang.String getVersion()
          Deprecated. Replacement to be determined.
 int hashCode()
          Returns a hash value for this operation.
 java.lang.String toString()
          Returns a string representation of this operation.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

descriptor

protected final org.opengis.parameter.ParameterDescriptorGroup descriptor
The parameters descriptor.

Constructor Detail

AbstractOperation

public AbstractOperation(org.opengis.parameter.ParameterDescriptorGroup descriptor)
Constructs an operation. The operation name will be the same than the parameter descriptor name.

Parameters:
descriptor - The parameters descriptor.
Method Detail

getName

public java.lang.String getName()
Returns the name of the processing operation. The default implementation returns the descriptor code name.

Specified by:
getName in interface org.opengis.coverage.processing.Operation

getDescription

@Deprecated
public java.lang.String getDescription()
Deprecated. Return type need to be changed, maybe to InternationalString.

Returns the description of the processing operation. If there is no description, returns null. The default implementation returns the descriptor remarks.

Specified by:
getDescription in interface org.opengis.coverage.processing.Operation

getDocURL

@Deprecated
public java.lang.String getDocURL()
Deprecated. To be replaced by a method returning a Citation.

Returns the URL for documentation on the processing operation. If no online documentation is available the string will be null. The default implementation returns null.

Specified by:
getDocURL in interface org.opengis.coverage.processing.Operation

getVersion

@Deprecated
public java.lang.String getVersion()
Deprecated. Replacement to be determined.

Returns the version number of the implementation.

Specified by:
getVersion in interface org.opengis.coverage.processing.Operation

getVendor

@Deprecated
public java.lang.String getVendor()
Deprecated. Replaced by getName().getAuthority().

Returns the vendor name of the processing operation implementation. The default implementation returns "Geotools 2".

Specified by:
getVendor in interface org.opengis.coverage.processing.Operation

getNumSources

public int getNumSources()
Returns the number of source coverages required for the operation.

Specified by:
getNumSources in interface org.opengis.coverage.processing.Operation

getParameters

public org.opengis.parameter.ParameterValueGroup getParameters()
Returns an initially empty set of parameters.

Specified by:
getParameters in interface org.opengis.coverage.processing.Operation

doOperation

public abstract org.opengis.coverage.Coverage doOperation(org.opengis.parameter.ParameterValueGroup parameters,
                                                          Hints hints)
                                                   throws CoverageProcessingException
Applies a process operation to a coverage. This method is invoked by DefaultProcessor.

Parameters:
parameters - List of name value pairs for the parameters required for the operation.
hints - A set of rendering hints, or null if none. The DefaultProcessor may provides hints for the following keys: Hints.COORDINATE_OPERATION_FACTORY and Hints.JAI_INSTANCE.
Returns:
The result as a coverage.
Throws:
CoverageProcessingException - if the operation can't be applied.

getProcessor

protected static AbstractProcessor getProcessor(java.awt.RenderingHints hints)
Returns the AbstractProcessor instance used for an operation. The instance is fetch from the rendering hints given to the doOperation(org.opengis.parameter.ParameterValueGroup, org.geotools.factory.Hints) method. If no processor is specified, then a default one is returned.

Parameters:
hints - The rendering hints, or null if none.
Returns:
The AbstractProcessor instance in use (never null).

ensureNonNull

protected static void ensureNonNull(java.lang.String name,
                                    java.lang.Object object)
                             throws java.lang.IllegalArgumentException
Makes sure that an argument is non-null. This is a convenience method for implementations in subclasses.

Parameters:
name - Argument name.
object - User argument.
Throws:
java.lang.IllegalArgumentException - if object is null.

hashCode

public int hashCode()
Returns a hash value for this operation. This value need not remain consistent between different implementations of the same class.

Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object object)
Compares the specified object with this operation for equality.

Overrides:
equals in class java.lang.Object
Parameters:
object - The object to compare with this operation.
Returns:
true if the given object is equals to this operation.

toString

public java.lang.String toString()
Returns a string representation of this operation. The returned string is implementation dependent. It is usually provided for debugging purposes only.

Overrides:
toString in class java.lang.Object


Copyright © 1996-2010 Geotools. All Rights Reserved.