com.esri.arcgis.datasourcesraster
Class ExtractBandFunctionArguments

java.lang.Object
  extended by com.esri.arcgis.datasourcesraster.ExtractBandFunctionArguments
All Implemented Interfaces:
IExtractBandFunctionArguments, IExtractBandFunctionArguments2, IRasterFunctionArguments, com.esri.arcgis.interop.RemoteObjRef, IPersist, IPersistStream, IXMLSerialize, IXMLVersionSupport, Externalizable, Serializable

public class ExtractBandFunctionArguments
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IRasterFunctionArguments, IExtractBandFunctionArguments, IExtractBandFunctionArguments2, IPersist, IPersistStream, IXMLSerialize, IXMLVersionSupport, Externalizable

A class for band extraction/selection raster function arguments.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

See Also:
Serialized Form

Constructor Summary
ExtractBandFunctionArguments()
          Constructs a ExtractBandFunctionArguments using ArcGIS Engine.
ExtractBandFunctionArguments(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
ExtractBandFunctionArguments theExtractBandFunctionArguments = (ExtractBandFunctionArguments) obj;
 
Method Summary
 void deserialize(IXMLSerializeData data)
          Deserializes an object from XML.
 boolean equals(Object o)
          Compare this object with another
 ILongArray getBandIDs()
          The list of band IDs (0 based) to be extracted.
 IStringArray getBandNames()
          The list of bands to be extracted by name.
 IDoubleArray getBandWavelengths()
          The list of bands to be extracted by mid wavelength values (in nanometers).
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 IStringArray getFileList()
          The list of all files associated with the arguments.
 String getMinNamespaceSupported()
          The minimum namespace the class can serialize to (eg the 90 namespace).
 int getMissingBandAction()
          Indicates how the raster function behaves when a requested band (specified by index, name, or wavelength) is not found in the input raster.
 IStringArray getNames()
          The list of all argument names.
 Object getRaster()
          The source raster object.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 Object getValue(String name)
          Gets a named argument value.
 IVariantArray getValues()
          The list of all arguments.
 double getWavelengthMatchTolerance()
          The wavelength tolerance value in nanometers.
 int hashCode()
          the hashcode for this object
 void init(String sBandCombination)
          Initialize extract band arguments using the specified space- or semicolon-delimited band combination.
 void isDirty()
          isDirty
 void load(IStream pstm)
          load
 void putValue(String name, Object value)
          Puts a named argument value.
 void readExternal(ObjectInput in)
           
 void remove(String name)
          Removes a named argument value.
 void removeAll()
          Removes all argument values.
 void resolve(IRow pRow, IPropertySet pPropertySet)
          Resolves function variables using a row and set of properties.
 void save(IStream pstm, int fClearDirty)
          save
 void serialize(IXMLSerializeData data)
          Serializes an object to XML.
 void setBandIDsByRef(ILongArray ppBandIDs)
          The list of band IDs (0 based) to be extracted.
 void setBandNamesByRef(IStringArray ppBandNames)
          The list of bands to be extracted by name.
 void setBandWavelengthsByRef(IDoubleArray ppBandWavelengths)
          The list of bands to be extracted by mid wavelength values (in nanometers).
 void setMissingBandAction(int pMissingBandAction)
          Indicates how the raster function behaves when a requested band (specified by index, name, or wavelength) is not found in the input raster.
 void setRasterByRef(Object ppRaster)
          The source raster object.
 void setWavelengthMatchTolerance(double pWavelengthMatchTolerance)
          The wavelength tolerance value in nanometers.
 void update(IRow pRow, IPropertySet pPropertySet, IRasterFunctionArguments pTemplateArguments)
          Updates function variables using a row and set of properties.
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

ExtractBandFunctionArguments

public ExtractBandFunctionArguments()
                             throws IOException,
                                    UnknownHostException
Constructs a ExtractBandFunctionArguments using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

ExtractBandFunctionArguments

public ExtractBandFunctionArguments(Object obj)
                             throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
ExtractBandFunctionArguments theExtractBandFunctionArguments = (ExtractBandFunctionArguments) obj;

Construct a ExtractBandFunctionArguments using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to ExtractBandFunctionArguments.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

getValue

public Object getValue(String name)
                throws IOException,
                       AutomationException
Gets a named argument value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getValue in interface IRasterFunctionArguments
Parameters:
name - The name (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

putValue

public void putValue(String name,
                     Object value)
              throws IOException,
                     AutomationException
Puts a named argument value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
putValue in interface IRasterFunctionArguments
Parameters:
name - The name (in)
value - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

remove

public void remove(String name)
            throws IOException,
                   AutomationException
Removes a named argument value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
remove in interface IRasterFunctionArguments
Parameters:
name - The name (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAll

public void removeAll()
               throws IOException,
                      AutomationException
Removes all argument values.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
removeAll in interface IRasterFunctionArguments
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNames

public IStringArray getNames()
                      throws IOException,
                             AutomationException
The list of all argument names.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getNames in interface IRasterFunctionArguments
Returns:
A reference to a com.esri.arcgis.system.IStringArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getValues

public IVariantArray getValues()
                        throws IOException,
                               AutomationException
The list of all arguments.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getValues in interface IRasterFunctionArguments
Returns:
A reference to a com.esri.arcgis.system.IVariantArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFileList

public IStringArray getFileList()
                         throws IOException,
                                AutomationException
The list of all files associated with the arguments.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getFileList in interface IRasterFunctionArguments
Returns:
A reference to a com.esri.arcgis.system.IStringArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

resolve

public void resolve(IRow pRow,
                    IPropertySet pPropertySet)
             throws IOException,
                    AutomationException
Resolves function variables using a row and set of properties.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
resolve in interface IRasterFunctionArguments
Parameters:
pRow - A reference to a com.esri.arcgis.geodatabase.IRow (in)
pPropertySet - A reference to a com.esri.arcgis.system.IPropertySet (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

update

public void update(IRow pRow,
                   IPropertySet pPropertySet,
                   IRasterFunctionArguments pTemplateArguments)
            throws IOException,
                   AutomationException
Updates function variables using a row and set of properties.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
update in interface IRasterFunctionArguments
Parameters:
pRow - A reference to a com.esri.arcgis.geodatabase.IRow (in)
pPropertySet - A reference to a com.esri.arcgis.system.IPropertySet (in)
pTemplateArguments - A reference to a com.esri.arcgis.datasourcesraster.IRasterFunctionArguments (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRaster

public Object getRaster()
                 throws IOException,
                        AutomationException
The source raster object.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getRaster in interface IExtractBandFunctionArguments
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRasterByRef

public void setRasterByRef(Object ppRaster)
                    throws IOException,
                           AutomationException
The source raster object.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setRasterByRef in interface IExtractBandFunctionArguments
Parameters:
ppRaster - A reference to another Object (IUnknown) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBandIDs

public ILongArray getBandIDs()
                      throws IOException,
                             AutomationException
The list of band IDs (0 based) to be extracted.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getBandIDs in interface IExtractBandFunctionArguments
Returns:
A reference to a com.esri.arcgis.system.ILongArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBandIDsByRef

public void setBandIDsByRef(ILongArray ppBandIDs)
                     throws IOException,
                            AutomationException
The list of band IDs (0 based) to be extracted.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setBandIDsByRef in interface IExtractBandFunctionArguments
Parameters:
ppBandIDs - A reference to a com.esri.arcgis.system.ILongArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

init

public void init(String sBandCombination)
          throws IOException,
                 AutomationException
Initialize extract band arguments using the specified space- or semicolon-delimited band combination.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
init in interface IExtractBandFunctionArguments2
Parameters:
sBandCombination - The sBandCombination (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMissingBandAction

public int getMissingBandAction()
                         throws IOException,
                                AutomationException
Indicates how the raster function behaves when a requested band (specified by index, name, or wavelength) is not found in the input raster.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getMissingBandAction in interface IExtractBandFunctionArguments2
Returns:
A com.esri.arcgis.datasourcesraster.esriMissingBandAction constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMissingBandAction

public void setMissingBandAction(int pMissingBandAction)
                          throws IOException,
                                 AutomationException
Indicates how the raster function behaves when a requested band (specified by index, name, or wavelength) is not found in the input raster.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setMissingBandAction in interface IExtractBandFunctionArguments2
Parameters:
pMissingBandAction - A com.esri.arcgis.datasourcesraster.esriMissingBandAction constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getWavelengthMatchTolerance

public double getWavelengthMatchTolerance()
                                   throws IOException,
                                          AutomationException
The wavelength tolerance value in nanometers. For a raster band to be associated with a requested wavelength, the two wavelengths must lie within this tolerance.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getWavelengthMatchTolerance in interface IExtractBandFunctionArguments2
Returns:
The pWavelengthMatchTolerance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setWavelengthMatchTolerance

public void setWavelengthMatchTolerance(double pWavelengthMatchTolerance)
                                 throws IOException,
                                        AutomationException
The wavelength tolerance value in nanometers. For a raster band to be associated with a requested wavelength, the two wavelengths must lie within this tolerance.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setWavelengthMatchTolerance in interface IExtractBandFunctionArguments2
Parameters:
pWavelengthMatchTolerance - The pWavelengthMatchTolerance (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBandWavelengths

public IDoubleArray getBandWavelengths()
                                throws IOException,
                                       AutomationException
The list of bands to be extracted by mid wavelength values (in nanometers). This property, when specified, overrides values in the 'BandIDs' property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getBandWavelengths in interface IExtractBandFunctionArguments2
Returns:
A reference to a com.esri.arcgis.system.IDoubleArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBandWavelengthsByRef

public void setBandWavelengthsByRef(IDoubleArray ppBandWavelengths)
                             throws IOException,
                                    AutomationException
The list of bands to be extracted by mid wavelength values (in nanometers). This property, when specified, overrides values in the 'BandIDs' property.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setBandWavelengthsByRef in interface IExtractBandFunctionArguments2
Parameters:
ppBandWavelengths - A reference to a com.esri.arcgis.system.IDoubleArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBandNames

public IStringArray getBandNames()
                          throws IOException,
                                 AutomationException
The list of bands to be extracted by name. This property, when specified, overrides values in the 'BandIDs' and the 'BandWavelengths' properties.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getBandNames in interface IExtractBandFunctionArguments2
Returns:
A reference to a com.esri.arcgis.system.IStringArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBandNamesByRef

public void setBandNamesByRef(IStringArray ppBandNames)
                       throws IOException,
                              AutomationException
The list of bands to be extracted by name. This property, when specified, overrides values in the 'BandIDs' and the 'BandWavelengths' properties.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setBandNamesByRef in interface IExtractBandFunctionArguments2
Parameters:
ppBandNames - A reference to a com.esri.arcgis.system.IStringArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isDirty in interface IPersistStream
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

serialize

public void serialize(IXMLSerializeData data)
               throws IOException,
                      AutomationException
Serializes an object to XML.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
serialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deserialize

public void deserialize(IXMLSerializeData data)
                 throws IOException,
                        AutomationException
Deserializes an object from XML.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
deserialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMinNamespaceSupported

public String getMinNamespaceSupported()
                                throws IOException,
                                       AutomationException
The minimum namespace the class can serialize to (eg the 90 namespace).

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getMinNamespaceSupported in interface IXMLVersionSupport
Returns:
The namespaceURI
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException