com.esri.arcgis.networkanalyst
Interface INAClassDefinitionEdit

All Superinterfaces:
Serializable
All Known Implementing Classes:
NAClassDefinition

public interface INAClassDefinitionEdit
extends Serializable

Provides access to editable properties common to all network analyst class definitions.

Remarks

INAClassDefinitionEdit is the interface on the NAClassDefinition object used to setup the properties of an NAClassDefinition object. It provides properties for things like the NAClass name, its field types, the candidate field names used during bulk loading of network location features, if the NAClass is for input and/or output and the upper and lower bound of features in the class required for analysis.

These properties should only be set by an NASolver in response to a call to CreateContext or UpdateContext. The only exception is CandidateFieldNames which can be set at any time to provide good default field mappings to be used by the NAClassFieldMap in conjunction with the NAClassLoader.

This interface could also be useful to set up custom class definitions for a custom solver.

The INAClassDefinition interface should be used if you want to access the properties of an NAClassDefinition object.

Product Availability

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


Method Summary
 void setCandidateFieldNamesByRef(String fieldName, IStringArray rhs2)
          The field names that will be used by default for the network analyst class.
 void setClassCLSIDByRef(IUID rhs1)
          The COM class id for the network analyst class.
 void setFieldsByRef(IFields rhs1)
          The fields for the network analyst class.
 void setFieldType(String fieldName, int rhs2)
          The field type for a network analyst class field.
 void setIsInput(boolean rhs1)
          Indicates if the class is used as an input to analysis.
 void setIsOutput(boolean rhs1)
          Indicates if the class is used as an output from analysis.
 void setLowerBound(int rhs1)
          The minimum number of objects required in the class by the solver to perform analysis.
 void setName(String rhs1)
          The name of the class.
 void setUpperBound(int rhs1)
          The maximum number of objects allowed in the class by the solver to perform analysis.
 

Method Detail

setName

void setName(String rhs1)
             throws IOException,
                    AutomationException
The name of the class.

Remarks

This property should only be set by a custom solver during the creation of the NAContext.

Product Availability

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

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setClassCLSIDByRef

void setClassCLSIDByRef(IUID rhs1)
                        throws IOException,
                               AutomationException
The COM class id for the network analyst class.

Remarks

This property should only be set by a custom solver during the creation of the NAContext.

Product Availability

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

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

setFieldsByRef

void setFieldsByRef(IFields rhs1)
                    throws IOException,
                           AutomationException
The fields for the network analyst class.

Remarks

This property should only be set by a custom solver during the creation of the NAContext.

Product Availability

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

Parameters:
rhs1 - A reference to a com.esri.arcgis.geodatabase.IFields (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFieldType

void setFieldType(String fieldName,
                  int rhs2)
                  throws IOException,
                         AutomationException
The field type for a network analyst class field.

Product Availability

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

Parameters:
fieldName - The fieldName (in)
rhs2 - The rhs2 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCandidateFieldNamesByRef

void setCandidateFieldNamesByRef(String fieldName,
                                 IStringArray rhs2)
                                 throws IOException,
                                        AutomationException
The field names that will be used by default for the network analyst class.

Remarks

CandidateFieldNames returns an IStringArray that contains an array of field names that are used to provide hints to the NAClassFieldMap for how to map input fields to fields on the NAClass.

This property is OK to be set at any time.

Product Availability

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

Parameters:
fieldName - The fieldName (in)
rhs2 - 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.

setLowerBound

void setLowerBound(int rhs1)
                   throws IOException,
                          AutomationException
The minimum number of objects required in the class by the solver to perform analysis.

Remarks

LowerBound specifies the minimum number of network locations required by the solver to perform analysis.

This property should only be set by a custom solver during the creation of the NAContext.

Product Availability

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

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUpperBound

void setUpperBound(int rhs1)
                   throws IOException,
                          AutomationException
The maximum number of objects allowed in the class by the solver to perform analysis.

Remarks

UpperBound specifies the maximum number of network locations required by the solver to perform analysis.

This property should only be set by a custom solver during the creation of the NAContext.

Product Availability

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

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsInput

void setIsInput(boolean rhs1)
                throws IOException,
                       AutomationException
Indicates if the class is used as an input to analysis.

Remarks

IsInput specifies if the NAClass is used as input for the solve.

An NAClass may be both an input and output class. For example, Stops are used as input to specify the locations visited and used as output to specify how long it took to reach each location visited.

This property should only be set by a custom solver during the creation of the NAContext.

Product Availability

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

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsOutput

void setIsOutput(boolean rhs1)
                 throws IOException,
                        AutomationException
Indicates if the class is used as an output from analysis.

Remarks

IsOutput specifies if the NAClass is used as output generated during the solve.

An output NAClass generally has features written to it or fields updated on existing features during solve. An NAClass may be both an input and output class. For example, Stops are used as input to specify the locations visited and used as output to specify how long it took to reach each location visited.

This property should only be set by a custom solver during the creation of the NAContext.

Product Availability

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

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.