|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.carto.TerrainPointAttributeRenderer
public class TerrainPointAttributeRenderer
Terrain point renderer component.
Constructor Summary | |
---|---|
TerrainPointAttributeRenderer()
Constructs a TerrainPointAttributeRenderer using ArcGIS Engine. |
|
TerrainPointAttributeRenderer(Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. TerrainPointAttributeRenderer theTerrainPointAttributeRenderer = (TerrainPointAttributeRenderer) obj; |
Method Summary | |
---|---|
boolean |
applies(Object pUnk)
Indicates if the receiver can apply the given object at any given time. |
Object |
apply(Object newObject)
Applies the given property to the receiver and returns the old object. |
boolean |
canApply(Object pUnk)
Indicates if the receiver can apply the given object at that particular moment. |
boolean |
canRender()
Indicates if renderer can draw. |
void |
copy(ITinRenderer pSource)
Copies the properties of the given renderer. |
void |
draw(int drawPhase,
IDisplay display,
ISpatialReference aSpatialReference,
ITrackCancel trackCancel)
Draws the TIN. |
boolean |
equals(Object o)
Compare this object with another |
IEnvelope |
getAreaOfInterest()
The area of interest to be rendered. |
String |
getAttributeFieldName()
The name of the reserved field to be used to define drawing symbol. |
double |
getBreak(int index)
The value of the break at the index. |
int |
getBreakCount()
The number of breaks. |
void |
getClassID(GUID[] pClassID)
getClassID |
static String |
getClsid()
getClsid. |
String |
getColorRamp()
File and path name of the color ramp. |
Object |
getCurrent(Object pUnk)
The object currently being used. |
ILongArray |
getDataSources()
The embedded data sources to be rendered. |
String |
getDescription(int index)
The description for the renderer. |
double |
getDeviationInterval()
Deviation interval (0-1), where 0 means that no deviation is used. |
String |
getLabel(int index)
The label for the break at the given index. |
ILegendGroup |
getLegendGroup(int index)
Legend group at the specified index. |
int |
getLegendGroupCount()
Number of legend groups contained by the object. |
ILegendItem |
getLegendItem()
Optional. |
double |
getLowBreak(int index)
Lower bound of the class at the specified index. |
int |
getMaxSampleSize()
Maximum sample size. |
IUID |
getMethod()
Classification method. |
double |
getMinimumBreak()
The value of the minimum break. |
String |
getName()
The descriptive name of a renderer. |
INumberFormat |
getNumberFormat()
Number format for class labels. |
double |
getResolution()
The resolution to be rendered. |
int |
getSamplingMethod()
Data sampling method. |
void |
getSizeMax(_ULARGE_INTEGER[] pcbSize)
getSizeMax |
ISymbol |
getSymbol(int index)
The symbol representing the break at the index. |
ITerrain |
getTerrain()
The Terrain associated with the renderer. |
ITin |
getTin()
The TIN associated with the renderer. |
int |
hashCode()
the hashcode for this object |
void |
isDirty()
isDirty |
boolean |
isShowClassGaps()
Indicates if each lower bound is adjusted up to the nearest existing data value. |
boolean |
isSortClassesAscending()
Indicates if the sort direction for the legend class labels is ascending. |
boolean |
isSymbolsAreGraduated()
Indicates if symbols are graduated. |
boolean |
isVisible()
Indicates if the renderer is currently visible. |
void |
load(IStream pstm)
load |
void |
readExternal(ObjectInput in)
|
void |
redefineSymbols()
Redefine drawing symbols based on cueernt data sources and attribute field name. |
void |
save(IStream pstm,
int fClearDirty)
save |
void |
setAreaOfInterest(IEnvelope ppAOI)
The area of interest to be rendered. |
void |
setAttributeFieldName(String pName)
The name of the reserved field to be used to define drawing symbol. |
void |
setBreak(int index,
double value)
The value of the break at the index. |
void |
setBreakCount(int valueCount)
The number of breaks. |
void |
setColorRamp(String colorRamp)
File and path name of the color ramp. |
void |
setDataSources(ILongArray pDataSources)
The embedded data sources to be rendered. |
void |
setDescription(int index,
String text)
The description for the renderer. |
void |
setDeviationInterval(double interval)
Deviation interval (0-1), where 0 means that no deviation is used. |
void |
setLabel(int index,
String label)
The label for the break at the given index. |
void |
setLowBreak(int index,
double value)
Lower bound of the class at the specified index. |
void |
setMaxSampleSize(int size)
Maximum sample size. |
void |
setMethodByRef(IUID clsid)
Classification method. |
void |
setMinimumBreak(double value)
The value of the minimum break. |
void |
setName(String name)
The descriptive name of a renderer. |
void |
setNumberFormatByRef(INumberFormat format)
Number format for class labels. |
void |
setResolution(double pResolution)
The resolution to be rendered. |
void |
setSamplingMethod(int method)
Data sampling method. |
void |
setShowClassGaps(boolean showGaps)
Indicates if each lower bound is adjusted up to the nearest existing data value. |
void |
setSortClassesAscending(boolean ascending)
Indicates if the sort direction for the legend class labels is ascending. |
void |
setSymbol(int index,
ISymbol sym)
The symbol representing the break at the index. |
void |
setSymbolsAreGraduated(boolean symbolsAreGraduated)
Indicates if symbols are graduated. |
void |
setTerrainByRef(ITerrain ppTerrain)
The Terrain associated with the renderer. |
void |
setTinByRef(ITin ppTin)
The TIN associated with the renderer. |
void |
setVisible(boolean visible)
Indicates if the renderer is currently visible. |
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 |
---|
public TerrainPointAttributeRenderer() throws IOException, UnknownHostException
IOException
- if there are interop problems
UnknownHostException
- if there are interop problemspublic TerrainPointAttributeRenderer(Object obj) throws IOException
TerrainPointAttributeRenderer theTerrainPointAttributeRenderer = (TerrainPointAttributeRenderer) obj;
obj
to TerrainPointAttributeRenderer
.
obj
- an object returned from ArcGIS Engine or Server
IOException
- if there are interop problemsMethod Detail |
---|
public static String getClsid()
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public int getBreakCount() throws IOException, AutomationException
getBreakCount
in interface ITinColorRampRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setBreakCount(int valueCount) throws IOException, AutomationException
setBreakCount
in interface ITinColorRampRenderer
valueCount
- The valueCount (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ISymbol getSymbol(int index) throws IOException, AutomationException
getSymbol
in interface ITinColorRampRenderer
index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setSymbol(int index, ISymbol sym) throws IOException, AutomationException
setSymbol
in interface ITinColorRampRenderer
index
- The index (in)sym
- A reference to a com.esri.arcgis.display.ISymbol (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getLabel(int index) throws IOException, AutomationException
getLabel
in interface ITinColorRampRenderer
index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setLabel(int index, String label) throws IOException, AutomationException
setLabel
in interface ITinColorRampRenderer
index
- The index (in)label
- The label (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getDescription(int index) throws IOException, AutomationException
getDescription
in interface ITinColorRampRenderer
index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setDescription(int index, String text) throws IOException, AutomationException
setDescription
in interface ITinColorRampRenderer
index
- The index (in)text
- The text (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getBreak(int index) throws IOException, AutomationException
getBreak
in interface ITinColorRampRenderer
index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setBreak(int index, double value) throws IOException, AutomationException
setBreak
in interface ITinColorRampRenderer
index
- The index (in)value
- The value (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getMinimumBreak() throws IOException, AutomationException
getMinimumBreak
in interface ITinColorRampRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setMinimumBreak(double value) throws IOException, AutomationException
setMinimumBreak
in interface ITinColorRampRenderer
value
- The value (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isSortClassesAscending() throws IOException, AutomationException
isSortClassesAscending
in interface ITinColorRampRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setSortClassesAscending(boolean ascending) throws IOException, AutomationException
setSortClassesAscending
in interface ITinColorRampRenderer
ascending
- The ascending (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getLowBreak(int index) throws IOException, AutomationException
getLowBreak
in interface IClassBreaksUIProperties
index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setLowBreak(int index, double value) throws IOException, AutomationException
setLowBreak
in interface IClassBreaksUIProperties
index
- The index (in)value
- The value (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getColorRamp() throws IOException, AutomationException
getColorRamp
in interface IClassBreaksUIProperties
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setColorRamp(String colorRamp) throws IOException, AutomationException
setColorRamp
in interface IClassBreaksUIProperties
colorRamp
- The colorRamp (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IUID getMethod() throws IOException, AutomationException
getMethod
in interface IClassBreaksUIProperties
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setMethodByRef(IUID clsid) throws IOException, AutomationException
setMethodByRef
in interface IClassBreaksUIProperties
clsid
- A reference to a com.esri.arcgis.system.IUID (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public INumberFormat getNumberFormat() throws IOException, AutomationException
This property affects the formatting of the class labels on the layer properties dialog's symbology tab.
getNumberFormat
in interface IClassBreaksUIProperties
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.ILatLonFormat2
,
CustomNumberFormat
,
IRateFormat
,
IAngleFormat
,
NumericFormat
,
LatLonFormat
,
CurrencyFormat
,
INumericFormat
,
IFractionFormat
,
RateFormat
,
IScientificNumberFormat
,
ICustomNumberFormat
,
ILatLonFormat
,
IPercentageFormat
,
INumberFormat
,
ScientificFormat
,
FractionFormat
,
PercentageFormat
,
AngleFormat
public void setNumberFormatByRef(INumberFormat format) throws IOException, AutomationException
setNumberFormatByRef
in interface IClassBreaksUIProperties
format
- A reference to a com.esri.arcgis.system.INumberFormat (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isShowClassGaps() throws IOException, AutomationException
isShowClassGaps
in interface IClassBreaksUIProperties
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setShowClassGaps(boolean showGaps) throws IOException, AutomationException
setShowClassGaps
in interface IClassBreaksUIProperties
showGaps
- The showGaps (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getDeviationInterval() throws IOException, AutomationException
getDeviationInterval
in interface IClassBreaksUIProperties
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setDeviationInterval(double interval) throws IOException, AutomationException
setDeviationInterval
in interface IClassBreaksUIProperties
interval
- The interval (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setTerrainByRef(ITerrain ppTerrain) throws IOException, AutomationException
setTerrainByRef
in interface ITerrainRenderer
ppTerrain
- A reference to a com.esri.arcgis.geodatabaseextensions.ITerrain (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ITerrain getTerrain() throws IOException, AutomationException
getTerrain
in interface ITerrainRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void draw(int drawPhase, IDisplay display, ISpatialReference aSpatialReference, ITrackCancel trackCancel) throws IOException, AutomationException
draw
in interface ITinRenderer
drawPhase
- A com.esri.arcgis.system.esriDrawPhase constant (in)display
- A reference to a com.esri.arcgis.display.IDisplay (in)aSpatialReference
- A reference to a com.esri.arcgis.geometry.ISpatialReference (in)trackCancel
- A reference to a com.esri.arcgis.system.ITrackCancel (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void copy(ITinRenderer pSource) throws IOException, AutomationException
copy
in interface ITinRenderer
pSource
- A reference to a com.esri.arcgis.carto.ITinRenderer (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean canRender() throws IOException, AutomationException
canRender
in interface ITinRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setTinByRef(ITin ppTin) throws IOException, AutomationException
setTinByRef
in interface ITinRenderer
ppTin
- A reference to a com.esri.arcgis.geodatabase.ITin (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ITin getTin() throws IOException, AutomationException
getTin
in interface ITinRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getName() throws IOException, AutomationException
getName
in interface ITinRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setName(String name) throws IOException, AutomationException
setName
in interface ITinRenderer
name
- The name (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isVisible() throws IOException, AutomationException
isVisible
in interface ITinRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setVisible(boolean visible) throws IOException, AutomationException
setVisible
in interface ITinRenderer
visible
- The visible (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setAreaOfInterest(IEnvelope ppAOI) throws IOException, AutomationException
setAreaOfInterest
in interface ITerrainRenderer2
ppAOI
- A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnvelope getAreaOfInterest() throws IOException, AutomationException
getAreaOfInterest
in interface ITerrainRenderer2
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setResolution(double pResolution) throws IOException, AutomationException
setResolution
in interface ITerrainRenderer2
pResolution
- The pResolution (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getResolution() throws IOException, AutomationException
getResolution
in interface ITerrainRenderer2
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setAttributeFieldName(String pName) throws IOException, AutomationException
setAttributeFieldName
in interface ITerrainAttributeRenderer
pName
- The pName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getAttributeFieldName() throws IOException, AutomationException
getAttributeFieldName
in interface ITerrainAttributeRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setDataSources(ILongArray pDataSources) throws IOException, AutomationException
setDataSources
in interface ITerrainAttributeRenderer
pDataSources
- A reference to a com.esri.arcgis.system.ILongArray (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ILongArray getDataSources() throws IOException, AutomationException
getDataSources
in interface ITerrainAttributeRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void redefineSymbols() throws IOException, AutomationException
redefineSymbols
in interface ITerrainAttributeRenderer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean applies(Object pUnk) throws IOException, AutomationException
Applies indicates whether the specified object can be applied to the current object. For instance, we might want to ask our CircleElement whether a Color object applies to it. If it does, then we can use the Apply method to update our CircleElement with the new Color object.
CanApply differs from Applies in that it is a check for the editability of the object at any given time. Applies indicates whether an object can be applied at all, while CanApply indicates whether an object can be applied at that particular moment.
applies
in interface IPropertySupport
pUnk
- A reference to another Object (IUnknown) (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean canApply(Object pUnk) throws IOException, AutomationException
CanApply indicates whether the specified object can be applied to the current object. For instance, we might want to ask our CircleElement whether a Color object applies to it. If it does, then we can use the Apply method to update our CircleElement with the new Color object.
CanApply differs from Applies in that it is a check for the editability of the object at any given time. Applies indicates whether an object can be applied at all, while CanApply indicates whether an object can be applied at that particular moment.
canApply
in interface IPropertySupport
pUnk
- A reference to another Object (IUnknown) (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public Object getCurrent(Object pUnk) throws IOException, AutomationException
getCurrent
in interface IPropertySupport
pUnk
- A reference to another Object (IUnknown) (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public Object apply(Object newObject) throws IOException, AutomationException
Apply will apply the specified object to the current object. For instance, I might apply a Color object to my RectangleElement. When I execute Apply, the object I replace (the old object) is returned.
Use the Applies and CanApply methods to determine if an Apply can be used on an object.
apply
in interface IPropertySupport
newObject
- A reference to another Object (IUnknown) (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getLegendGroupCount() throws IOException, AutomationException
The number of legend groups is determined by the implementation of the renderer, consequently this property is read only. For example, SimpleRenderer has one group, while a BiUniqueValueRenderer has any number of groups.
getLegendGroupCount
in interface ILegendInfo
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ILegendGroup getLegendGroup(int index) throws IOException, AutomationException
getLegendGroup
in interface ILegendInfo
index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ILegendItem getLegendItem() throws IOException, AutomationException
Layer or renderer legend information is further formatted for display in ArcMap legends. A renderer can override this formatting by returning a LegendItem for this property. ESRI renderers typically do not return anything for this property. With this configuration, legend formatting becomes a user or developer choice on the legend object.
getLegendItem
in interface ILegendInfo
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isSymbolsAreGraduated() throws IOException, AutomationException
Indicates whether the symbols used for a layer or renderer's legend vary by size.
For example the proportional symbol renderer returns True for this property.
You can use this property to distinguish between a layer symbolized with graduated color or graduated symbol type layer symbology. Both of these symbolizations use a ClassBreaksRenderer, but only a graduated symbol symbolization will return True for this property.
isSymbolsAreGraduated
in interface ILegendInfo
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setSymbolsAreGraduated(boolean symbolsAreGraduated) throws IOException, AutomationException
setSymbolsAreGraduated
in interface ILegendInfo
symbolsAreGraduated
- The symbolsAreGraduated (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void isDirty() throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
isDirty
in interface IPersistStream
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void load(IStream pstm) throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
load
in interface IPersistStream
pstm
- A reference to a com.esri.arcgis.system.IStream (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void save(IStream pstm, int fClearDirty) throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
save
in interface IPersistStream
pstm
- A reference to a com.esri.arcgis.system.IStream (in)fClearDirty
- The fClearDirty (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void getSizeMax(_ULARGE_INTEGER[] pcbSize) throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
getSizeMax
in interface IPersistStream
pcbSize
- A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void getClassID(GUID[] pClassID) throws IOException, AutomationException
IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.
getClassID
in interface IPersist
pClassID
- A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getMaxSampleSize() throws IOException, AutomationException
getMaxSampleSize
in interface IDataSampling
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setMaxSampleSize(int size) throws IOException, AutomationException
setMaxSampleSize
in interface IDataSampling
size
- The size (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getSamplingMethod() throws IOException, AutomationException
esriAllRecords samples all features up to the maximum sample size
esriRandomRecords is not implemented
esriEveryNthRecord is not implemented
getSamplingMethod
in interface IDataSampling
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setSamplingMethod(int method) throws IOException, AutomationException
setSamplingMethod
in interface IDataSampling
method
- A com.esri.arcgis.carto.esriDataSampling constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
IOException
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
IOException
ClassNotFoundException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |