|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IPlugInCursorHelper
Provides access to members that help the Plug-In cursor.
This interface must be implemented by the plug-in cursor helper class of a plug-in data source. When the cursor is created QueryValues and QueryShape get the data for the first record in the results. NextRecord advances the current record, so that QueryValues and QueryShape then get data for the next record.
Method Summary | |
---|---|
boolean |
isFinished()
Returns True if there are no more records in the record set. |
void |
nextRecord()
Gets the next row in the record set. |
void |
queryShape(IGeometry pGeometry)
Gets the geometry of the current record. |
int |
queryValues(IRowBuffer row)
Gets the values for the non-geometry fields in the current record. |
Method Detail |
---|
void nextRecord() throws IOException, AutomationException
NextRecord advances the cursor helper to represent the next record in the collection. Calling this method repeatedly should get all the records in the results without getting any record twice. This method fails when there are no more records left to get.
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.boolean isFinished() throws IOException, AutomationException
Returns true if there are no more records to get from the cursor. IsFinished is called any time that NextRecord fails.
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.int queryValues(IRowBuffer row) throws IOException, AutomationException
Copies data from the current record into the row that is passed in. The method should get the field-set from the row buffer. The field map passed to the Fetch method determines which fields will be copied. For each field in the field set, the data should be copied only if the corresponding value in the field map is not -1.
However, the shape and object ID fields should NOT be copied. The shape field is handled separately in QueryShape. The object ID cannot be set through the IRowBuffer interface. Instead, the object ID should be the return value of QueryValues.
row
- A reference to a com.esri.arcgis.geodatabase.IRowBuffer (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void queryShape(IGeometry pGeometry) throws IOException, AutomationException
QueryShape uses the data in the shape field of the current record to populate the geometry. If anything goes wrong, the geometry should be set empty.
This method should not allocate memory. For simple shapes you can reset the contents of the supplied geometry object. For data sources with complex shapes it is more efficient to use the AttachtoESRIShape method on IESRIShape to attach a shape buffer to the geometry. This shape buffer should be reused for each geometry. For information on the shape buffer, see the white paper on shapefiles, which use the same shape format, found at http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf.
pGeometry
- A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |