com.esri.arcgis.datasourcesraster
Class FunctionRasterDataset

java.lang.Object
  extended by com.esri.arcgis.datasourcesraster.FunctionRasterDataset
All Implemented Interfaces:
IFunctionRasterDataset, IFunctionRasterDataset2, IItemPaths, IRasterBandCollection, IRasterDatasetContainer, ITemporaryDataset, IDataset, IGeoDataset, IGeoDataset2, IMetadata, IMetadataEdit, INativeTypeInfo, IRasterDataset, IRasterDataset2, IRasterDataset3, com.esri.arcgis.interop.RemoteObjRef, IPersist, IPersistStream, Externalizable, Serializable

public class FunctionRasterDataset
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IFunctionRasterDataset, IFunctionRasterDataset2, IRasterDataset, IRasterDataset2, IRasterDataset3, IDataset, IGeoDataset, IGeoDataset2, IRasterBandCollection, IItemPaths, INativeTypeInfo, IMetadata, IMetadataEdit, ITemporaryDataset, IRasterDatasetContainer, IPersist, IPersistStream, Externalizable

A class for a function raster dataset.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
FunctionRasterDataset()
          Constructs a FunctionRasterDataset using ArcGIS Engine.
FunctionRasterDataset(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
FunctionRasterDataset theFunctionRasterDataset = (FunctionRasterDataset) obj;
 
Method Summary
 void add(IRasterBand element, int index)
          Adds a RasterBand to the band collection.
 void alterDefinition()
          Saves any changes made to this dataset.
 void appendBand(IRasterBand element)
          Appends a RasterBand to the band collection.
 void appendBands(IRasterBandCollection bands)
          Appends a collection of RasterBands to the band collection.
 boolean canCopy()
          Returns true if this dataset can be copied.
 boolean canDelete()
          True if this dataset can be deleted.
 boolean canRename()
          True if this dataset can be renamed.
 void clear()
          Removes all the elements in the collection.
 void clearCache()
          Clear the cache.
 IGeometry computeFootprint(int maximumVertices)
          Computes the footprint.
 IDataset copy(String copyName, IWorkspace copyWorkspace)
          Copies this dataset to a new dataset with the specified name.
 IRaster createDefaultRaster()
          Creates a raster object with the default properties for this dataset.
 IRaster createFullRaster()
          Creates a raster containing all bands in this raster dataset.
 IRaster createRaster()
          Creates an empty raster.
 void delete()
          Deletes this dataset.
 boolean equals(Object o)
          Compare this object with another
 void findMemberFunctionsArgumentsByCLSID(IUID functionArgumentsCLSID, IArray ppMatchingFunctionArguments)
          Finds raster function arguments in this dataset that match the given function arguments CLSID.
 IArray findMemberFunctionsByCLSID(IUID rasterFunctionCLSID)
          Finds raster functions in this dataset that match the given function CLSID.
 IArray findMemberFunctionsByName(String rasterFunctionName)
          Finds raster functions in this dataset that match the given function name.
 Object getArguments()
          The raster function arguments.
 IRasterBand getBandByName(String name)
          A RasterBand given its name.
 int getBandIndex(String name)
          The index of a RasterBand given its name.
 IEnumRasterBand getBands()
          All the bands in the collection as an interface to the RasterBands enumerator object.
 int getBlockHeight()
          The native block height.
 int getBlockWidth()
          The native block width.
 String getBrowseName()
          The browse name of the dataset.
 String getCategory()
          The category of the dataset.
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 String getCompleteName()
          The full path of the RasterDataset.
 String getCompressionType()
          The compression technique applied to this RasterDataset.
 int getCount()
          The number of bands in the collection.
 IEnvelope getExtent()
          The extent of the GeoDataset.
 void getFiles(IGeometry pGeometry, IStringArray ppFiles)
          Gets source files within a given clipping geometry.
 int getFirstPyramidLevel()
          The first available pyramid level.
 String getFormat()
          The format of this RasterRataset.
 IName getFullName()
          The associated name object.
 IRasterFunction getFunction()
          The raster function.
 IGeodataXform getGeodataXform()
          The geodata transformation of the GeoDataset.
 IRasterLODInfos getLODInfos()
          The custom LOD infos.
 int getMaximumPyramidLevel()
          The maximum available pyramid level.
 IArray getMemberDatasetNames()
          The constituent datasets names referenced by this function raster dataset.
 IArray getMemberRasterDatasets()
          The constituent raster datasets in this function raster dataset.
 IPropertySet getMetadata()
          The PropertySet containing metadata.
 String getName()
          The name of the Dataset.
 IEnvelope getNativeExtent()
          The native extent of the GeoDataset (before transformation applied).
 ISpatialReference getNativeSpatialReference()
          The native spatial reference of the GeoDataset (before transformation applied).
 INativeType getNativeType()
          The native type.
 IStringArray getPaths()
          Returns all paths associated with the object.
 IPropertySet getProperties()
          The function raster dataset proprties.
 IPropertySet getPropertySet()
          The set of properties for the dataset.
 IRasterInfo getRasterInfo()
          The raster information.
 String getSensorType()
          The sensor type used for this RasterDataset.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 ISpatialReference getSpatialReference()
          The spatial reference of the GeoDataset.
 IRasterDataset getSubRasterDatasetByID(int subdatasetID)
          The given subdataset by id.
 IRasterDataset getSubRasterDatasetByName(String subdatasetName)
          The given subdataset by name.
 String getSubRasterDatasetCompleteName(int subdatasetID)
          The given subdataset's complete name.
 int getSubRasterDatasetCount()
          The number of subdatasets.
 IName getSubRasterDatasetFullName(int subdatasetID)
          The given subdataset's full name.
 String getSubRasterDatasetName(int subdatasetID)
          The given subdataset's name.
 IEnumDataset getSubsets()
          Datasets contained within this dataset.
 int getType()
          The type of the Dataset.
 IWorkspace getWorkspace()
          The workspace containing this dataset.
 int hashCode()
          the hashcode for this object
 void init(IRasterFunction pFunction, Object pArguments)
          Initializes this function raster dataset.
 boolean isCacheStale()
          Indicates if the raster cache is stale and needs to be refreshed.
 boolean isCanEditMetadata()
          Indicates if metadata can be edited.
 boolean isCanWrite()
          Indicates if this RasterDataset is writable.
 void isDirty()
          isDirty
 boolean isDynamic()
          Indicates the collection is dynamic.
 boolean isEmpty()
          Indicates whether the raster dataset is empty.
 boolean isTemporary()
          Indicates if the dataset is temporary.
 IRasterBand item(int bandIndex)
          Returns a RasterBand given its index.
 void load(IStream pstm)
          load
 void makePermanent()
          Persists this temporary dataset permanent.
 IDataset makePermanentAs(String new_name, IWorkspace workspace, String format)
          Persists this temporary dataset to a new permanent dataset.
 void precalculateStats(Object index_list)
          Calculates statistics and histograms for specified bands.
 void read(IPnt tlc, IRaster raster, IPixelBlock pixelBlock)
          Reads a block of pixels starting from the top left corner.
 void readExternal(ObjectInput in)
           
 void readPyramid(IPnt tlc, int pyramidLevel, IRaster raster, IPixelBlock pixelBlock)
          Reads a block of pixels at a given pyramid level.
 void refresh()
          Refreshes opened RasterDataset.
 void refreshCache()
          Refresh raster cache.
 void remove(int index)
          Removes an element from the collection.
 void rename(String name)
          Renames this Dataset.
 void replacePaths(IStringArray pOldPaths, IStringArray pNewPaths)
          Updates all paths associated with the object using the specified mapping rule.
 void save(IStream pstm, int fClearDirty)
          save
 IDataset saveAs(String new_name, IWorkspace worksp, String format)
          Creates a new persistent RasterDataset with the bands in the collection.
 void setArgumentsByRef(Object ppArguments)
          The raster function arguments.
 void setBrowseName(String name)
          The browse name of the dataset.
 void setFullNameByRef(IName rhs1)
          The name of this function raster dataset.
 void setFunctionByRef(IRasterFunction ppFunction)
          The raster function.
 void setMetadata(IPropertySet ppPropertySet)
          The PropertySet containing metadata.
 void setPropertiesByRef(IPropertySet ppProperties)
          The function raster dataset proprties.
 void simplify()
          Simplifies the function raster dataset by removing redundant raster functions.
 void synchronize()
          Synchronizes changes.
 void synchronize(int action, int interval)
          Updates metadata with the current properties; may create metadata if it doesn't already exist.
 void write(IPnt tlc, IRaster raster, int mode, IPixelBlock pixelBlock)
          Writes a block of pixels starting from the top left corner.
 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

FunctionRasterDataset

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

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

FunctionRasterDataset

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

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

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

setFullNameByRef

public void setFullNameByRef(IName rhs1)
                      throws IOException,
                             AutomationException
The name of this function raster dataset.

Product Availability

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

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

init

public void init(IRasterFunction pFunction,
                 Object pArguments)
          throws IOException,
                 AutomationException
Initializes this function raster dataset.

Product Availability

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

Specified by:
init in interface IFunctionRasterDataset
Parameters:
pFunction - A reference to a com.esri.arcgis.datasourcesraster.IRasterFunction (in)
pArguments - A reference to another Object (IUnknown) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFunction

public IRasterFunction getFunction()
                            throws IOException,
                                   AutomationException
The raster function.

Product Availability

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

Specified by:
getFunction in interface IFunctionRasterDataset
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterFunction
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFunctionByRef

public void setFunctionByRef(IRasterFunction ppFunction)
                      throws IOException,
                             AutomationException
The raster function.

Product Availability

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

Specified by:
setFunctionByRef in interface IFunctionRasterDataset
Parameters:
ppFunction - A reference to a com.esri.arcgis.datasourcesraster.IRasterFunction (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getArguments

public Object getArguments()
                    throws IOException,
                           AutomationException
The raster function arguments.

Product Availability

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

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

setArgumentsByRef

public void setArgumentsByRef(Object ppArguments)
                       throws IOException,
                              AutomationException
The raster function arguments.

Product Availability

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

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

getProperties

public IPropertySet getProperties()
                           throws IOException,
                                  AutomationException
The function raster dataset proprties.

Product Availability

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

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

setPropertiesByRef

public void setPropertiesByRef(IPropertySet ppProperties)
                        throws IOException,
                               AutomationException
The function raster dataset proprties.

Product Availability

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

Specified by:
setPropertiesByRef in interface IFunctionRasterDataset
Parameters:
ppProperties - 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.

getRasterInfo

public IRasterInfo getRasterInfo()
                          throws IOException,
                                 AutomationException
The raster information.

Product Availability

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

Specified by:
getRasterInfo in interface IFunctionRasterDataset
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterInfo
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

alterDefinition

public void alterDefinition()
                     throws IOException,
                            AutomationException
Saves any changes made to this dataset.

Product Availability

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

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

getMemberRasterDatasets

public IArray getMemberRasterDatasets()
                               throws IOException,
                                      AutomationException
The constituent raster datasets in this function raster dataset.

Product Availability

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

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

getMemberDatasetNames

public IArray getMemberDatasetNames()
                             throws IOException,
                                    AutomationException
The constituent datasets names referenced by this function raster dataset.

Product Availability

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

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

findMemberFunctionsByCLSID

public IArray findMemberFunctionsByCLSID(IUID rasterFunctionCLSID)
                                  throws IOException,
                                         AutomationException
Finds raster functions in this dataset that match the given function CLSID.

Product Availability

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

Specified by:
findMemberFunctionsByCLSID in interface IFunctionRasterDataset
Parameters:
rasterFunctionCLSID - A reference to a com.esri.arcgis.system.IUID (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findMemberFunctionsByName

public IArray findMemberFunctionsByName(String rasterFunctionName)
                                 throws IOException,
                                        AutomationException
Finds raster functions in this dataset that match the given function name.

Product Availability

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

Specified by:
findMemberFunctionsByName in interface IFunctionRasterDataset
Parameters:
rasterFunctionName - The rasterFunctionName (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findMemberFunctionsArgumentsByCLSID

public void findMemberFunctionsArgumentsByCLSID(IUID functionArgumentsCLSID,
                                                IArray ppMatchingFunctionArguments)
                                         throws IOException,
                                                AutomationException
Finds raster function arguments in this dataset that match the given function arguments CLSID.

Product Availability

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

Specified by:
findMemberFunctionsArgumentsByCLSID in interface IFunctionRasterDataset
Parameters:
functionArgumentsCLSID - A reference to a com.esri.arcgis.system.IUID (in)
ppMatchingFunctionArguments - A reference to a com.esri.arcgis.system.IArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

simplify

public void simplify()
              throws IOException,
                     AutomationException
Simplifies the function raster dataset by removing redundant raster functions.

Product Availability

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

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

computeFootprint

public IGeometry computeFootprint(int maximumVertices)
                           throws IOException,
                                  AutomationException
Computes the footprint.

Product Availability

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

Specified by:
computeFootprint in interface IFunctionRasterDataset2
Parameters:
maximumVertices - The maximumVertices (in)
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshCache

public void refreshCache()
                  throws IOException,
                         AutomationException
Refresh raster cache.

Product Availability

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

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

clearCache

public void clearCache()
                throws IOException,
                       AutomationException
Clear the cache.

Product Availability

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

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

isCacheStale

public boolean isCacheStale()
                     throws IOException,
                            AutomationException
Indicates if the raster cache is stale and needs to be refreshed.

Product Availability

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

Specified by:
isCacheStale in interface IFunctionRasterDataset2
Returns:
The pIsStale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFiles

public void getFiles(IGeometry pGeometry,
                     IStringArray ppFiles)
              throws IOException,
                     AutomationException
Gets source files within a given clipping geometry.

Product Availability

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

Specified by:
getFiles in interface IFunctionRasterDataset2
Parameters:
pGeometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
ppFiles - 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.

synchronize

public void synchronize()
                 throws IOException,
                        AutomationException
Synchronizes changes.

Product Availability

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

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

getFormat

public String getFormat()
                 throws IOException,
                        AutomationException
The format of this RasterRataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFormat in interface IRasterDataset
Returns:
The format
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSensorType

public String getSensorType()
                     throws IOException,
                            AutomationException
The sensor type used for this RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSensorType in interface IRasterDataset
Returns:
The sensorType
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCompressionType

public String getCompressionType()
                          throws IOException,
                                 AutomationException
The compression technique applied to this RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCompressionType in interface IRasterDataset
Returns:
The comp
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

createDefaultRaster

public IRaster createDefaultRaster()
                            throws IOException,
                                   AutomationException
Creates a raster object with the default properties for this dataset.

Remarks

The CreateDefaultRaster method creates a Raster that has a square cell size and contains only three raster bands if the dataset has more than three bands. The three bands are the default bands used in raster RGB renderer and are determined by the settings for default raster behavior made on the RasterDefaultsEnv object in esriCarto library.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
createDefaultRaster in interface IRasterDataset
Returns:
A reference to a com.esri.arcgis.geodatabase.IRaster
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

canCopy

public boolean canCopy()
                throws IOException,
                       AutomationException
Returns true if this dataset can be copied.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
canCopy in interface IDataset
Specified by:
canCopy in interface IRasterDataset
Returns:
The canCopy
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

copy

public IDataset copy(String copyName,
                     IWorkspace copyWorkspace)
              throws IOException,
                     AutomationException
Copies this dataset to a new dataset with the specified name.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
copy in interface IDataset
Specified by:
copy in interface IRasterDataset
Parameters:
copyName - The copyName (in)
copyWorkspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

precalculateStats

public void precalculateStats(Object index_list)
                       throws IOException,
                              AutomationException
Calculates statistics and histograms for specified bands.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
precalculateStats in interface IRasterDataset
Parameters:
index_list - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCompleteName

public String getCompleteName()
                       throws IOException,
                              AutomationException
The full path of the RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCompleteName in interface IRasterDataset
Returns:
The completeName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

createRaster

public IRaster createRaster()
                     throws IOException,
                            AutomationException
Creates an empty raster.

Remarks

An empty raster means that properties of the Raster are not defined. The width, height, and the number of bands of the raster are all 0. It can not be used before populating pixels to it.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
createRaster in interface IRasterDataset2
Returns:
A reference to a com.esri.arcgis.geodatabase.IRaster
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

createFullRaster

public IRaster createFullRaster()
                         throws IOException,
                                AutomationException
Creates a raster containing all bands in this raster dataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
createFullRaster in interface IRasterDataset2
Returns:
A reference to a com.esri.arcgis.geodatabase.IRaster
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEmpty

public boolean isEmpty()
                throws IOException,
                       AutomationException
Indicates whether the raster dataset is empty.

Remarks

An empty raster means that properties of the Raster are not defined. The width, height, and the number of bands of the raster are all 0. It can not be used before populating pixels to it.

Co-create a Raster and IRasterDataset2::CreateRaster create an empty raster.

IRasterBandCollection::AppendBands or AppendBand allows you to populate this raster.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getBlockWidth

public int getBlockWidth()
                  throws IOException,
                         AutomationException
The native block width.

Product Availability

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

Specified by:
getBlockWidth in interface IRasterDataset3
Returns:
The width
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBlockHeight

public int getBlockHeight()
                   throws IOException,
                          AutomationException
The native block height.

Product Availability

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

Specified by:
getBlockHeight in interface IRasterDataset3
Returns:
The height
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaximumPyramidLevel

public int getMaximumPyramidLevel()
                           throws IOException,
                                  AutomationException
The maximum available pyramid level.

Product Availability

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

Specified by:
getMaximumPyramidLevel in interface IRasterDataset3
Returns:
The maxLevel
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFirstPyramidLevel

public int getFirstPyramidLevel()
                         throws IOException,
                                AutomationException
The first available pyramid level.

Product Availability

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

Specified by:
getFirstPyramidLevel in interface IRasterDataset3
Returns:
The firstLevel
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLODInfos

public IRasterLODInfos getLODInfos()
                            throws IOException,
                                   AutomationException
The custom LOD infos.

Product Availability

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

Specified by:
getLODInfos in interface IRasterDataset3
Returns:
A reference to a com.esri.arcgis.geodatabase.IRasterLODInfos
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanWrite

public boolean isCanWrite()
                   throws IOException,
                          AutomationException
Indicates if this RasterDataset is writable.

Product Availability

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

Specified by:
isCanWrite in interface IRasterDataset3
Returns:
The canWrite
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

read

public void read(IPnt tlc,
                 IRaster raster,
                 IPixelBlock pixelBlock)
          throws IOException,
                 AutomationException
Reads a block of pixels starting from the top left corner.

Product Availability

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

Specified by:
read in interface IRasterDataset3
Parameters:
tlc - A reference to a com.esri.arcgis.geodatabase.IPnt (in)
raster - A reference to a com.esri.arcgis.geodatabase.IRaster (in)
pixelBlock - A reference to a com.esri.arcgis.geodatabase.IPixelBlock (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

write

public void write(IPnt tlc,
                  IRaster raster,
                  int mode,
                  IPixelBlock pixelBlock)
           throws IOException,
                  AutomationException
Writes a block of pixels starting from the top left corner.

Product Availability

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

Specified by:
write in interface IRasterDataset3
Parameters:
tlc - A reference to a com.esri.arcgis.geodatabase.IPnt (in)
raster - A reference to a com.esri.arcgis.geodatabase.IRaster (in)
mode - A com.esri.arcgis.geodatabase.esriRasterWriteMode constant (in)
pixelBlock - A reference to a com.esri.arcgis.geodatabase.IPixelBlock (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refresh

public void refresh()
             throws IOException,
                    AutomationException
Refreshes opened RasterDataset.

Product Availability

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

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

readPyramid

public void readPyramid(IPnt tlc,
                        int pyramidLevel,
                        IRaster raster,
                        IPixelBlock pixelBlock)
                 throws IOException,
                        AutomationException
Reads a block of pixels at a given pyramid level.

Product Availability

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

Specified by:
readPyramid in interface IRasterDataset3
Parameters:
tlc - A reference to a com.esri.arcgis.geodatabase.IPnt (in)
pyramidLevel - The pyramidLevel (in)
raster - A reference to a com.esri.arcgis.geodatabase.IRaster (in)
pixelBlock - A reference to a com.esri.arcgis.geodatabase.IPixelBlock (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getName

public String getName()
               throws IOException,
                      AutomationException
The name of the Dataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getName in interface IDataset
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFullName

public IName getFullName()
                  throws IOException,
                         AutomationException
The associated name object.

Remarks

The FullName property returns a Name object for the dataset. The Name object can be persisted and provides a way to get back to the dataset in a future session of the application, via the Open method on the Name object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getBrowseName

public String getBrowseName()
                     throws IOException,
                            AutomationException
The browse name of the dataset.

Remarks

BrowseName returns file names without their extension. For example, States.shp would appear as States.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getBrowseName in interface IDataset
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBrowseName

public void setBrowseName(String name)
                   throws IOException,
                          AutomationException
The browse name of the dataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getType

public int getType()
            throws IOException,
                   AutomationException
The type of the Dataset.

Remarks

The Type property returns the an esriDatasetType value indicating the dataset type, such as esriDTTable or esriDTFeatureClass.

Example:


// Assume we have a reference to an IfeatureClass (pFeatureClass) IDataset pDataset = null;
pDataset = new IDatasetProxy(pFeatureClass);
System.out.println(pDataset.getName() + " " + pDataset.getType());
if(pFeatureClass != null){
pDataset = pFeatureClass.getFeatureDataset();
System.out.println(pDataset.getName() + " " + pDataset.getType());
}
pDataset = new IDatasetProxy(pDataset.getWorkspace());
System.out.println(pDataset.getName() + " " +
pDataset.getType());

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getType in interface IDataset
Returns:
A com.esri.arcgis.geodatabase.esriDatasetType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCategory

public String getCategory()
                   throws IOException,
                          AutomationException
The category of the dataset.

Remarks

IDataset::Category returns a description of the category of the dataset. The description returned from the Category property is the same value that is displayed in the Type column within the Contents tab in ArcCatalog. The value will contain a description of the dataset such as "Topology" prefixed with a description of the type of workspace containing the dataset such as "File Geodatabase".

The description returned from IDataset::Category may change between releases of ArcGIS. In addition to this, returned strings are localized, meaning that code relying on a specific string being provided may fail when deployed with a different version of ArcGIS than it was developed with, or when deployed to a client using a different language than it was developed with.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCategory in interface IDataset
Returns:
The category
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubsets

public IEnumDataset getSubsets()
                        throws IOException,
                               AutomationException
Datasets contained within this dataset.

Description

The Subsets property returns other Dataset objects contained in this dataset.

Remarks

IDataset::Subsets is not supported for Graph objects such as a Geometric Network. To return the feature classes contained in a Geometric Network, use the IFeatureClassContainer interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSubsets in interface IDataset
Returns:
A reference to a com.esri.arcgis.geodatabase.IEnumDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getWorkspace

public IWorkspace getWorkspace()
                        throws IOException,
                               AutomationException
The workspace containing this dataset.

Description

The Workspace property returns the containing workspace for this dataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getWorkspace in interface IDataset
Returns:
A reference to a com.esri.arcgis.geodatabase.IWorkspace
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPropertySet

public IPropertySet getPropertySet()
                            throws IOException,
                                   AutomationException
The set of properties for the dataset.

Description

The PropertySet property is used to return any additional intrinsic properties (but not metadata properties) that may apply to the dataset. One use of this property is to distinguish between the types of File Geodatabase datafile formats. If called on a Feature Class or Table in a File Geodatabase the Datafile Format property can either be esriFGDBStandardDatafile or esriFGDBCompressedDatafile.

Most datasets do not implement this property and will either raise an error or return a null value if it's called. There are a handful of exceptions that will return property sets; these include the datasets from file geodatabases (as mentioned above) and coverages.

Remarks

Examples of intrinsic properties for which explicit methods exist include the SpatialReference and the Extent methods available on the IGeoDataset interface. In most cases this PropertySet will be empty.

IDataset::PropertySet is not supported for Graph objects such as a Geometric Network.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

canDelete

public boolean canDelete()
                  throws IOException,
                         AutomationException
True if this dataset can be deleted.

Remarks

The CanCopy, CanDelete, and CanRename properties are meant to be used in conjunction with the Copy, Delete, and Rename methods and signify whether a dataset is supported by these methods. For example, you may not delete a network feature class nor can you use the Copy method on a Geodatabase feature class. To copy Geodatabase datasets, including feature classes, geometric networks, topologies, etc., use the IGeoDBDataTransfer interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

delete

public void delete()
            throws IOException,
                   AutomationException
Deletes this dataset.

Remarks

Certain feature classes, such as network and topology feature classes, cannot be deleted until their containing objects are deleted.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

canRename

public boolean canRename()
                  throws IOException,
                         AutomationException
True if this dataset can be renamed.

Remarks

The CanCopy, CanDelete, and CanRename properties are meant to be used in conjunction with the Copy, Delete, and Rename methods and signify whether a dataset is supported by these methods. For example, you may not delete or rename a network feature class nor can you use the Copy method on a Geodatabase feature class. To copy Geodatabase datasets, including feature classes, geometric networks, topologies, etc., use the IGeoDBDataTransfer interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

rename

public void rename(String name)
            throws IOException,
                   AutomationException
Renames this Dataset.

Remarks

IDataset::Rename does not support the renaming of Graph objects such as a Geometric Network. In addition, certain feature classes, such as network feature classes, cannot be renamed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getSpatialReference

public ISpatialReference getSpatialReference()
                                      throws IOException,
                                             AutomationException
The spatial reference of the GeoDataset.

Remarks

This property is read only. For layers, when the first layer is added to ArcMap, its spatial reference is read by this property, and the map is set to this spatial reference.

Instances of the esriCarto.GroupLayer class will return null for this property, as a group layer can contain multiple datasets with different spatial references.

Modifications to a spatial reference returned by this property will not be persisted. To modify the spatial reference of a dataset, the IGeoDatasetSchemaEdit and IGeoDatasetSchemaEdit2 interfaces should be used.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSpatialReference in interface IGeoDataset
Returns:
A reference to a com.esri.arcgis.geometry.ISpatialReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExtent

public IEnvelope getExtent()
                    throws IOException,
                           AutomationException
The extent of the GeoDataset.

Remarks

The IGeoDataset::Extent property returns an envelope representing the maximum extent of data which has been stored in the dataset.

Consider the following scenario. A new feature class has features added to it. The IGeoDataset::Extent is then requested and an envelope is returned. The extents of the envelope returned are represented by the red box in the image below.

The red box represents the IGeoDataset extent

If a portion of the features were then deleted and the extent is again requested an envelope with the exact same extents as during the first request would be returned (see image below). This is because the deletion of features does not shrink the extent. However all additions of features outside the red box would increase the envelope returned to encompass the newly added features.

The red box represents the IGeoDataset extent after some of the features have been deleted

If you would like to update the IGeoDataset::Extent property to reflect the current features in your dataset please see IFeatureClassManage::UpdateExtent (also see IFeatureClassLoad). In the image below the extent has been updated and a new envelope is being returned.

The red box represents the IGeoDataset extent after it has been updated

ESRI's GroupLayer implements this property differently from most other layer coclasses. When you instantiate a new GroupLayer, this property will return a valid envelope with zero height and width. With most other newly instantiated layers (for example FeatureLayer, RasterLayer, TinLayer), this property initally returns Nothing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExtent in interface IGeoDataset
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getGeodataXform

public IGeodataXform getGeodataXform()
                              throws IOException,
                                     AutomationException
The geodata transformation of the GeoDataset.

Product Availability

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

Specified by:
getGeodataXform in interface IGeoDataset2
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeodataXform
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNativeSpatialReference

public ISpatialReference getNativeSpatialReference()
                                            throws IOException,
                                                   AutomationException
The native spatial reference of the GeoDataset (before transformation applied).

Product Availability

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

Specified by:
getNativeSpatialReference in interface IGeoDataset2
Returns:
A reference to a com.esri.arcgis.geometry.ISpatialReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNativeExtent

public IEnvelope getNativeExtent()
                          throws IOException,
                                 AutomationException
The native extent of the GeoDataset (before transformation applied).

Product Availability

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

Specified by:
getNativeExtent in interface IGeoDataset2
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

add

public void add(IRasterBand element,
                int index)
         throws IOException,
                AutomationException
Adds a RasterBand to the band collection.

Remarks

This method is only applicable to work with a Raster, not with a RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
add in interface IRasterBandCollection
Parameters:
element - A reference to a com.esri.arcgis.datasourcesraster.IRasterBand (in)
index - The index (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCount

public int getCount()
             throws IOException,
                    AutomationException
The number of bands in the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCount in interface IRasterBandCollection
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

clear

public void clear()
           throws IOException,
                  AutomationException
Removes all the elements in the collection.

Remarks

This method is only applicable to work with a Raster, not with a RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

remove

public void remove(int index)
            throws IOException,
                   AutomationException
Removes an element from the collection.

Remarks

This method is only applicable to work with a Raster, not with a RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getBandIndex

public int getBandIndex(String name)
                 throws IOException,
                        AutomationException
The index of a RasterBand given its name.

Product Availability

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

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

getBandByName

public IRasterBand getBandByName(String name)
                          throws IOException,
                                 AutomationException
A RasterBand given its name.

Product Availability

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

Specified by:
getBandByName in interface IRasterBandCollection
Parameters:
name - The name (in)
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterBand
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBands

public IEnumRasterBand getBands()
                         throws IOException,
                                AutomationException
All the bands in the collection as an interface to the RasterBands enumerator object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getBands in interface IRasterBandCollection
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IEnumRasterBand
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

item

public IRasterBand item(int bandIndex)
                 throws IOException,
                        AutomationException
Returns a RasterBand given its index.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
item in interface IRasterBandCollection
Parameters:
bandIndex - The bandIndex (in)
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterBand
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

saveAs

public IDataset saveAs(String new_name,
                       IWorkspace worksp,
                       String format)
                throws IOException,
                       AutomationException
Creates a new persistent RasterDataset with the bands in the collection.

Remarks

The SaveAs method can create a raster dataset in Imagine, TIFF, GRID, JPEG2000, JPEG, BMP, GIF, PNG, PCI Raster, USGS ASCII DEM, X11 Pixmap, Memory Raster and geodatabase raster.

The format strings used for the supported formats are below, and they are case sensitive:

Format Name String Used
Imagine "IMAGINE Image"
TIFF "TIFF"
GRID "GRID"
JPEG "JPG"
JP2000 "JP2"
BMP "BMP"
PNG "PNG"
GIF "GIF"
PCI Raster "PIX"
X11 Pixmap "XPM"
PCRaster "MAP"
Memory Raster "MEM"
HDF4 "HDF4"
BIL "BIL"
BIP "BIP"
BSQ "BSQ"
Idrisi Raster Format "RST"
ENVI Raster Format "ENVI"
Geodatabase Raster "GDB"

The format string "TIFF" creates a TIFF file with ".tif" extension. ArcGIS also supports TIFF format with ".tiff" and ".tff" extensions. A format string "TIF" creates a TIFF file with ".tiff" extention and a format string "TFF" creates a TIFF file with ".tff" extension.

Note, SaveAs will return a RasterDataset, to prevent from SaveAs holding the output, .NET ReleaseCOMObject needs to be called to release the referene to the output raster dataset:

System.Runtime.InteropServices.Marshal.ReleaseComObject(outRasterDS);

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
saveAs in interface IRasterBandCollection
Parameters:
new_name - The new_name (in)
worksp - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
format - The format (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

appendBand

public void appendBand(IRasterBand element)
                throws IOException,
                       AutomationException
Appends a RasterBand to the band collection.

Remarks

This method is only applicable to work with a Raster, not with a RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
appendBand in interface IRasterBandCollection
Parameters:
element - A reference to a com.esri.arcgis.datasourcesraster.IRasterBand (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

appendBands

public void appendBands(IRasterBandCollection bands)
                 throws IOException,
                        AutomationException
Appends a collection of RasterBands to the band collection.

Remarks

This method is only applicable to work with a Raster, not with a RasterDataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
appendBands in interface IRasterBandCollection
Parameters:
bands - A reference to a com.esri.arcgis.datasourcesraster.IRasterBandCollection (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPaths

public IStringArray getPaths()
                      throws IOException,
                             AutomationException
Returns all paths associated with the object.

Product Availability

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

Specified by:
getPaths in interface IItemPaths
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.

replacePaths

public void replacePaths(IStringArray pOldPaths,
                         IStringArray pNewPaths)
                  throws IOException,
                         AutomationException
Updates all paths associated with the object using the specified mapping rule. The number of values in the two arrays must be the same.

Product Availability

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

Specified by:
replacePaths in interface IItemPaths
Parameters:
pOldPaths - A reference to a com.esri.arcgis.system.IStringArray (in)
pNewPaths - 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.

getNativeType

public INativeType getNativeType()
                          throws IOException,
                                 AutomationException
The native type.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getNativeType in interface INativeTypeInfo
Returns:
A reference to a com.esri.arcgis.geodatabase.INativeType
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMetadata

public IPropertySet getMetadata()
                         throws IOException,
                                AutomationException
The PropertySet containing metadata.

Remarks

The variable to hold the data must be of IPropertySet data type.

The metadata property is frequently used to save, or update, changes to metadata documents that have taken place through methods available on the IPropertySet, IXmlPropertySet, and/or IXmlPropertySet2 interfaces.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setMetadata

public void setMetadata(IPropertySet ppPropertySet)
                 throws IOException,
                        AutomationException
The PropertySet containing metadata.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMetadata in interface IMetadata
Parameters:
ppPropertySet - 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.

synchronize

public void synchronize(int action,
                        int interval)
                 throws IOException,
                        AutomationException
Updates metadata with the current properties; may create metadata if it doesn't already exist.

Description

The Synchronize method is used to extract metadata properties from an object and write those properties to the metadata .xml. Depending on the value of the esriMetaSyncAction, the Synchronize method may generate a new set of metadata if it doesn't already exist.

Remarks

The following actions will result in synchronization given each of the listed conditions:

Action Metadata status Esri/Sync element Interval parameter
esriMSAAccessed Doesn't matter Must not be FALSE Must be less than actual interval
esriMSAAlways Doesn't matter Doesn't matter Doesn't matter
esriMSACreated Must not exist Must not be FALSE Must be less than actual interval
esriMSANotCreated Must exist Must not be FALSE Must be less than actual interval
esriMSAOverwrite Doesn't matter Doesn't matter Doesn't matter

The difference between esriMSAAlways and esriMSAOverwrite lies in which elements are synchronized. esriMSAAlways will honor the removal or value change of an element's Sync attribute (to disable synchronization), whereas using esriMSAOverwrite is equivalent to setting the IXmlPropertySet2.OverwriteSyncAttribute to true for the metadata's property set, meaning that even elements without a Sync attribute of TRUE will be synchronized.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
synchronize in interface IMetadata
Parameters:
action - A com.esri.arcgis.geodatabase.esriMetadataSyncAction constant (in)
interval - The interval (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanEditMetadata

public boolean isCanEditMetadata()
                          throws IOException,
                                 AutomationException
Indicates if metadata can be edited.

Remarks

This property is available to those objects that support metadata.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isCanEditMetadata in interface IMetadataEdit
Returns:
The pCanEdit
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isTemporary

public boolean isTemporary()
                    throws IOException,
                           AutomationException
Indicates if the dataset is temporary.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isTemporary in interface ITemporaryDataset
Returns:
The temporary
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

makePermanent

public void makePermanent()
                   throws IOException,
                          AutomationException
Persists this temporary dataset permanent.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

makePermanentAs

public IDataset makePermanentAs(String new_name,
                                IWorkspace workspace,
                                String format)
                         throws IOException,
                                AutomationException
Persists this temporary dataset to a new permanent dataset.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
makePermanentAs in interface ITemporaryDataset
Parameters:
new_name - The new_name (in)
workspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
format - The format (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDynamic

public boolean isDynamic()
                  throws IOException,
                         AutomationException
Indicates the collection is dynamic.

Product Availability

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

Specified by:
isDynamic in interface IRasterDatasetContainer
Returns:
The pIsDynamic
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubRasterDatasetCount

public int getSubRasterDatasetCount()
                             throws IOException,
                                    AutomationException
The number of subdatasets.

Product Availability

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

Specified by:
getSubRasterDatasetCount in interface IRasterDatasetContainer
Returns:
The pCount
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubRasterDatasetName

public String getSubRasterDatasetName(int subdatasetID)
                               throws IOException,
                                      AutomationException
The given subdataset's name.

Product Availability

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

Specified by:
getSubRasterDatasetName in interface IRasterDatasetContainer
Parameters:
subdatasetID - The subdatasetID (in)
Returns:
The pName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubRasterDatasetCompleteName

public String getSubRasterDatasetCompleteName(int subdatasetID)
                                       throws IOException,
                                              AutomationException
The given subdataset's complete name.

Product Availability

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

Specified by:
getSubRasterDatasetCompleteName in interface IRasterDatasetContainer
Parameters:
subdatasetID - The subdatasetID (in)
Returns:
The pName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubRasterDatasetFullName

public IName getSubRasterDatasetFullName(int subdatasetID)
                                  throws IOException,
                                         AutomationException
The given subdataset's full name.

Product Availability

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

Specified by:
getSubRasterDatasetFullName in interface IRasterDatasetContainer
Parameters:
subdatasetID - The subdatasetID (in)
Returns:
A reference to a com.esri.arcgis.system.IName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubRasterDatasetByID

public IRasterDataset getSubRasterDatasetByID(int subdatasetID)
                                       throws IOException,
                                              AutomationException
The given subdataset by id.

Product Availability

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

Specified by:
getSubRasterDatasetByID in interface IRasterDatasetContainer
Parameters:
subdatasetID - The subdatasetID (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IRasterDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubRasterDatasetByName

public IRasterDataset getSubRasterDatasetByName(String subdatasetName)
                                         throws IOException,
                                                AutomationException
The given subdataset by name.

Product Availability

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

Specified by:
getSubRasterDatasetByName in interface IRasterDatasetContainer
Parameters:
subdatasetName - The subdatasetName (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IRasterDataset
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.

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