esriCarto.tlh
上传用户:juying163
上传日期:2014-09-24
资源大小:5867k
文件大小:859k
源码类别:

GIS编程

开发平台:

Visual C++

  1.         struct ILayer * Layer ) = 0;
  2.     virtual HRESULT __stdcall get_OverlayGridLabelSymbol (
  3.         struct ITextSymbol * * Symbol ) = 0;
  4.     virtual HRESULT __stdcall put_OverlayGridLabelSymbol (
  5.         struct ITextSymbol * Symbol ) = 0;
  6.     virtual HRESULT __stdcall SetOverlayGridCell (
  7.         long gridLayerFid ) = 0;
  8.     virtual HRESULT __stdcall UpdateDisplay (
  9.         long windowWidth,
  10.         long windowHeight ) = 0;
  11. };
  12. struct __declspec(uuid("1bd83797-6dbc-43d1-a642-19a22185acac"))
  13. IOverview2 : IMapSurround
  14. {
  15.     //
  16.     // Raw methods provided by interface
  17.     //
  18.     virtual HRESULT __stdcall get_AoiFillSymbol (
  19.         struct IFillSymbol * * Symbol ) = 0;
  20.     virtual HRESULT __stdcall put_AoiFillSymbol (
  21.         struct IFillSymbol * Symbol ) = 0;
  22.     virtual HRESULT __stdcall get_OverlayGridLayer (
  23.         struct ILayer * * Layer ) = 0;
  24.     virtual HRESULT __stdcall put_OverlayGridLayer (
  25.         struct ILayer * Layer ) = 0;
  26.     virtual HRESULT __stdcall get_OverlayGridLabelSymbol (
  27.         struct ITextSymbol * * Symbol ) = 0;
  28.     virtual HRESULT __stdcall put_OverlayGridLabelSymbol (
  29.         struct ITextSymbol * Symbol ) = 0;
  30.     virtual HRESULT __stdcall SetOverlayGridCell (
  31.         long gridLayerFid ) = 0;
  32.     virtual HRESULT __stdcall UpdateDisplay (
  33.         long windowWidth,
  34.         long windowHeight ) = 0;
  35.     virtual HRESULT __stdcall get_BackgroundColor (
  36.         struct IColor * * Color ) = 0;
  37.     virtual HRESULT __stdcall put_BackgroundColor (
  38.         struct IColor * Color ) = 0;
  39. };
  40. enum esriBufferType
  41. {
  42.     esriBufferAll = 0,
  43.     esriBufferOutside = 1,
  44.     esriBufferInside = 2,
  45.     esriBufferOutsideIncludeInside = 3,
  46.     esriBufferInsideExcludeRing = 4
  47. };
  48. enum esriBufferSpatialReferenceType
  49. {
  50.     esriMapSpatialReference = 0,
  51.     esriFeatureClassSpatialReference = 1,
  52.     esriFeatureOptimizedSpatialReference = 2,
  53.     esriFeatureSetOptimizedSpatialReference = 3,
  54.     esriOtherSpatialReference = 4
  55. };
  56. struct __declspec(uuid("a2983336-7e7c-11d2-a084-0000f8775bf9"))
  57. IFeatureCursorBuffer : IUnknown
  58. {
  59.     //
  60.     // Raw methods provided by interface
  61.     //
  62.     virtual HRESULT __stdcall putref_FeatureCursor (
  63.         struct IFeatureCursor * _arg1 ) = 0;
  64.     virtual HRESULT __stdcall GraphicsLayer (
  65.         struct IGraphicsLayer * pGraphicsLayer,
  66.         VARIANT_BOOL selected ) = 0;
  67.     virtual HRESULT __stdcall put_Dissolve (
  68.         VARIANT_BOOL _arg1 ) = 0;
  69.     virtual HRESULT __stdcall put_ValueDistance (
  70.         double _arg1 ) = 0;
  71.     virtual HRESULT __stdcall put_FieldDistance (
  72.         BSTR _arg1 ) = 0;
  73.     virtual HRESULT __stdcall put_RingDistance (
  74.         long numberOfRings,
  75.         double _arg2 ) = 0;
  76.     virtual HRESULT __stdcall putref_SpatialReference (
  77.         struct ISpatialReference * _arg1 ) = 0;
  78.     virtual HRESULT __stdcall put_Units (
  79.         enum esriUnits MapUnits,
  80.         enum esriUnits _arg2 ) = 0;
  81.     virtual HRESULT __stdcall put_PolygonBufferType (
  82.         enum esriBufferType _arg1 ) = 0;
  83.     virtual HRESULT __stdcall putref_CancelTrack (
  84.         struct ITrackCancel * _arg1 ) = 0;
  85.     virtual HRESULT __stdcall get_BufferedGeometry (
  86.         struct IEnumGeometry * * ppEnumGeometry ) = 0;
  87.     virtual HRESULT __stdcall Buffer (
  88.         struct IFeatureClassName * pNewLocationName ) = 0;
  89. };
  90. struct __declspec(uuid("7df13f3f-39b7-41c4-80e3-aa7d16f46d57"))
  91. IFeatureCursorBuffer2 : IUnknown
  92. {
  93.     //
  94.     // Raw methods provided by interface
  95.     //
  96.     virtual HRESULT __stdcall putref_FeatureCursor (
  97.         struct IFeatureCursor * _arg1 ) = 0;
  98.     virtual HRESULT __stdcall GraphicsLayer2 (
  99.         struct IGraphicsLayer * pGraphicsLayer,
  100.         VARIANT_BOOL selected,
  101.         long * pSelectedElements,
  102.         VARIANT_BOOL * bHasPolygons ) = 0;
  103.     virtual HRESULT __stdcall put_Dissolve (
  104.         VARIANT_BOOL _arg1 ) = 0;
  105.     virtual HRESULT __stdcall put_ValueDistance (
  106.         double _arg1 ) = 0;
  107.     virtual HRESULT __stdcall put_FieldDistance (
  108.         BSTR _arg1 ) = 0;
  109.     virtual HRESULT __stdcall put_RingDistance (
  110.         long numberOfRings,
  111.         double _arg2 ) = 0;
  112.     virtual HRESULT __stdcall putref_SpatialReference (
  113.         struct ISpatialReference * _arg1 ) = 0;
  114.     virtual HRESULT __stdcall put_Units (
  115.         enum esriUnits MapUnits,
  116.         enum esriUnits _arg2 ) = 0;
  117.     virtual HRESULT __stdcall put_PolygonBufferType (
  118.         enum esriBufferType _arg1 ) = 0;
  119.     virtual HRESULT __stdcall putref_CancelTrack (
  120.         struct ITrackCancel * _arg1 ) = 0;
  121.     virtual HRESULT __stdcall get_BufferedGeometry (
  122.         struct IEnumGeometry * * ppEnumGeometry ) = 0;
  123.     virtual HRESULT __stdcall Buffer (
  124.         struct IFeatureClassName * pNewLocationName ) = 0;
  125.     virtual HRESULT __stdcall BufferToGraphics (
  126.         struct ICompositeGraphicsLayer * pCompositeGraphicsLayer ) = 0;
  127.     virtual HRESULT __stdcall putref_SourceSpatialReference (
  128.         struct ISpatialReference * _arg1 ) = 0;
  129.     virtual HRESULT __stdcall putref_BufferSpatialReference (
  130.         struct ISpatialReference * _arg1 ) = 0;
  131.     virtual HRESULT __stdcall putref_TargetSpatialReference (
  132.         struct ISpatialReference * _arg1 ) = 0;
  133.     virtual HRESULT __stdcall putref_DataFrameSpatialReference (
  134.         struct ISpatialReference * _arg1 ) = 0;
  135. };
  136. struct __declspec(uuid("8fc84c02-6be1-4352-9164-a682bbfe894c"))
  137. IBufferProcessingSymbology : IUnknown
  138. {
  139.     //
  140.     // Raw methods provided by interface
  141.     //
  142.     virtual HRESULT __stdcall putref_ColorRamp (
  143.         struct IColorRamp * ppColorRamp ) = 0;
  144.     virtual HRESULT __stdcall get_ColorRamp (
  145.         struct IColorRamp * * ppColorRamp ) = 0;
  146. };
  147. struct __declspec(uuid("d7c605d8-6da2-4bad-a5d4-dd8438717f17"))
  148. IBufferProcessingParameter : IUnknown
  149. {
  150.     //
  151.     // Raw methods provided by interface
  152.     //
  153.     virtual HRESULT __stdcall put_AdjustCirclesForProjection (
  154.         VARIANT_BOOL AdjustCirclesForProjection ) = 0;
  155.     virtual HRESULT __stdcall get_AdjustCirclesForProjection (
  156.         VARIANT_BOOL * AdjustCirclesForProjection ) = 0;
  157.     virtual HRESULT __stdcall put_GenerateRings (
  158.         VARIANT_BOOL GenerateRings ) = 0;
  159.     virtual HRESULT __stdcall get_GenerateRings (
  160.         VARIANT_BOOL * GenerateRings ) = 0;
  161.     virtual HRESULT __stdcall put_SaveAsGraphics (
  162.         VARIANT_BOOL _arg1 ) = 0;
  163.     virtual HRESULT __stdcall putref_FeatureClass (
  164.         struct IFeatureClass * _arg1 ) = 0;
  165.     virtual HRESULT __stdcall put_BufferSpatialReference (
  166.         enum esriBufferSpatialReferenceType _arg1 ) = 0;
  167.     virtual HRESULT __stdcall put_TargetSpatialReference (
  168.         enum esriBufferSpatialReferenceType _arg1 ) = 0;
  169.     virtual HRESULT __stdcall put_InputHasPolygons (
  170.         VARIANT_BOOL _arg1 ) = 0;
  171.     virtual HRESULT __stdcall put_SimplifyShapes (
  172.         VARIANT_BOOL _arg1 ) = 0;
  173. };
  174. struct __declspec(uuid("59f60294-c1fb-11d2-9f23-00c04f6bc886"))
  175. IFeatureIndex : IUnknown
  176. {
  177.     //
  178.     // Raw methods provided by interface
  179.     //
  180.     virtual HRESULT __stdcall putref_FeatureClass (
  181.         struct IFeatureClass * _arg1 ) = 0;
  182.     virtual HRESULT __stdcall putref_FeatureCursor (
  183.         struct IFeatureCursor * _arg1 ) = 0;
  184.     virtual HRESULT __stdcall Index (
  185.         struct ITrackCancel * pTrackCancel,
  186.         struct IEnvelope * pQueryingGeometryFullExtent ) = 0;
  187. };
  188. struct __declspec(uuid("59f60295-c1fb-11d2-9f23-00c04f6bc886"))
  189. IIndexQuery : IUnknown
  190. {
  191.     //
  192.     // Raw methods provided by interface
  193.     //
  194.     virtual HRESULT __stdcall NearestFeature (
  195.         struct IGeometry * pShape,
  196.         long * pClosestFeatureFID,
  197.         double * pDistance ) = 0;
  198.     virtual HRESULT __stdcall get_Within (
  199.         struct IGeometry * pShape,
  200.         struct IFeatureCursor * * ppFeatureCursor ) = 0;
  201. };
  202. struct __declspec(uuid("3df5374b-2cee-11d4-a6a5-0008c7d3ae8d"))
  203. IIndexQuery2 : IUnknown
  204. {
  205.     //
  206.     // Raw methods provided by interface
  207.     //
  208.     virtual HRESULT __stdcall NearestFeature (
  209.         struct IGeometry * pShape,
  210.         long * pClosestFeatureFID,
  211.         double * pDistance ) = 0;
  212.     virtual HRESULT __stdcall get_Within (
  213.         struct IGeometry * pShape,
  214.         struct IFeatureCursor * * ppFeatureCursor ) = 0;
  215.     virtual HRESULT __stdcall NearestFeatures (
  216.         struct IGeometry * pShape,
  217.         VARIANT * pSAIds,
  218.         double * pDistance ) = 0;
  219.     virtual HRESULT __stdcall IntersectedFeatures (
  220.         struct IGeometry * pShape,
  221.         VARIANT * pSAIds ) = 0;
  222.     virtual HRESULT __stdcall WithinFeature (
  223.         struct IGeometry * pShape,
  224.         long * pWithinFeatureFID ) = 0;
  225. };
  226. struct __declspec(uuid("bc2e4428-1311-42fb-b364-0aa46f03a1ac"))
  227. IFeatureIndex2 : IUnknown
  228. {
  229.     //
  230.     // Raw methods provided by interface
  231.     //
  232.     virtual HRESULT __stdcall putref_FeatureClass (
  233.         struct IFeatureClass * _arg1 ) = 0;
  234.     virtual HRESULT __stdcall putref_FeatureCursor (
  235.         struct IFeatureCursor * _arg1 ) = 0;
  236.     virtual HRESULT __stdcall Index (
  237.         struct ITrackCancel * pTrackCancel,
  238.         struct IEnvelope * pQueryingGeometryFullExtent ) = 0;
  239.     virtual HRESULT __stdcall get_OutputSpatialReference (
  240.         BSTR FieldName,
  241.         struct ISpatialReference * * OutputSpatialReference ) = 0;
  242.     virtual HRESULT __stdcall putref_OutputSpatialReference (
  243.         BSTR FieldName,
  244.         struct ISpatialReference * OutputSpatialReference ) = 0;
  245. };
  246. struct __declspec(uuid("7f4ab189-ed0d-11d2-ab0e-000000000000"))
  247. IMapIdentifyObject : IUnknown
  248. {
  249.     //
  250.     // Raw methods provided by interface
  251.     //
  252.     virtual HRESULT __stdcall putref_Map (
  253.         struct IMap * _arg1 ) = 0;
  254. };
  255. struct __declspec(uuid("976d826b-c8ab-11d4-80f6-00c04fa0adf8"))
  256. IBasicMapIdentifyObject : IUnknown
  257. {
  258.     //
  259.     // Raw methods provided by interface
  260.     //
  261.     virtual HRESULT __stdcall putref_BasicMap (
  262.         struct IBasicMap * _arg1 ) = 0;
  263. };
  264. struct __declspec(uuid("4c1fd611-f3a3-11d3-9fde-00c04f6bc78e"))
  265. IBasicGeoprocessor : IUnknown
  266. {
  267.     //
  268.     // Raw methods provided by interface
  269.     //
  270.     virtual HRESULT __stdcall putref_CancelTracker (
  271.         struct ITrackCancel * _arg1 ) = 0;
  272.     virtual HRESULT __stdcall get_SpatialReference (
  273.         struct ISpatialReference * * ppSpatialRef ) = 0;
  274.     virtual HRESULT __stdcall put_SpatialReference (
  275.         struct ISpatialReference * ppSpatialRef ) = 0;
  276.     virtual HRESULT __stdcall Dissolve (
  277.         struct ITable * inputTable,
  278.         VARIANT_BOOL useSelected,
  279.         BSTR dissolveField,
  280.         BSTR summaryFields,
  281.         struct IDatasetName * outputName,
  282.         struct ITable * * resultTable ) = 0;
  283.     virtual HRESULT __stdcall Merge (
  284.         struct IArray * tables,
  285.         struct ITable * fieldsTable,
  286.         struct IFeatureClassName * outputName,
  287.         struct IFeatureClass * * resultFC ) = 0;
  288.     virtual HRESULT __stdcall Clip (
  289.         struct ITable * inputTable,
  290.         VARIANT_BOOL useSelectedInput,
  291.         struct ITable * clipTable,
  292.         VARIANT_BOOL useSelectedClip,
  293.         double Tolerance,
  294.         struct IFeatureClassName * outputName,
  295.         struct IFeatureClass * * resultFC ) = 0;
  296.     virtual HRESULT __stdcall Intersect (
  297.         struct ITable * inputTable,
  298.         VARIANT_BOOL useSelectedInput,
  299.         struct ITable * overlayTable,
  300.         VARIANT_BOOL useSelectedOverlay,
  301.         double Tolerance,
  302.         struct IFeatureClassName * outputName,
  303.         struct IFeatureClass * * resultFC ) = 0;
  304.     virtual HRESULT __stdcall Union (
  305.         struct ITable * inputTable,
  306.         VARIANT_BOOL useSelectedInput,
  307.         struct ITable * overlayTable,
  308.         VARIANT_BOOL useSelectedOverlay,
  309.         double Tolerance,
  310.         struct IFeatureClassName * outputName,
  311.         struct IFeatureClass * * resultFC ) = 0;
  312. };
  313. struct __declspec(uuid("24420050-03fe-11d4-9fe9-00c04f6bc78e"))
  314. IMapGeographicTransformations : IUnknown
  315. {
  316.     //
  317.     // Raw methods provided by interface
  318.     //
  319.     virtual HRESULT __stdcall get_GeographicTransformations (
  320.         struct IGeoTransformationOperationSet * * GTs ) = 0;
  321. };
  322. struct __declspec(uuid("4a708ae4-4b40-438e-a609-0bbd67ea508c"))
  323. IActiveViewGEN : IUnknown
  324. {
  325.     //
  326.     // Raw methods provided by interface
  327.     //
  328.     virtual HRESULT __stdcall get_FullExtent (
  329.         struct IEnvelope * * Extent ) = 0;
  330.     virtual HRESULT __stdcall put_FullExtent (
  331.         struct IEnvelope * Extent ) = 0;
  332.     virtual HRESULT __stdcall get_Extent (
  333.         struct IEnvelope * * Extent ) = 0;
  334.     virtual HRESULT __stdcall put_Extent (
  335.         struct IEnvelope * Extent ) = 0;
  336.     virtual HRESULT __stdcall get_ScreenDisplay (
  337.         struct IScreenDisplay * * screen ) = 0;
  338.     virtual HRESULT __stdcall get_GraphicsContainer (
  339.         struct IGraphicsContainer * * GraphicsContainer ) = 0;
  340.     virtual HRESULT __stdcall get_FocusMap (
  341.         struct IMap * * activeMap ) = 0;
  342.     virtual HRESULT __stdcall putref_FocusMap (
  343.         struct IMap * activeMap ) = 0;
  344.     virtual HRESULT __stdcall get_IsMapActivated (
  345.         VARIANT_BOOL * IsMapActivated ) = 0;
  346.     virtual HRESULT __stdcall put_IsMapActivated (
  347.         VARIANT_BOOL IsMapActivated ) = 0;
  348.     virtual HRESULT __stdcall get_Selection (
  349.         struct ISelection * * Selection ) = 0;
  350.     virtual HRESULT __stdcall putref_Selection (
  351.         struct ISelection * Selection ) = 0;
  352.     virtual HRESULT __stdcall get_TipText (
  353.         double x,
  354.         double y,
  355.         BSTR * TipText ) = 0;
  356.     virtual HRESULT __stdcall GetExportFrame (
  357.         long * Left,
  358.         long * top,
  359.         long * Right,
  360.         long * bottom ) = 0;
  361.     virtual HRESULT __stdcall get_ShowScrollBars (
  362.         VARIANT_BOOL * ShowScrollBars ) = 0;
  363.     virtual HRESULT __stdcall put_ShowScrollBars (
  364.         VARIANT_BOOL ShowScrollBars ) = 0;
  365.     virtual HRESULT __stdcall get_ShowRulers (
  366.         VARIANT_BOOL * ShowRulers ) = 0;
  367.     virtual HRESULT __stdcall put_ShowRulers (
  368.         VARIANT_BOOL ShowRulers ) = 0;
  369.     virtual HRESULT __stdcall get_ShowSelection (
  370.         VARIANT_BOOL * ShowRulers ) = 0;
  371.     virtual HRESULT __stdcall put_ShowSelection (
  372.         VARIANT_BOOL ShowRulers ) = 0;
  373.     virtual HRESULT __stdcall get_ExtentStack (
  374.         struct IExtentStack * * ExtentStack ) = 0;
  375.     virtual HRESULT __stdcall get_ScreenCacheID (
  376.         enum esriViewDrawPhase phase,
  377.         IUnknown * data,
  378.         short * cacheID ) = 0;
  379.     virtual HRESULT __stdcall HitTestMap (
  380.         struct IPoint * Location,
  381.         struct IMap * * Map ) = 0;
  382.     virtual HRESULT __stdcall IsActive (
  383.         VARIANT_BOOL * IsActive ) = 0;
  384.     virtual HRESULT __stdcall Activate (
  385.         OLE_HANDLE hWnd ) = 0;
  386.     virtual HRESULT __stdcall Deactivate ( ) = 0;
  387.     virtual HRESULT __stdcall Draw (
  388.         OLE_HANDLE hdc,
  389.         struct ITrackCancel * trackCancel ) = 0;
  390.     virtual HRESULT __stdcall Output (
  391.         OLE_HANDLE hdc,
  392.         long dpi,
  393.         long Left,
  394.         long top,
  395.         long Right,
  396.         long bottom,
  397.         struct IEnvelope * VisibleBounds,
  398.         struct ITrackCancel * trackCancel ) = 0;
  399.     virtual HRESULT __stdcall Refresh ( ) = 0;
  400.     virtual HRESULT __stdcall PartialRefresh (
  401.         enum esriViewDrawPhase phase,
  402.         IUnknown * data,
  403.         struct IEnvelope * envelope ) = 0;
  404.     virtual HRESULT __stdcall Clear ( ) = 0;
  405.     virtual HRESULT __stdcall PrinterChanged (
  406.         struct IPrinter * Printer ) = 0;
  407.     virtual HRESULT __stdcall ContentsChanged ( ) = 0;
  408.     virtual HRESULT __stdcall OnMessage (
  409.         unsigned long msg,
  410.         unsigned int wParam,
  411.         long lParam ) = 0;
  412.     virtual HRESULT __stdcall GetContextMenu (
  413.         double x,
  414.         double y,
  415.         struct IUID * * clsidMenu ) = 0;
  416. };
  417. struct __declspec(uuid("5f78435a-7443-4195-beb2-caefa63433d8"))
  418. IViewRefresh : IUnknown
  419. {
  420.     //
  421.     // Raw methods provided by interface
  422.     //
  423.     virtual HRESULT __stdcall get_Drawing (
  424.         VARIANT_BOOL * Drawing ) = 0;
  425.     virtual HRESULT __stdcall get_ProgressiveDrawing (
  426.         VARIANT_BOOL * flag ) = 0;
  427.     virtual HRESULT __stdcall put_ProgressiveDrawing (
  428.         VARIANT_BOOL flag ) = 0;
  429.     virtual HRESULT __stdcall Refresh ( ) = 0;
  430.     virtual HRESULT __stdcall PartialRefresh (
  431.         enum esriViewDrawPhase phase,
  432.         IUnknown * data,
  433.         struct IEnvelope * envelope ) = 0;
  434.     virtual HRESULT __stdcall PartialRefreshShape (
  435.         enum esriViewDrawPhase phase,
  436.         IUnknown * data,
  437.         struct IGeometry * Geometry,
  438.         double symbolSizePoints ) = 0;
  439.     virtual HRESULT __stdcall AnimationRefresh (
  440.         enum esriViewDrawPhase phase,
  441.         IUnknown * data,
  442.         struct IEnvelope * envelope ) = 0;
  443.     virtual HRESULT __stdcall AnimationRefreshShape (
  444.         enum esriViewDrawPhase phase,
  445.         IUnknown * data,
  446.         struct IGeometry * Geometry,
  447.         double symbolSizePoints ) = 0;
  448.     virtual HRESULT __stdcall RefreshItem (
  449.         IUnknown * data ) = 0;
  450.     virtual HRESULT __stdcall RefreshCaches ( ) = 0;
  451. };
  452. struct __declspec(uuid("c6431185-806c-11d1-8723-0000f8751720"))
  453. IRotateOperation : IOperation
  454. {
  455.     //
  456.     // Raw methods provided by interface
  457.     //
  458.     virtual HRESULT __stdcall put_Name (
  459.         BSTR _arg1 ) = 0;
  460.     virtual HRESULT __stdcall put_ActiveView (
  461.         struct IActiveView * _arg1 ) = 0;
  462.     virtual HRESULT __stdcall put_PreviousRotation (
  463.         double _arg1 ) = 0;
  464.     virtual HRESULT __stdcall put_Rotation (
  465.         double _arg1 ) = 0;
  466.     virtual HRESULT __stdcall put_Refresh (
  467.         VARIANT_BOOL _arg1 ) = 0;
  468. };
  469. struct __declspec(uuid("fcd50e05-696b-49a5-8872-2f43453fcd2f"))
  470. IInvalidArea2 : IInvalidArea
  471. {
  472.     //
  473.     // Raw methods provided by interface
  474.     //
  475.     virtual HRESULT __stdcall AddFeature (
  476.         struct IFeature * Feature,
  477.         struct ISymbol * Symbol ) = 0;
  478. };
  479. struct __declspec(uuid("34ddb0ec-4d41-4747-9507-d32abe9feee8"))
  480. IInvalidArea3 : IInvalidArea2
  481. {
  482.     //
  483.     // Raw methods provided by interface
  484.     //
  485.     virtual HRESULT __stdcall InvalidateEx (
  486.         short screenCache,
  487.         double symSizePoints ) = 0;
  488. };
  489. struct __declspec(uuid("e6bdaa76-4d35-11d0-98be-00805f7ced21"))
  490. Map;
  491.     // [ default ] interface IUnknown
  492.     // interface IActiveViewGEN
  493.     // interface IMap
  494.     // interface IBasicMap
  495.     // interface IMapBarriers
  496.     // interface IActiveView
  497.     // interface IViewManager
  498.     // interface IViewRefresh
  499.     // interface IGraphicsContainer
  500.     // interface IGraphicsContainerSelect
  501.     // interface IConnectionPointContainer
  502.     // interface IPersistStream
  503.     // interface IPersist
  504.     // interface IMapBookmarks
  505.     // interface ISelectionEvents
  506.     // interface IDisplayEvents
  507.     // interface ITransformEvents
  508.     // interface ITableCollection
  509.     // interface IStandaloneTableCollection
  510.     // interface IDisplayAdmin
  511.     // interface IMapAdmin
  512.     // interface IMapAdmin2
  513.     // interface IRelationshipClassCollection
  514.     // interface IMapGeographicTransformations
  515.     // interface IMapCache
  516.     // interface ILayerMasking
  517.     // interface IMxdContents
  518.     // interface IMapOverposter
  519.     // interface IMapAdmin3
  520.     // interface IMapLayers
  521.     // [ default, source ] interface IActiveViewEvents
  522.     // [ source ] interface IMapEvents
  523. struct __declspec(uuid("be202904-9c7f-4d51-80b2-dbc960224e7f"))
  524. IMxdContents : IUnknown
  525. {
  526.     //
  527.     // Raw methods provided by interface
  528.     //
  529.     virtual HRESULT __stdcall get_PageLayout (
  530.         struct IPageLayout * * ppPageLayout ) = 0;
  531.     virtual HRESULT __stdcall get_Map (
  532.         struct IMap * * ppMap ) = 0;
  533.     virtual HRESULT __stdcall get_ActiveView (
  534.         struct IActiveView * * ppActiveView ) = 0;
  535. };
  536. struct __declspec(uuid("dd94d76a-836d-11d0-87ec-080009ec732a"))
  537. IPageLayout : IUnknown
  538. {
  539.     //
  540.     // Raw methods provided by interface
  541.     //
  542.     virtual HRESULT __stdcall get_Page (
  543.         struct IPage * * Page ) = 0;
  544.     virtual HRESULT __stdcall get_RulerSettings (
  545.         struct IRulerSettings * * RulerSettings ) = 0;
  546.     virtual HRESULT __stdcall get_SnapGrid (
  547.         struct ISnapGrid * * SnapGrid ) = 0;
  548.     virtual HRESULT __stdcall get_HorizontalSnapGuides (
  549.         struct ISnapGuides * * SnapGuides ) = 0;
  550.     virtual HRESULT __stdcall get_VerticalSnapGuides (
  551.         struct ISnapGuides * * SnapGuides ) = 0;
  552.     virtual HRESULT __stdcall get_ZoomPercent (
  553.         double * percent ) = 0;
  554.     virtual HRESULT __stdcall put_AlignToMargins (
  555.         VARIANT_BOOL AlignToMargins ) = 0;
  556.     virtual HRESULT __stdcall get_AlignToMargins (
  557.         VARIANT_BOOL * AlignToMargins ) = 0;
  558.     virtual HRESULT __stdcall ZoomToWidth ( ) = 0;
  559.     virtual HRESULT __stdcall ZoomToWhole ( ) = 0;
  560.     virtual HRESULT __stdcall ZoomToPercent (
  561.         long percent ) = 0;
  562.     virtual HRESULT __stdcall FocusNextMapFrame ( ) = 0;
  563.     virtual HRESULT __stdcall FocusPreviousMapFrame ( ) = 0;
  564.     virtual HRESULT __stdcall ReplaceMaps (
  565.         struct IMaps * maps ) = 0;
  566. };
  567. struct __declspec(uuid("2ab4981f-9406-11d0-87ef-080009ec732a"))
  568. IPage : IUnknown
  569. {
  570.     //
  571.     // Raw methods provided by interface
  572.     //
  573.     virtual HRESULT __stdcall get_FormID (
  574.         enum esriPageFormID * FormID ) = 0;
  575.     virtual HRESULT __stdcall put_FormID (
  576.         enum esriPageFormID FormID ) = 0;
  577.     virtual HRESULT __stdcall get_Orientation (
  578.         short * Orientation ) = 0;
  579.     virtual HRESULT __stdcall put_Orientation (
  580.         short Orientation ) = 0;
  581.     virtual HRESULT __stdcall get_Units (
  582.         enum esriUnits * Units ) = 0;
  583.     virtual HRESULT __stdcall put_Units (
  584.         enum esriUnits Units ) = 0;
  585.     virtual HRESULT __stdcall get_PrintableBounds (
  586.         struct IEnvelope * * PrintableBounds ) = 0;
  587.     virtual HRESULT __stdcall get_IsPrintableAreaVisible (
  588.         VARIANT_BOOL * IsPrintableAreaVisible ) = 0;
  589.     virtual HRESULT __stdcall put_IsPrintableAreaVisible (
  590.         VARIANT_BOOL IsPrintableAreaVisible ) = 0;
  591.     virtual HRESULT __stdcall get_StretchGraphicsWithPage (
  592.         VARIANT_BOOL * StretchGraphicsWithPage ) = 0;
  593.     virtual HRESULT __stdcall put_StretchGraphicsWithPage (
  594.         VARIANT_BOOL StretchGraphicsWithPage ) = 0;
  595.     virtual HRESULT __stdcall get_BackgroundColor (
  596.         struct IColor * * Color ) = 0;
  597.     virtual HRESULT __stdcall put_BackgroundColor (
  598.         struct IColor * Color ) = 0;
  599.     virtual HRESULT __stdcall get_Border (
  600.         struct IBorder * * Border ) = 0;
  601.     virtual HRESULT __stdcall put_Border (
  602.         struct IBorder * Border ) = 0;
  603.     virtual HRESULT __stdcall get_Background (
  604.         struct IBackground * * Background ) = 0;
  605.     virtual HRESULT __stdcall put_Background (
  606.         struct IBackground * Background ) = 0;
  607.     virtual HRESULT __stdcall get_DelayEvents (
  608.         VARIANT_BOOL * DelayEvents ) = 0;
  609.     virtual HRESULT __stdcall put_DelayEvents (
  610.         VARIANT_BOOL DelayEvents ) = 0;
  611.     virtual HRESULT __stdcall get_PageToPrinterMapping (
  612.         enum esriPageToPrinterMapping * mode ) = 0;
  613.     virtual HRESULT __stdcall put_PageToPrinterMapping (
  614.         enum esriPageToPrinterMapping mode ) = 0;
  615.     virtual HRESULT __stdcall QuerySize (
  616.         double * Width,
  617.         double * Height ) = 0;
  618.     virtual HRESULT __stdcall PutCustomSize (
  619.         double Width,
  620.         double Height ) = 0;
  621.     virtual HRESULT __stdcall PrinterPageCount (
  622.         struct IPrinter * Printer,
  623.         double Overlap,
  624.         short * pageCount ) = 0;
  625.     virtual HRESULT __stdcall GetPageBounds (
  626.         struct IPrinter * Printer,
  627.         short currentPage,
  628.         double Overlap,
  629.         struct IEnvelope * pageBounds ) = 0;
  630.     virtual HRESULT __stdcall GetDeviceBounds (
  631.         struct IPrinter * Printer,
  632.         short currentPage,
  633.         double Overlap,
  634.         short resolution,
  635.         struct IEnvelope * deviceBounds ) = 0;
  636.     virtual HRESULT __stdcall DrawPaper (
  637.         struct IDisplay * Display,
  638.         struct IColor * eraseColor ) = 0;
  639.     virtual HRESULT __stdcall DrawBackground (
  640.         struct IDisplay * Display ) = 0;
  641.     virtual HRESULT __stdcall DrawPrintableArea (
  642.         struct IDisplay * Display ) = 0;
  643.     virtual HRESULT __stdcall DrawBorder (
  644.         struct IDisplay * Display ) = 0;
  645.     virtual HRESULT __stdcall PrinterChanged (
  646.         struct IPrinter * Printer ) = 0;
  647. };
  648. enum esriPageFormID
  649. {
  650.     esriPageFormLetter = 0,
  651.     esriPageFormLegal = 1,
  652.     esriPageFormTabloid = 2,
  653.     esriPageFormC = 3,
  654.     esriPageFormD = 4,
  655.     esriPageFormE = 5,
  656.     esriPageFormA5 = 6,
  657.     esriPageFormA4 = 7,
  658.     esriPageFormA3 = 8,
  659.     esriPageFormA2 = 9,
  660.     esriPageFormA1 = 10,
  661.     esriPageFormA0 = 11,
  662.     esriPageFormCUSTOM = 12,
  663.     esriPageFormSameAsPrinter = 13
  664. };
  665. enum esriPageToPrinterMapping
  666. {
  667.     esriPageMappingCrop = 0,
  668.     esriPageMappingScale = 1,
  669.     esriPageMappingTile = 2
  670. };
  671. struct __declspec(uuid("31e081a9-cb02-11d1-876c-0000f8751720"))
  672. IRulerSettings : IUnknown
  673. {
  674.     //
  675.     // Raw methods provided by interface
  676.     //
  677.     virtual HRESULT __stdcall get_SmallestDivision (
  678.         double * rulerDivision ) = 0;
  679.     virtual HRESULT __stdcall put_SmallestDivision (
  680.         double rulerDivision ) = 0;
  681. };
  682. struct __declspec(uuid("31e081aa-cb02-11d1-876c-0000f8751720"))
  683. ISnapGrid : IUnknown
  684. {
  685.     //
  686.     // Raw methods provided by interface
  687.     //
  688.     virtual HRESULT __stdcall get_IsVisible (
  689.         VARIANT_BOOL * IsVisible ) = 0;
  690.     virtual HRESULT __stdcall put_IsVisible (
  691.         VARIANT_BOOL IsVisible ) = 0;
  692.     virtual HRESULT __stdcall get_HorizontalSpacing (
  693.         double * spacing ) = 0;
  694.     virtual HRESULT __stdcall put_HorizontalSpacing (
  695.         double spacing ) = 0;
  696.     virtual HRESULT __stdcall get_VerticalSpacing (
  697.         double * spacing ) = 0;
  698.     virtual HRESULT __stdcall put_VerticalSpacing (
  699.         double spacing ) = 0;
  700.     virtual HRESULT __stdcall Draw (
  701.         struct IDisplay * Display,
  702.         struct IPage * Page ) = 0;
  703. };
  704. struct __declspec(uuid("31e081ab-cb02-11d1-876c-0000f8751720"))
  705. ISnapGuides : IUnknown
  706. {
  707.     //
  708.     // Raw methods provided by interface
  709.     //
  710.     virtual HRESULT __stdcall get_AreVisible (
  711.         VARIANT_BOOL * AreVisible ) = 0;
  712.     virtual HRESULT __stdcall put_AreVisible (
  713.         VARIANT_BOOL AreVisible ) = 0;
  714.     virtual HRESULT __stdcall get_DrawLevel (
  715.         enum esriViewDrawPhase * DrawLevel ) = 0;
  716.     virtual HRESULT __stdcall put_DrawLevel (
  717.         enum esriViewDrawPhase DrawLevel ) = 0;
  718.     virtual HRESULT __stdcall get_GuideCount (
  719.         long * Count ) = 0;
  720.     virtual HRESULT __stdcall put_Guide (
  721.         long idx,
  722.         double pos ) = 0;
  723.     virtual HRESULT __stdcall get_Guide (
  724.         long idx,
  725.         double * pos ) = 0;
  726.     virtual HRESULT __stdcall AddGuide (
  727.         double pos ) = 0;
  728.     virtual HRESULT __stdcall RemoveGuide (
  729.         long idx ) = 0;
  730.     virtual HRESULT __stdcall RemoveAllGuides ( ) = 0;
  731.     virtual HRESULT __stdcall Draw (
  732.         struct IDisplay * Display,
  733.         VARIANT_BOOL isHorizontal ) = 0;
  734.     virtual HRESULT __stdcall DrawHighlight (
  735.         struct IDisplay * Display,
  736.         VARIANT_BOOL isHorizontal ) = 0;
  737. };
  738. struct __declspec(uuid("7fd02e40-706a-11d3-8170-0080c7625171"))
  739. MapEvents;
  740.     // [ default ] interface IUnknown
  741.     // [ default, source ] interface IMapEvents
  742. struct __declspec(uuid("cecd552c-54ef-4930-934e-81771a2db5df"))
  743. MapEvents2;
  744.     // [ default ] interface IUnknown
  745.     // [ default, source ] interface IMapEvents2
  746. struct __declspec(uuid("8949e874-da17-436b-a88c-f16ecb4ee1c9"))
  747. MapEvents3;
  748.     // [ default ] interface IUnknown
  749.     // [ default, source ] interface IMapEvents3
  750. struct __declspec(uuid("6589f140-f7f7-11d2-b872-00600802e603"))
  751. ScaleLine;
  752.     // [ default ] interface IUnknown
  753.     // interface IScaleBar
  754.     // interface IScaleLine
  755.     // interface IScaleMarks
  756.     // interface IMapSurround
  757.     // interface IQuerySize
  758.     // interface IBoundsProperties
  759.     // interface ITransformEvents
  760.     // interface IPersistStream
  761.     // interface IPersist
  762.     // interface IClone
  763.     // interface IConnectionPointContainer
  764.     // interface IGraphicsComposite
  765.     // interface IPropertySupport
  766.     // [ default, source ] interface IMapSurroundEvents
  767. struct __declspec(uuid("6589f141-f7f7-11d2-b872-00600802e603"))
  768. SteppedScaleLine;
  769.     // [ default ] interface IUnknown
  770.     // interface IScaleBar
  771.     // interface IScaleLine
  772.     // interface IScaleMarks
  773.     // interface IMapSurround
  774.     // interface IQuerySize
  775.     // interface IBoundsProperties
  776.     // interface ITransformEvents
  777.     // interface IPersistStream
  778.     // interface IPersist
  779.     // interface IClone
  780.     // interface IConnectionPointContainer
  781.     // interface IGraphicsComposite
  782.     // interface IPropertySupport
  783.     // [ default, source ] interface IMapSurroundEvents
  784. struct __declspec(uuid("6589f143-f7f7-11d2-b872-00600802e603"))
  785. HollowScaleBar;
  786.     // [ default ] interface IUnknown
  787.     // interface IScaleBar
  788.     // interface IDoubleFillScaleBar
  789.     // interface IScaleMarks
  790.     // interface IMapSurround
  791.     // interface IQuerySize
  792.     // interface IBoundsProperties
  793.     // interface ITransformEvents
  794.     // interface IPersistStream
  795.     // interface IPersist
  796.     // interface IClone
  797.     // interface IConnectionPointContainer
  798.     // interface IGraphicsComposite
  799.     // interface IPropertySupport
  800.     // [ default, source ] interface IMapSurroundEvents
  801. struct __declspec(uuid("6589f146-f7f7-11d2-b872-00600802e603"))
  802. SingleDivisionScaleBar;
  803.     // [ default ] interface IUnknown
  804.     // interface IScaleBar
  805.     // interface ISingleFillScaleBar
  806.     // interface IScaleMarks
  807.     // interface IMapSurround
  808.     // interface IQuerySize
  809.     // interface IBoundsProperties
  810.     // interface ITransformEvents
  811.     // interface IPersistStream
  812.     // interface IPersist
  813.     // interface IClone
  814.     // interface IConnectionPointContainer
  815.     // interface IGraphicsComposite
  816.     // interface IPropertySupport
  817.     // [ default, source ] interface IMapSurroundEvents
  818. struct __declspec(uuid("7a3f91db-b9e3-11d1-8756-0000f8751720"))
  819. Scalebar;
  820.     // [ default ] interface IUnknown
  821.     // interface IMapSurround
  822.     // interface IQuerySize
  823.     // interface IBoundsProperties
  824.     // interface IConnectionPointContainer
  825.     // interface IPersistStream
  826.     // interface IPersist
  827.     // interface IClone
  828. struct __declspec(uuid("6589f147-f7f7-11d2-b872-00600802e603"))
  829. AlternatingScaleBar;
  830.     // [ default ] interface IUnknown
  831.     // interface IScaleBar
  832.     // interface IDoubleFillScaleBar
  833.     // interface IScaleMarks
  834.     // interface IMapSurround
  835.     // interface IQuerySize
  836.     // interface IBoundsProperties
  837.     // interface IConnectionPointContainer
  838.     // interface IGraphicsComposite
  839.     // interface IPropertySupport
  840.     // interface ITransformEvents
  841.     // interface IPersistStream
  842.     // interface IPersist
  843.     // interface IClone
  844.     // [ default, source ] interface IMapSurroundEvents
  845. struct __declspec(uuid("6589f148-f7f7-11d2-b872-00600802e603"))
  846. DoubleAlternatingScaleBar;
  847.     // [ default ] interface IUnknown
  848.     // interface IScaleBar
  849.     // interface IDoubleFillScaleBar
  850.     // interface IScaleMarks
  851.     // interface IMapSurround
  852.     // interface IQuerySize
  853.     // interface IBoundsProperties
  854.     // interface IConnectionPointContainer
  855.     // interface IGraphicsComposite
  856.     // interface IPropertySupport
  857.     // interface ITransformEvents
  858.     // interface IPersistStream
  859.     // interface IPersist
  860.     // interface IClone
  861.     // [ default, source ] interface IMapSurroundEvents
  862. struct __declspec(uuid("7a3f91dc-b9e3-11d1-8756-0000f8751720"))
  863. ScaleText;
  864.     // [ default ] interface IUnknown
  865.     // interface IScaleText
  866.     // interface IMapSurround
  867.     // interface IGraphicsComposite
  868.     // interface IQuerySize
  869.     // interface IBoundsProperties
  870.     // interface IConnectionPointContainer
  871.     // interface IPropertySupport
  872.     // interface ITransformEvents
  873.     // interface IPersistStream
  874.     // interface IPersist
  875.     // interface IClone
  876.     // [ default, source ] interface IMapSurroundEvents
  877. struct __declspec(uuid("7a3f91dd-b9e3-11d1-8756-0000f8751720"))
  878. MarkerNorthArrow;
  879.     // [ default ] interface IUnknown
  880.     // interface INorthArrow
  881.     // interface IMarkerNorthArrow
  882.     // interface IMapSurround
  883.     // interface IQuerySize
  884.     // interface IBoundsProperties
  885.     // interface IConnectionPointContainer
  886.     // interface IGraphicsComposite
  887.     // interface IPropertySupport
  888.     // interface IPersistStream
  889.     // interface IPersist
  890.     // interface IClone
  891.     // interface ITransformEvents
  892.     // [ default, source ] interface IMapSurroundEvents
  893. struct __declspec(uuid("7a3f91de-b9e3-11d1-8756-0000f8751720"))
  894. Overview;
  895.     // [ default ] interface IUnknown
  896.     // interface IOverview
  897.     // interface IOverview2
  898.     // interface IMapSurround
  899.     // interface IQuerySize
  900.     // interface IBoundsProperties
  901.     // interface IConnectionPointContainer
  902.     // interface IPersistStream
  903.     // interface IPersist
  904.     // interface IClone
  905.     // [ default, source ] interface IMapSurroundEvents
  906. struct __declspec(uuid("7a3f91df-b9e3-11d1-8756-0000f8751720"))
  907. MapTitle;
  908.     // [ default ] interface IUnknown
  909.     // interface IMapSurround
  910.     // interface IQuerySize
  911.     // interface IBoundsProperties
  912.     // interface IConnectionPointContainer
  913.     // interface IPersistStream
  914.     // interface IPersist
  915.     // interface IClone
  916.     // [ default, source ] interface IMapSurroundEvents
  917. struct __declspec(uuid("7a3f91e3-b9e3-11d1-8756-0000f8751720"))
  918. MapInset;
  919.     // [ default ] interface IUnknown
  920.     // interface IMapInset
  921.     // interface IMapSurround
  922.     // interface IQuerySize
  923.     // interface IBoundsProperties
  924.     // interface IConnectionPointContainer
  925.     // interface IPersistStream
  926.     // interface IPersist
  927.     // interface IClone
  928.     // [ default, source ] interface IMapSurroundEvents
  929. struct __declspec(uuid("7a3f91e4-b9e3-11d1-8756-0000f8751720"))
  930. Legend;
  931.     // [ default ] interface IUnknown
  932.     // interface ILegend
  933.     // interface IMapSurround
  934.     // interface IQuerySize
  935.     // interface IBoundsProperties
  936.     // interface IGraphicsComposite
  937.     // interface IConnectionPointContainer
  938.     // interface IPropertySupport
  939.     // interface IReadingDirection
  940.     // interface IPersistStream
  941.     // interface IPersist
  942.     // interface IClone
  943.     // interface IActiveViewEvents
  944.     // interface ITransformEvents
  945.     // [ default, source ] interface IMapSurroundEvents
  946. struct __declspec(uuid("7a3f91e5-b9e3-11d1-8756-0000f8751720"))
  947. LegendFormat;
  948.     // [ default ] interface IUnknown
  949.     // interface ILegendFormat
  950.     // interface ILegendLayout
  951.     // interface IPersistStream
  952.     // interface IPersist
  953.     // interface IClone
  954. struct __declspec(uuid("bbb1ae73-41e3-11d2-ae1e-080009ec732a"))
  955. AOIBookmark;
  956.     // [ default ] interface IUnknown
  957.     // interface IAOIBookmark
  958.     // interface ISpatialBookmark
  959.     // interface IPersistStream
  960.     // interface IPersist
  961. struct __declspec(uuid("ec65b35b-4342-11d2-ae22-080009ec732a"))
  962. FeatureBookmark;
  963.     // [ default ] interface IUnknown
  964.     // interface IFeatureBookmark
  965.     // interface ISpatialBookmark
  966.     // interface IPersistStream
  967.     // interface IPersist
  968. struct __declspec(uuid("a2983338-7e7c-11d2-a084-0000f8775bf9"))
  969. FeatureCursorBuffer;
  970.     // [ default ] interface IUnknown
  971.     // interface IFeatureCursorBuffer
  972.     // interface IFeatureCursorBuffer2
  973.     // interface IBufferProcessingParameter
  974. struct __declspec(uuid("59f60296-c1fb-11d2-9f23-00c04f6bc886"))
  975. FeatureIndex;
  976.     // interface IFeatureIndex
  977.     // interface IFeatureIndex2
  978.     // interface IIndexQuery
  979.     // interface IIndexQuery2
  980.     // [ default ] interface IUnknown
  981. struct __declspec(uuid("4c1fd612-f3a3-11d3-9fde-00c04f6bc78e"))
  982. BasicGeoprocessor;
  983.     // interface IBasicGeoprocessor
  984.     // [ default ] interface IUnknown
  985. struct __declspec(uuid("a802ba72-d947-11d1-8484-0000f875b9c6"))
  986. InvalidArea;
  987.     // [ default ] interface IUnknown
  988.     // interface IInvalidArea
  989.     // interface IInvalidArea2
  990.     // interface IInvalidArea3
  991. struct __declspec(uuid("ee7c5047-e3db-11d3-a096-00c04f6bc626"))
  992. StandaloneTable;
  993.     // [ default ] interface IUnknown
  994.     // interface IStandaloneTable
  995.     // interface IDisplayTable
  996.     // interface IDisplayRelationshipClass
  997.     // interface ITableFields
  998.     // interface IRelationshipClassCollection
  999.     // interface IRelationshipClassCollectionEdit
  1000.     // interface ITableSelection
  1001.     // interface ITable
  1002.     // interface IDataset
  1003.     // interface IObjectClassSchemaEvents
  1004.     // interface IDataLayer
  1005.     // interface IDataLayer2
  1006.     // interface IAttributeTable
  1007.     // interface IPersist
  1008.     // interface IPersistStream
  1009.     // interface IConnectionPointContainer
  1010.     // interface ITableDefinition
  1011.     // [ default, source ] interface ISelectionEvents
  1012. struct __declspec(uuid("85dcfd05-8e4f-11d4-a697-00508b4a4114"))
  1013. MapSelection;
  1014.     // [ default ] interface IUnknown
  1015.     // interface IEnumFeature
  1016.     // interface IEnumFeatureSetup
  1017.     // interface ISelection
  1018. struct __declspec(uuid("03762c8b-f4d0-11d1-ade8-080009ec732a"))
  1019. IMapGrid : IUnknown
  1020. {
  1021.     //
  1022.     // Raw methods provided by interface
  1023.     //
  1024.     virtual HRESULT __stdcall get_Name (
  1025.         BSTR * gridName ) = 0;
  1026.     virtual HRESULT __stdcall put_Name (
  1027.         BSTR gridName ) = 0;
  1028.     virtual HRESULT __stdcall get_LineSymbol (
  1029.         struct ILineSymbol * * Symbol ) = 0;
  1030.     virtual HRESULT __stdcall put_LineSymbol (
  1031.         struct ILineSymbol * Symbol ) = 0;
  1032.     virtual HRESULT __stdcall get_TickMarkSymbol (
  1033.         struct IMarkerSymbol * * Symbol ) = 0;
  1034.     virtual HRESULT __stdcall put_TickMarkSymbol (
  1035.         struct IMarkerSymbol * Symbol ) = 0;
  1036.     virtual HRESULT __stdcall get_LabelFormat (
  1037.         struct IGridLabel * * Format ) = 0;
  1038.     virtual HRESULT __stdcall put_LabelFormat (
  1039.         struct IGridLabel * Format ) = 0;
  1040.     virtual HRESULT __stdcall get_TickLineSymbol (
  1041.         struct ILineSymbol * * Symbol ) = 0;
  1042.     virtual HRESULT __stdcall put_TickLineSymbol (
  1043.         struct ILineSymbol * Symbol ) = 0;
  1044.     virtual HRESULT __stdcall get_TickLength (
  1045.         double * lengthPoints ) = 0;
  1046.     virtual HRESULT __stdcall put_TickLength (
  1047.         double lengthPoints ) = 0;
  1048.     virtual HRESULT __stdcall get_SubTickCount (
  1049.         short * Count ) = 0;
  1050.     virtual HRESULT __stdcall put_SubTickCount (
  1051.         short Count ) = 0;
  1052.     virtual HRESULT __stdcall get_SubTickLineSymbol (
  1053.         struct ILineSymbol * * Symbol ) = 0;
  1054.     virtual HRESULT __stdcall put_SubTickLineSymbol (
  1055.         struct ILineSymbol * Symbol ) = 0;
  1056.     virtual HRESULT __stdcall get_SubTickLength (
  1057.         double * lengthPoints ) = 0;
  1058.     virtual HRESULT __stdcall put_SubTickLength (
  1059.         double lengthPoints ) = 0;
  1060.     virtual HRESULT __stdcall get_Border (
  1061.         struct IMapGridBorder * * gridBorder ) = 0;
  1062.     virtual HRESULT __stdcall put_Border (
  1063.         struct IMapGridBorder * gridBorder ) = 0;
  1064.     virtual HRESULT __stdcall get_Visible (
  1065.         VARIANT_BOOL * Visible ) = 0;
  1066.     virtual HRESULT __stdcall put_Visible (
  1067.         VARIANT_BOOL Visible ) = 0;
  1068.     virtual HRESULT __stdcall QueryLabelVisibility (
  1069.         VARIANT_BOOL * leftVis,
  1070.         VARIANT_BOOL * topVis,
  1071.         VARIANT_BOOL * rightVis,
  1072.         VARIANT_BOOL * bottomVis ) = 0;
  1073.     virtual HRESULT __stdcall SetLabelVisibility (
  1074.         VARIANT_BOOL leftVis,
  1075.         VARIANT_BOOL topVis,
  1076.         VARIANT_BOOL rightVis,
  1077.         VARIANT_BOOL bottomVis ) = 0;
  1078.     virtual HRESULT __stdcall QueryTickVisibility (
  1079.         VARIANT_BOOL * leftVis,
  1080.         VARIANT_BOOL * topVis,
  1081.         VARIANT_BOOL * rightVis,
  1082.         VARIANT_BOOL * bottomVis ) = 0;
  1083.     virtual HRESULT __stdcall SetTickVisibility (
  1084.         VARIANT_BOOL leftVis,
  1085.         VARIANT_BOOL topVis,
  1086.         VARIANT_BOOL rightVis,
  1087.         VARIANT_BOOL bottomVis ) = 0;
  1088.     virtual HRESULT __stdcall QuerySubTickVisibility (
  1089.         VARIANT_BOOL * leftVis,
  1090.         VARIANT_BOOL * topVis,
  1091.         VARIANT_BOOL * rightVis,
  1092.         VARIANT_BOOL * bottomVis ) = 0;
  1093.     virtual HRESULT __stdcall SetSubTickVisibility (
  1094.         VARIANT_BOOL leftVis,
  1095.         VARIANT_BOOL topVis,
  1096.         VARIANT_BOOL rightVis,
  1097.         VARIANT_BOOL bottomVis ) = 0;
  1098.     virtual HRESULT __stdcall SetDefaults (
  1099.         struct IMapFrame * pMapFrame ) = 0;
  1100.     virtual HRESULT __stdcall GenerateGraphics (
  1101.         struct IMapFrame * pMapFrame,
  1102.         struct IGraphicsContainer * GraphicsContainer ) = 0;
  1103.     virtual HRESULT __stdcall PrepareForOutput (
  1104.         OLE_HANDLE hdc,
  1105.         long dpi,
  1106.         struct tagRECT * pixelBounds,
  1107.         struct IMapFrame * pMapFrame ) = 0;
  1108.     virtual HRESULT __stdcall Draw (
  1109.         struct IDisplay * Display,
  1110.         struct IMapFrame * pMapFrame ) = 0;
  1111.     virtual HRESULT __stdcall get_ExteriorWidth (
  1112.         struct IDisplay * pDisplay,
  1113.         struct IMapFrame * pMapFrame,
  1114.         double * pWidth ) = 0;
  1115. };
  1116. struct __declspec(uuid("ce41c501-9df9-11d2-aade-000000000000"))
  1117. IGridLabel : IUnknown
  1118. {
  1119.     //
  1120.     // Raw methods provided by interface
  1121.     //
  1122.     virtual HRESULT __stdcall get_DisplayName (
  1123.         BSTR * Name ) = 0;
  1124.     virtual HRESULT __stdcall get_Applies (
  1125.         struct IMapGrid * grid,
  1126.         VARIANT_BOOL * Applies ) = 0;
  1127.     virtual HRESULT __stdcall get_EditObject (
  1128.         IUnknown * * ppObject ) = 0;
  1129.     virtual HRESULT __stdcall put_EditObject (
  1130.         IUnknown * ppObject ) = 0;
  1131.     virtual HRESULT __stdcall get_Font (
  1132.         IFontDisp * * Font ) = 0;
  1133.     virtual HRESULT __stdcall put_Font (
  1134.         IFontDisp * Font ) = 0;
  1135.     virtual HRESULT __stdcall get_Color (
  1136.         struct IColor * * Color ) = 0;
  1137.     virtual HRESULT __stdcall put_Color (
  1138.         struct IColor * Color ) = 0;
  1139.     virtual HRESULT __stdcall get_LabelOffset (
  1140.         double * offsetPoints ) = 0;
  1141.     virtual HRESULT __stdcall put_LabelOffset (
  1142.         double offsetPoints ) = 0;
  1143.     virtual HRESULT __stdcall get_LabelAlignment (
  1144.         enum esriGridAxisEnum axis,
  1145.         VARIANT_BOOL * Horizontal ) = 0;
  1146.     virtual HRESULT __stdcall put_LabelAlignment (
  1147.         enum esriGridAxisEnum axis,
  1148.         VARIANT_BOOL Horizontal ) = 0;
  1149.     virtual HRESULT __stdcall QueryTextExtent (
  1150.         double labelValue,
  1151.         struct IPoint * Location,
  1152.         enum esriGridAxisEnum axis,
  1153.         struct IDisplay * Display,
  1154.         struct IEnvelope * Extent ) = 0;
  1155.     virtual HRESULT __stdcall Draw (
  1156.         double labelValue,
  1157.         struct IPoint * Location,
  1158.         enum esriGridAxisEnum axis,
  1159.         struct IDisplay * Display ) = 0;
  1160.     virtual HRESULT __stdcall Preview (
  1161.         OLE_HANDLE hdc,
  1162.         struct tagRECT * rectangle ) = 0;
  1163. };
  1164. enum esriGridAxisEnum
  1165. {
  1166.     esriGridAxisNone = 0,
  1167.     esriGridAxisTop = 1,
  1168.     esriGridAxisBottom = 2,
  1169.     esriGridAxisLeft = 3,
  1170.     esriGridAxisRight = 4
  1171. };
  1172. struct __declspec(uuid("ac81ecf9-9ee4-11d2-aadf-000000000000"))
  1173. IMapGridBorder : IUnknown
  1174. {
  1175.     //
  1176.     // Raw methods provided by interface
  1177.     //
  1178.     virtual HRESULT __stdcall get_DisplayName (
  1179.         BSTR * Name ) = 0;
  1180.     virtual HRESULT __stdcall get_Width (
  1181.         double * widthPts ) = 0;
  1182.     virtual HRESULT __stdcall Draw (
  1183.         struct IDisplay * Display,
  1184.         struct IGeometry * frameGeometry,
  1185.         struct IGeometry * mapGeometry ) = 0;
  1186. };
  1187. enum esriGridCornerEnum
  1188. {
  1189.     esriGridCornerLowerLeft = 0,
  1190.     esriGridCornerLowerRight = 1,
  1191.     esriGridCornerUpperLeft = 2,
  1192.     esriGridCornerUpperRight = 3
  1193. };
  1194. struct __declspec(uuid("76b22cba-a25b-41e5-b8ba-f29ae31822bb"))
  1195. IGridLabel2 : IUnknown
  1196. {
  1197.     //
  1198.     // Raw methods provided by interface
  1199.     //
  1200.     virtual HRESULT __stdcall get_DisplayName (
  1201.         BSTR * Name ) = 0;
  1202.     virtual HRESULT __stdcall get_Applies (
  1203.         struct IMapGrid * grid,
  1204.         VARIANT_BOOL * Applies ) = 0;
  1205.     virtual HRESULT __stdcall get_EditObject (
  1206.         IUnknown * * ppObject ) = 0;
  1207.     virtual HRESULT __stdcall put_EditObject (
  1208.         IUnknown * ppObject ) = 0;
  1209.     virtual HRESULT __stdcall get_Font (
  1210.         IFontDisp * * Font ) = 0;
  1211.     virtual HRESULT __stdcall put_Font (
  1212.         IFontDisp * Font ) = 0;
  1213.     virtual HRESULT __stdcall get_Color (
  1214.         struct IColor * * Color ) = 0;
  1215.     virtual HRESULT __stdcall put_Color (
  1216.         struct IColor * Color ) = 0;
  1217.     virtual HRESULT __stdcall get_LabelOffset (
  1218.         double * offsetPoints ) = 0;
  1219.     virtual HRESULT __stdcall put_LabelOffset (
  1220.         double offsetPoints ) = 0;
  1221.     virtual HRESULT __stdcall get_LabelAlignment (
  1222.         enum esriGridAxisEnum axis,
  1223.         VARIANT_BOOL * Horizontal ) = 0;
  1224.     virtual HRESULT __stdcall put_LabelAlignment (
  1225.         enum esriGridAxisEnum axis,
  1226.         VARIANT_BOOL Horizontal ) = 0;
  1227.     virtual HRESULT __stdcall QueryTextExtent (
  1228.         double labelValue,
  1229.         struct IPoint * Location,
  1230.         enum esriGridAxisEnum axis,
  1231.         struct IDisplay * Display,
  1232.         struct IEnvelope * Extent ) = 0;
  1233.     virtual HRESULT __stdcall Draw (
  1234.         double labelValue,
  1235.         struct IPoint * Location,
  1236.         enum esriGridAxisEnum axis,
  1237.         struct IDisplay * Display ) = 0;
  1238.     virtual HRESULT __stdcall Preview (
  1239.         OLE_HANDLE hdc,
  1240.         struct tagRECT * rectangle ) = 0;
  1241.     virtual HRESULT __stdcall get_FontSize (
  1242.         double * Size ) = 0;
  1243.     virtual HRESULT __stdcall put_FontSize (
  1244.         double Size ) = 0;
  1245. };
  1246. struct __declspec(uuid("ed656e23-e953-11d3-9fda-00c04f6bc78e"))
  1247. IGridLabelExport : IUnknown
  1248. {
  1249.     //
  1250.     // Raw methods provided by interface
  1251.     //
  1252.     virtual HRESULT __stdcall CreateElement (
  1253.         double labelValue,
  1254.         struct IPoint * Location,
  1255.         enum esriGridAxisEnum axis,
  1256.         struct IDisplay * Display,
  1257.         struct IElement * * graphic ) = 0;
  1258. };
  1259. enum esriDMSGridLabelType
  1260. {
  1261.     esriDMSGridLabelStandard = 0,
  1262.     esriDMSGridLabelStacked = 1,
  1263.     esriDMSGridLabelDD = 2,
  1264.     esriDMSGridLabelDM = 3,
  1265.     esriDMSGridLabelDS = 4
  1266. };
  1267. struct __declspec(uuid("ce41c503-9df9-11d2-aade-000000000000"))
  1268. IDMSGridLabel : IUnknown
  1269. {
  1270.     //
  1271.     // Raw methods provided by interface
  1272.     //
  1273.     virtual HRESULT __stdcall get_LabelType (
  1274.         enum esriDMSGridLabelType * LabelType ) = 0;
  1275.     virtual HRESULT __stdcall put_LabelType (
  1276.         enum esriDMSGridLabelType LabelType ) = 0;
  1277.     virtual HRESULT __stdcall get_LatLonFormat (
  1278.         struct ILatLonFormat * * Format ) = 0;
  1279.     virtual HRESULT __stdcall put_LatLonFormat (
  1280.         struct ILatLonFormat * Format ) = 0;
  1281.     virtual HRESULT __stdcall get_ShowZeroMinutes (
  1282.         VARIANT_BOOL * show ) = 0;
  1283.     virtual HRESULT __stdcall put_ShowZeroMinutes (
  1284.         VARIANT_BOOL show ) = 0;
  1285.     virtual HRESULT __stdcall get_ShowZeroSeconds (
  1286.         VARIANT_BOOL * show ) = 0;
  1287.     virtual HRESULT __stdcall put_ShowZeroSeconds (
  1288.         VARIANT_BOOL show ) = 0;
  1289.     virtual HRESULT __stdcall get_MinutesFont (
  1290.         IFontDisp * * Font ) = 0;
  1291.     virtual HRESULT __stdcall put_MinutesFont (
  1292.         IFontDisp * Font ) = 0;
  1293.     virtual HRESULT __stdcall get_MinutesColor (
  1294.         struct IColor * * Color ) = 0;
  1295.     virtual HRESULT __stdcall put_MinutesColor (
  1296.         struct IColor * Color ) = 0;
  1297.     virtual HRESULT __stdcall get_SecondsFont (
  1298.         IFontDisp * * Font ) = 0;
  1299.     virtual HRESULT __stdcall put_SecondsFont (
  1300.         IFontDisp * Font ) = 0;
  1301.     virtual HRESULT __stdcall get_SecondsColor (
  1302.         struct IColor * * Color ) = 0;
  1303.     virtual HRESULT __stdcall put_SecondsColor (
  1304.         struct IColor * Color ) = 0;
  1305. };
  1306. struct __declspec(uuid("ce41c505-9df9-11d2-aade-000000000000"))
  1307. IFormattedGridLabel : IUnknown
  1308. {
  1309.     //
  1310.     // Raw methods provided by interface
  1311.     //
  1312.     virtual HRESULT __stdcall get_Format (
  1313.         struct INumberFormat * * Format ) = 0;
  1314.     virtual HRESULT __stdcall put_Format (
  1315.         struct INumberFormat * Format ) = 0;
  1316. };
  1317. struct __declspec(uuid("ce41c509-9df9-11d2-aade-000000000000"))
  1318. IMixedFontGridLabel : IUnknown
  1319. {
  1320.     //
  1321.     // Raw methods provided by interface
  1322.     //
  1323.     virtual HRESULT __stdcall get_NumGroupedDigits (
  1324.         short * numGrouped ) = 0;
  1325.     virtual HRESULT __stdcall put_NumGroupedDigits (
  1326.         short numGrouped ) = 0;
  1327.     virtual HRESULT __stdcall get_SecondaryFont (
  1328.         IFontDisp * * Font ) = 0;
  1329.     virtual HRESULT __stdcall put_SecondaryFont (
  1330.         IFontDisp * Font ) = 0;
  1331.     virtual HRESULT __stdcall get_SecondaryColor (
  1332.         struct IColor * * Color ) = 0;
  1333.     virtual HRESULT __stdcall put_SecondaryColor (
  1334.         struct IColor * Color ) = 0;
  1335. };
  1336. struct __declspec(uuid("f3b2fce0-2f21-42de-af4f-10b4c99579c3"))
  1337. IMixedFontGridLabel2 : IUnknown
  1338. {
  1339.     //
  1340.     // Raw methods provided by interface
  1341.     //
  1342.     virtual HRESULT __stdcall get_NumGroupedDigits (
  1343.         short * numGrouped ) = 0;
  1344.     virtual HRESULT __stdcall put_NumGroupedDigits (
  1345.         short numGrouped ) = 0;
  1346.     virtual HRESULT __stdcall get_SecondaryFont (
  1347.         IFontDisp * * Font ) = 0;
  1348.     virtual HRESULT __stdcall put_SecondaryFont (
  1349.         IFontDisp * Font ) = 0;
  1350.     virtual HRESULT __stdcall get_SecondaryColor (
  1351.         struct IColor * * Color ) = 0;
  1352.     virtual HRESULT __stdcall put_SecondaryColor (
  1353.         struct IColor * Color ) = 0;
  1354.     virtual HRESULT __stdcall get_SecondaryFontSize (
  1355.         double * Size ) = 0;
  1356.     virtual HRESULT __stdcall put_SecondaryFontSize (
  1357.         double Size ) = 0;
  1358. };
  1359. struct __declspec(uuid("ce41c50a-9df9-11d2-aade-000000000000"))
  1360. IIndexGridTabStyle : IUnknown
  1361. {
  1362.     //
  1363.     // Raw methods provided by interface
  1364.     //
  1365.     virtual HRESULT __stdcall get_ForegroundColor (
  1366.         struct IColor * * Color ) = 0;
  1367.     virtual HRESULT __stdcall put_ForegroundColor (
  1368.         struct IColor * Color ) = 0;
  1369.     virtual HRESULT __stdcall get_OutlineColor (
  1370.         struct IColor * * Color ) = 0;
  1371.     virtual HRESULT __stdcall put_OutlineColor (
  1372.         struct IColor * Color ) = 0;
  1373.     virtual HRESULT __stdcall get_Thickness (
  1374.         double * thicknessPts ) = 0;
  1375.     virtual HRESULT __stdcall put_Thickness (
  1376.         double thicknessPts ) = 0;
  1377.     virtual HRESULT __stdcall PrepareDraw (
  1378.         BSTR labelValue,
  1379.         double tabWidthPage,
  1380.         enum esriGridAxisEnum axis ) = 0;
  1381. };
  1382. enum esriBackgroundTabType
  1383. {
  1384.     esriBackgroundTabRound = 0,
  1385.     esriBackgroundTabRectangle = 1,
  1386.     esriBackgroundTabRoundedRectangle = 2
  1387. };
  1388. struct __declspec(uuid("ce41c50c-9df9-11d2-aade-000000000000"))
  1389. IBackgroundTabStyle : IUnknown
  1390. {
  1391.     //
  1392.     // Raw methods provided by interface
  1393.     //
  1394.     virtual HRESULT __stdcall get_BackgroundType (
  1395.         enum esriBackgroundTabType * tabType ) = 0;
  1396.     virtual HRESULT __stdcall put_BackgroundType (
  1397.         enum esriBackgroundTabType tabType ) = 0;
  1398. };
  1399. struct __declspec(uuid("ac81ecfa-9ee4-11d2-aadf-000000000000"))
  1400. ISimpleMapGridBorder : IUnknown
  1401. {
  1402.     //
  1403.     // Raw methods provided by interface
  1404.     //
  1405.     virtual HRESULT __stdcall get_LineSymbol (
  1406.         struct ILineSymbol * * Symbol ) = 0;
  1407.     virtual HRESULT __stdcall put_LineSymbol (
  1408.         struct ILineSymbol * Symbol ) = 0;
  1409. };
  1410. struct __declspec(uuid("6ca416af-e160-11d2-9f4e-00c04f6bc78e"))
  1411. ICalibratedMapGridBorder : IUnknown
  1412. {
  1413.     //
  1414.     // Raw methods provided by interface
  1415.     //
  1416.     virtual HRESULT __stdcall get_ForegroundColor (
  1417.         struct IColor * * Color ) = 0;
  1418.     virtual HRESULT __stdcall put_ForegroundColor (
  1419.         struct IColor * Color ) = 0;
  1420.     virtual HRESULT __stdcall get_BackgroundColor (
  1421.         struct IColor * * Color ) = 0;
  1422.     virtual HRESULT __stdcall put_BackgroundColor (
  1423.         struct IColor * Color ) = 0;
  1424.     virtual HRESULT __stdcall get_BorderWidth (
  1425.         double * widthPts ) = 0;
  1426.     virtual HRESULT __stdcall put_BorderWidth (
  1427.         double widthPts ) = 0;
  1428.     virtual HRESULT __stdcall get_Interval (
  1429.         double * intervalPts ) = 0;
  1430.     virtual HRESULT __stdcall put_Interval (
  1431.         double intervalPts ) = 0;
  1432.     virtual HRESULT __stdcall get_Alternating (
  1433.         VARIANT_BOOL * Alternating ) = 0;
  1434.     virtual HRESULT __stdcall put_Alternating (
  1435.         VARIANT_BOOL Alternating ) = 0;
  1436. };
  1437. struct __declspec(uuid("4f69021f-a5c1-11d2-ae82-080009ec732a"))
  1438. IMeasuredGrid : IUnknown
  1439. {
  1440.     //
  1441.     // Raw methods provided by interface
  1442.     //
  1443.     virtual HRESULT __stdcall get_XOrigin (
  1444.         double * origin ) = 0;
  1445.     virtual HRESULT __stdcall put_XOrigin (
  1446.         double origin ) = 0;
  1447.     virtual HRESULT __stdcall get_XIntervalSize (
  1448.         double * Interval ) = 0;
  1449.     virtual HRESULT __stdcall put_XIntervalSize (
  1450.         double Interval ) = 0;
  1451.     virtual HRESULT __stdcall get_YOrigin (
  1452.         double * origin ) = 0;
  1453.     virtual HRESULT __stdcall put_YOrigin (
  1454.         double origin ) = 0;
  1455.     virtual HRESULT __stdcall get_YIntervalSize (
  1456.         double * Interval ) = 0;
  1457.     virtual HRESULT __stdcall put_YIntervalSize (
  1458.         double Interval ) = 0;
  1459.     virtual HRESULT __stdcall get_Units (
  1460.         enum esriUnits * unitsCode ) = 0;
  1461.     virtual HRESULT __stdcall put_Units (
  1462.         enum esriUnits unitsCode ) = 0;
  1463.     virtual HRESULT __stdcall get_FixedOrigin (
  1464.         VARIANT_BOOL * fixed ) = 0;
  1465.     virtual HRESULT __stdcall put_FixedOrigin (
  1466.         VARIANT_BOOL fixed ) = 0;
  1467. };
  1468. struct __declspec(uuid("0fe6aea3-d8de-11d2-9f45-00c04f6bc78e"))
  1469. IProjectedGrid : IUnknown
  1470. {
  1471.     //
  1472.     // Raw methods provided by interface
  1473.     //
  1474.     virtual HRESULT __stdcall get_SpatialReference (
  1475.         struct ISpatialReference * * SpatialReference ) = 0;
  1476.     virtual HRESULT __stdcall putref_SpatialReference (
  1477.         struct ISpatialReference * SpatialReference ) = 0;
  1478. };
  1479. struct __declspec(uuid("03762c8c-f4d0-11d1-ade8-080009ec732a"))
  1480. IGraticule : IMapGrid
  1481. {
  1482.     //
  1483.     // Raw methods provided by interface
  1484.     //
  1485.     virtual HRESULT __stdcall get_AutoInterval (
  1486.         VARIANT_BOOL * AutoInterval ) = 0;
  1487.     virtual HRESULT __stdcall put_AutoInterval (
  1488.         VARIANT_BOOL AutoInterval ) = 0;
  1489.     virtual HRESULT __stdcall AddElement (
  1490.         BSTR Label,
  1491.         double Location,
  1492.         VARIANT_BOOL isLatitude,
  1493.         struct ITextSymbol * LabelSymbol ) = 0;
  1494.     virtual HRESULT __stdcall RemoveElement (
  1495.         BSTR Label ) = 0;
  1496. };
  1497. struct __declspec(uuid("03762c8d-f4d0-11d1-ade8-080009ec732a"))
  1498. IIndexGrid : IMapGrid
  1499. {
  1500.     //
  1501.     // Raw methods provided by interface
  1502.     //
  1503.     virtual HRESULT __stdcall get_ColumnCount (
  1504.         long * Count ) = 0;
  1505.     virtual HRESULT __stdcall put_ColumnCount (
  1506.         long Count ) = 0;
  1507.     virtual HRESULT __stdcall get_RowCount (
  1508.         long * Count ) = 0;
  1509.     virtual HRESULT __stdcall put_RowCount (
  1510.         long Count ) = 0;
  1511.     virtual HRESULT __stdcall get_XLabel (
  1512.         long column,
  1513.         BSTR * Label ) = 0;
  1514.     virtual HRESULT __stdcall put_XLabel (
  1515.         long column,
  1516.         BSTR Label ) = 0;
  1517.     virtual HRESULT __stdcall get_YLabel (
  1518.         long Row,
  1519.         BSTR * Label ) = 0;
  1520.     virtual HRESULT __stdcall put_YLabel (
  1521.         long Row,
  1522.         BSTR Label ) = 0;
  1523.     virtual HRESULT __stdcall QueryCellExtent (
  1524.         long Row,
  1525.         long column,
  1526.         struct IMapFrame * pMapFrame,
  1527.         struct IEnvelope * Extent ) = 0;
  1528. };
  1529. struct __declspec(uuid("ff501c89-d74b-11d2-9f43-00c04f6bc78e"))
  1530. ICustomOverlayGrid : IMapGrid
  1531. {
  1532.     //
  1533.     // Raw methods provided by interface
  1534.     //
  1535.     virtual HRESULT __stdcall get_DataSource (
  1536.         struct IFeatureClass * * FeatureClass ) = 0;
  1537.     virtual HRESULT __stdcall put_DataSource (
  1538.         struct IFeatureClass * FeatureClass ) = 0;
  1539.     virtual HRESULT __stdcall get_LabelField (
  1540.         BSTR * FieldName ) = 0;
  1541.     virtual HRESULT __stdcall put_LabelField (
  1542.         BSTR FieldName ) = 0;
  1543. };
  1544. struct __declspec(uuid("fe3115eb-ed6c-11d0-8683-0000f8751720"))
  1545. IMapFrameEvents : IUnknown
  1546. {
  1547.     //
  1548.     // Raw methods provided by interface
  1549.     //
  1550.     virtual HRESULT __stdcall MapFrameResized ( ) = 0;
  1551. };
  1552. struct __declspec(uuid("08e7d005-9aae-11d2-ae7b-080009ec732a"))
  1553. IMapGrids : IUnknown
  1554. {
  1555.     //
  1556.     // Raw methods provided by interface
  1557.     //
  1558.     virtual HRESULT __stdcall get_MapGridCount (
  1559.         long * Count ) = 0;
  1560.     virtual HRESULT __stdcall get_MapGrid (
  1561.         long Index,
  1562.         struct IMapGrid * * MapGrid ) = 0;
  1563.     virtual HRESULT __stdcall put_MapGrid (
  1564.         long Index,
  1565.         struct IMapGrid * MapGrid ) = 0;
  1566.     virtual HRESULT __stdcall AddMapGrid (
  1567.         struct IMapGrid * MapGrid ) = 0;
  1568.     virtual HRESULT __stdcall DeleteMapGrid (
  1569.         struct IMapGrid * MapGrid ) = 0;
  1570.     virtual HRESULT __stdcall ClearMapGrids ( ) = 0;
  1571. };
  1572. struct __declspec(uuid("864e5227-9809-4a48-8309-6ec640c63b30"))
  1573. IGridAxisTicks : IUnknown
  1574. {
  1575.     //
  1576.     // Raw methods provided by interface
  1577.     //
  1578.     virtual HRESULT __stdcall get_AxisTickOffset (
  1579.         double * offsetPts ) = 0;
  1580.     virtual HRESULT __stdcall put_AxisTickOffset (
  1581.         double offsetPts ) = 0;
  1582. };
  1583. struct __declspec(uuid("12700210-876c-4559-9fcf-aab238008832"))
  1584. IGridHatch : IUnknown
  1585. {
  1586.     //
  1587.     // Raw methods provided by interface
  1588.     //
  1589.     virtual HRESULT __stdcall get_HatchIntervalX (
  1590.         double * Interval ) = 0;
  1591.     virtual HRESULT __stdcall put_HatchIntervalX (
  1592.         double Interval ) = 0;
  1593.     virtual HRESULT __stdcall get_HatchIntervalY (
  1594.         double * Interval ) = 0;
  1595.     virtual HRESULT __stdcall put_HatchIntervalY (
  1596.         double Interval ) = 0;
  1597.     virtual HRESULT __stdcall get_HatchLineSymbol (
  1598.         struct ILineSymbol * * Symbol ) = 0;
  1599.     virtual HRESULT __stdcall put_HatchLineSymbol (
  1600.         struct ILineSymbol * Symbol ) = 0;
  1601.     virtual HRESULT __stdcall get_HatchMarkerSymbol (
  1602.         struct IMarkerSymbol * * Symbol ) = 0;
  1603.     virtual HRESULT __stdcall put_HatchMarkerSymbol (
  1604.         struct IMarkerSymbol * Symbol ) = 0;
  1605.     virtual HRESULT __stdcall get_HatchLength (
  1606.         double * Length ) = 0;
  1607.     virtual HRESULT __stdcall put_HatchLength (
  1608.         double Length ) = 0;
  1609.     virtual HRESULT __stdcall get_HatchDirectional (
  1610.         VARIANT_BOOL * isDirectional ) = 0;
  1611.     virtual HRESULT __stdcall put_HatchDirectional (
  1612.         VARIANT_BOOL isDirectional ) = 0;
  1613. };
  1614. struct __declspec(uuid("a8bdc097-2002-4e08-bd4b-401599a58fa4"))
  1615. IGridInteriorLabels : IUnknown
  1616. {
  1617.     //
  1618.     // Raw methods provided by interface
  1619.     //
  1620.     virtual HRESULT __stdcall get_ShowInteriorLabels (
  1621.         VARIANT_BOOL * show ) = 0;
  1622.     virtual HRESULT __stdcall put_ShowInteriorLabels (
  1623.         VARIANT_BOOL show ) = 0;
  1624.     virtual HRESULT __stdcall get_InteriorLabelIntervalX (
  1625.         double * Interval ) = 0;
  1626.     virtual HRESULT __stdcall put_InteriorLabelIntervalX (
  1627.         double Interval ) = 0;
  1628.     virtual HRESULT __stdcall get_InteriorLabelIntervalY (
  1629.         double * Interval ) = 0;
  1630.     virtual HRESULT __stdcall put_InteriorLabelIntervalY (
  1631.         double Interval ) = 0;
  1632. };
  1633. struct __declspec(uuid("a2068ced-ca6d-49d1-be32-0273ed984217"))
  1634. IDMSGridLabel2 : IDMSGridLabel
  1635. {
  1636.     //
  1637.     // Raw methods provided by interface
  1638.     //
  1639.     virtual HRESULT __stdcall get_AbbreviateLabels (
  1640.         VARIANT_BOOL * abbrev ) = 0;
  1641.     virtual HRESULT __stdcall put_AbbreviateLabels (
  1642.         VARIANT_BOOL abbrev ) = 0;
  1643.     virtual HRESULT __stdcall get_MinutesFontSize (
  1644.         double * Size ) = 0;
  1645.     virtual HRESULT __stdcall put_MinutesFontSize (
  1646.         double Size ) = 0;
  1647.     virtual HRESULT __stdcall get_SecondsFontSize (
  1648.         double * Size ) = 0;
  1649.     virtual HRESULT __stdcall put_SecondsFontSize (
  1650.         double Size ) = 0;
  1651. };
  1652. struct __declspec(uuid("30052758-07da-41db-9469-b72f14e7a07b"))
  1653. IDMSGridLabel3 : IUnknown
  1654. {
  1655.     //
  1656.     // Raw methods provided by interface
  1657.     //
  1658.     virtual HRESULT __stdcall get_LabelType (
  1659.         enum esriDMSGridLabelType * LabelType ) = 0;
  1660.     virtual HRESULT __stdcall put_LabelType (
  1661.         enum esriDMSGridLabelType LabelType ) = 0;
  1662.     virtual HRESULT __stdcall get_LatLonFormat (
  1663.         struct ILatLonFormat * * Format ) = 0;
  1664.     virtual HRESULT __stdcall put_LatLonFormat (
  1665.         struct ILatLonFormat * Format ) = 0;
  1666.     virtual HRESULT __stdcall get_ShowZeroMinutes (
  1667.         VARIANT_BOOL * show ) = 0;
  1668.     virtual HRESULT __stdcall put_ShowZeroMinutes (
  1669.         VARIANT_BOOL show ) = 0;
  1670.     virtual HRESULT __stdcall get_ShowZeroSeconds (
  1671.         VARIANT_BOOL * show ) = 0;
  1672.     virtual HRESULT __stdcall put_ShowZeroSeconds (
  1673.         VARIANT_BOOL show ) = 0;
  1674.     virtual HRESULT __stdcall get_MinutesFont (
  1675.         IFontDisp * * Font ) = 0;
  1676.     virtual HRESULT __stdcall put_MinutesFont (
  1677.         IFontDisp * Font ) = 0;
  1678.     virtual HRESULT __stdcall get_MinutesColor (
  1679.         struct IColor * * Color ) = 0;
  1680.     virtual HRESULT __stdcall put_MinutesColor (
  1681.         struct IColor * Color ) = 0;
  1682.     virtual HRESULT __stdcall get_SecondsFont (
  1683.         IFontDisp * * Font ) = 0;
  1684.     virtual HRESULT __stdcall put_SecondsFont (
  1685.         IFontDisp * Font ) = 0;
  1686.     virtual HRESULT __stdcall get_SecondsColor (
  1687.         struct IColor * * Color ) = 0;
  1688.     virtual HRESULT __stdcall put_SecondsColor (
  1689.         struct IColor * Color ) = 0;
  1690.     virtual HRESULT __stdcall get_AbbreviateLabels (
  1691.         VARIANT_BOOL * abbrev ) = 0;
  1692.     virtual HRESULT __stdcall put_AbbreviateLabels (
  1693.         VARIANT_BOOL abbrev ) = 0;
  1694.     virtual HRESULT __stdcall get_MinutesFontSize (
  1695.         double * Size ) = 0;
  1696.     virtual HRESULT __stdcall put_MinutesFontSize (
  1697.         double Size ) = 0;
  1698.     virtual HRESULT __stdcall get_SecondsFontSize (
  1699.         double * Size ) = 0;
  1700.     virtual HRESULT __stdcall put_SecondsFontSize (
  1701.         double Size ) = 0;
  1702.     virtual HRESULT __stdcall get_ShowMinusSign (
  1703.         VARIANT_BOOL * showMinus ) = 0;
  1704.     virtual HRESULT __stdcall put_ShowMinusSign (
  1705.         VARIANT_BOOL showMinus ) = 0;
  1706. };
  1707. struct __declspec(uuid("8ed900fe-2573-4911-9c13-a24ac3bc3233"))
  1708. ICornerGridLabel : IUnknown
  1709. {
  1710.     //
  1711.     // Raw methods provided by interface
  1712.     //
  1713.     virtual HRESULT __stdcall get_CornerLabel (
  1714.         enum esriGridCornerEnum corner,
  1715.         VARIANT_BOOL * isCorner ) = 0;
  1716.     virtual HRESULT __stdcall put_CornerLabel (
  1717.         enum esriGridCornerEnum corner,
  1718.         VARIANT_BOOL isCorner ) = 0;
  1719.     virtual HRESULT __stdcall get_CornerValue (
  1720.         enum esriGridCornerEnum corner,
  1721.         enum esriGridAxisEnum axis,
  1722.         double * Value ) = 0;
  1723.     virtual HRESULT __stdcall put_CornerValue (
  1724.         enum esriGridCornerEnum corner,
  1725.         enum esriGridAxisEnum axis,
  1726.         double Value ) = 0;
  1727. };
  1728. enum esriGridSquareLabelStyleEnum
  1729. {
  1730.     esriGridSquareLabelCorners = 0,
  1731.     esriGridSquareLabelCenter = 1
  1732. };
  1733. struct __declspec(uuid("46240e54-b526-47f3-80a4-a7e2f2e1c262"))
  1734. IMgrsGrid : IUnknown
  1735. {
  1736.     //
  1737.     // Raw methods provided by interface
  1738.     //
  1739.     virtual HRESULT __stdcall get_ShowGridSquareIdentifiers (
  1740.         VARIANT_BOOL * show ) = 0;
  1741.     virtual HRESULT __stdcall put_ShowGridSquareIdentifiers (
  1742.         VARIANT_BOOL show ) = 0;
  1743.     virtual HRESULT __stdcall get_GridSquareLabelFont (
  1744.         IFontDisp * * Font ) = 0;
  1745.     virtual HRESULT __stdcall put_GridSquareLabelFont (
  1746.         IFontDisp * Font ) = 0;
  1747.     virtual HRESULT __stdcall get_GridSquareLabelSize (
  1748.         double * Size ) = 0;
  1749.     virtual HRESULT __stdcall put_GridSquareLabelSize (
  1750.         double Size ) = 0;
  1751.     virtual HRESULT __stdcall get_GridSquareLabelColor (
  1752.         struct IColor * * Color ) = 0;
  1753.     virtual HRESULT __stdcall put_GridSquareLabelColor (
  1754.         struct IColor * Color ) = 0;
  1755.     virtual HRESULT __stdcall get_GridSquareLabelStyle (
  1756.         enum esriGridSquareLabelStyleEnum * Style ) = 0;
  1757.     virtual HRESULT __stdcall put_GridSquareLabelStyle (
  1758.         enum esriGridSquareLabelStyleEnum Style ) = 0;
  1759.     virtual HRESULT __stdcall get_GridSquareBoundarySymbol (
  1760.         struct ILineSymbol * * Symbol ) = 0;
  1761.     virtual HRESULT __stdcall put_GridSquareBoundarySymbol (
  1762.         struct ILineSymbol * Symbol ) = 0;
  1763.     virtual HRESULT __stdcall get_InteriorTickSymbol (
  1764.         struct ILineSymbol * * Symbol ) = 0;
  1765.     virtual HRESULT __stdcall put_InteriorTickSymbol (
  1766.         struct ILineSymbol * Symbol ) = 0;
  1767.     virtual HRESULT __stdcall get_InteriorTickLength (
  1768.         double * lengthPts ) = 0;
  1769.     virtual HRESULT __stdcall put_InteriorTickLength (
  1770.         double lengthPts ) = 0;
  1771. };
  1772. struct __declspec(uuid("8941e7de-7345-4366-9fac-108f1a685427"))
  1773. IGridLadderLabels : IUnknown
  1774. {
  1775.     //
  1776.     // Raw methods provided by interface
  1777.     //
  1778.     virtual HRESULT __stdcall get_ShowLadderLabels (
  1779.         VARIANT_BOOL * show ) = 0;
  1780.     virtual HRESULT __stdcall put_ShowLadderLabels (
  1781.         VARIANT_BOOL show ) = 0;
  1782.     virtual HRESULT __stdcall get_LadderLabelFont (
  1783.         IFontDisp * * Font ) = 0;
  1784.     virtual HRESULT __stdcall put_LadderLabelFont (
  1785.         IFontDisp * Font ) = 0;
  1786.     virtual HRESULT __stdcall get_LadderLabelSize (
  1787.         double * Size ) = 0;
  1788.     virtual HRESULT __stdcall put_LadderLabelSize (
  1789.         double Size ) = 0;
  1790.     virtual HRESULT __stdcall get_LadderLabelColor (
  1791.         struct IColor * * Color ) = 0;
  1792.     virtual HRESULT __stdcall put_LadderLabelColor (
  1793.         struct IColor * Color ) = 0;
  1794.     virtual HRESULT __stdcall get_LadderLabelRowCount (
  1795.         long * RowCount ) = 0;
  1796.     virtual HRESULT __stdcall put_LadderLabelRowCount (
  1797.         long RowCount ) = 0;
  1798.     virtual HRESULT __stdcall get_LadderLabelColumnCount (
  1799.         long * ColumnCount ) = 0;
  1800.     virtual HRESULT __stdcall put_LadderLabelColumnCount (
  1801.         long ColumnCount ) = 0;
  1802.     virtual HRESULT __stdcall get_ShowOuterLabelsOnly (
  1803.         VARIANT_BOOL * show ) = 0;
  1804.     virtual HRESULT __stdcall put_ShowOuterLabelsOnly (
  1805.         VARIANT_BOOL show ) = 0;
  1806. };
  1807. struct __declspec(uuid("560a800d-2467-4e71-9ac1-d8c399f22ad1"))
  1808. IPrincipalDigitsGridLabel : IUnknown
  1809. {
  1810.     //
  1811.     // Raw methods provided by interface
  1812.     //
  1813.     virtual HRESULT __stdcall get_SmallLabelFont (
  1814.         IFontDisp * * Font ) = 0;
  1815.     virtual HRESULT __stdcall put_SmallLabelFont (
  1816.         IFontDisp * Font ) = 0;
  1817.     virtual HRESULT __stdcall get_SmallLabelSize (
  1818.         double * Size ) = 0;
  1819.     virtual HRESULT __stdcall put_SmallLabelSize (
  1820.         double Size ) = 0;
  1821.     virtual HRESULT __stdcall get_SmallLabelColor (
  1822.         struct IColor * * Color ) = 0;
  1823.     virtual HRESULT __stdcall put_SmallLabelColor (
  1824.         struct IColor * Color ) = 0;
  1825.     virtual HRESULT __stdcall get_PrincipalDigitCount (
  1826.         long * Count ) = 0;
  1827.     virtual HRESULT __stdcall put_PrincipalDigitCount (
  1828.         long Count ) = 0;
  1829.     virtual HRESULT __stdcall get_BaseDigitCount (
  1830.         long * Count ) = 0;
  1831.     virtual HRESULT __stdcall put_BaseDigitCount (
  1832.         long Count ) = 0;
  1833.     virtual HRESULT __stdcall get_UnitSuffix (
  1834.         BSTR * str ) = 0;
  1835.     virtual HRESULT __stdcall put_UnitSuffix (
  1836.         BSTR str ) = 0;
  1837.     virtual HRESULT __stdcall get_EastingSuffix (
  1838.         BSTR * str ) = 0;
  1839.     virtual HRESULT __stdcall put_EastingSuffix (
  1840.         BSTR str ) = 0;
  1841.     virtual HRESULT __stdcall get_NorthingSuffix (
  1842.         BSTR * str ) = 0;
  1843.     virtual HRESULT __stdcall put_NorthingSuffix (
  1844.         BSTR str ) = 0;
  1845. };
  1846. struct __declspec(uuid("dd94d770-836d-11d0-87ec-080009ec732a"))
  1847. MapFrame;
  1848.     // [ default ] interface IUnknown
  1849.     // interface IElement
  1850.     // interface IElementProperties
  1851.     // interface IElementProperties2
  1852.     // interface IMapFrame
  1853.     // interface IGraphicsContainerProperty
  1854.     // interface IFrameElement
  1855.     // interface IFrameDraw
  1856.     // interface IGraphicsComposite
  1857.     // interface IPersistStream
  1858.     // interface IActiveViewEvents
  1859.     // interface IDisplayEvents
  1860.     // interface ITransformEvents
  1861.     // interface IDisplayAdmin
  1862.     // interface IMapGrids
  1863.     // interface IPropertySupport
  1864.     // interface IClone
  1865.     // interface ITransform2D
  1866.     // interface IBoundsProperties
  1867.     // interface IConnectionPointContainer
  1868.     // interface IFrameProperties
  1869.     // [ default, source ] interface IMapFrameEvents
  1870. struct __declspec(uuid("83ffcae1-edca-11d0-8683-0000f8751720"))
  1871. MapSurroundFrame;
  1872.     // [ default ] interface IUnknown
  1873.     // interface IElement
  1874.     // interface IElementProperties
  1875.     // interface IElementProperties2
  1876.     // interface IMapSurroundFrame
  1877.     // interface IGraphicsComposite
  1878.     // interface IFrameElement
  1879.     // interface IFrameDraw
  1880.     // interface IFrameProperties
  1881.     // interface IMapFrameEvents
  1882.     // interface ITransformEvents
  1883.     // interface IPropertySupport
  1884.     // interface IPersistStream
  1885.     // interface IClone
  1886.     // interface ITransform2D
  1887.     // interface IBoundsProperties
  1888.     // interface IMapSurroundEvents
  1889. struct __declspec(uuid("ce41c506-9df9-11d2-aade-000000000000"))
  1890. DMSGridLabel;
  1891.     // [ default ] interface IUnknown
  1892.     // interface IGridLabel
  1893.     // interface IDMSGridLabel
  1894.     // interface IGridLabel2
  1895.     // interface IDMSGridLabel2
  1896.     // interface IDMSGridLabel3
  1897.     // interface IGridLabelExport
  1898.     // interface IPersistStream
  1899. struct __declspec(uuid("ce41c507-9df9-11d2-aade-000000000000"))
  1900. FormattedGridLabel;
  1901.     // [ default ] interface IUnknown
  1902.     // interface IGridLabel
  1903.     // interface IGridLabel2
  1904.     // interface IFormattedGridLabel
  1905.     // interface IGridLabelExport
  1906.     // interface IPersistStream
  1907. struct __declspec(uuid("ce41c508-9df9-11d2-aade-000000000000"))
  1908. MixedFontGridLabel;
  1909.     // [ default ] interface IUnknown
  1910.     // interface IGridLabel
  1911.     // interface IGridLabel2
  1912.     // interface IFormattedGridLabel
  1913.     // interface IMixedFontGridLabel
  1914.     // interface IMixedFontGridLabel2
  1915.     // interface IGridLabelExport
  1916.     // interface IPersistStream
  1917. struct __declspec(uuid("ce41c50d-9df9-11d2-aade-000000000000"))
  1918. BackgroundTabStyle;
  1919.     // [ default ] interface IUnknown
  1920.     // interface IIndexGridTabStyle
  1921.     // interface IBackgroundTabStyle
  1922.     // interface IGridLabel
  1923.     // interface IGridLabel2
  1924.     // interface IGridLabelExport
  1925.     // interface IPersistStream
  1926. struct __declspec(uuid("ce41c50e-9df9-11d2-aade-000000000000"))
  1927. ContinuousTabStyle;
  1928.     // [ default ] interface IUnknown
  1929.     // interface IIndexGridTabStyle
  1930.     // interface IGridLabel
  1931.     // interface IGridLabel2
  1932.     // interface IGridLabelExport
  1933.     // interface IPersistStream
  1934. struct __declspec(uuid("ac81ecf7-9ee4-11d2-aadf-000000000000"))
  1935. RoundedTabStyle;
  1936.     // [ default ] interface IUnknown
  1937.     // interface IIndexGridTabStyle
  1938.     // interface IGridLabel
  1939.     // interface IGridLabel2
  1940.     // interface IGridLabelExport
  1941.     // interface IPersistStream
  1942. struct __declspec(uuid("ac81ecf8-9ee4-11d2-aadf-000000000000"))
  1943. ButtonTabStyle;
  1944.     // [ default ] interface IUnknown
  1945.     // interface IIndexGridTabStyle
  1946.     // interface IGridLabel
  1947.     // interface IGridLabel2
  1948.     // interface IGridLabelExport
  1949.     // interface IPersistStream
  1950. struct __declspec(uuid("ac81ecfb-9ee4-11d2-aadf-000000000000"))
  1951. SimpleMapGridBorder;
  1952.     // [ default ] interface IUnknown
  1953.     // interface IMapGridBorder
  1954.     // interface ISimpleMapGridBorder
  1955.     // interface IGraphicsComposite
  1956.     // interface IPersistStream
  1957. struct __declspec(uuid("6ca416b0-e160-11d2-9f4e-00c04f6bc78e"))
  1958. CalibratedMapGridBorder;
  1959.     // [ default ] interface IUnknown
  1960.     // interface IMapGridBorder
  1961.     // interface ICalibratedMapGridBorder
  1962.     // interface IGraphicsComposite
  1963.     // interface IPersistStream
  1964. struct __declspec(uuid("03762c8f-f4d0-11d1-ade8-080009ec732a"))
  1965. Graticule;
  1966.     // [ default ] interface IUnknown
  1967.     // interface IGraticule
  1968.     // interface IMapGrid
  1969.     // interface IMeasuredGrid
  1970.     // interface IGridHatch
  1971.     // interface IGridInteriorLabels
  1972.     // interface IGridAxisTicks
  1973.     // interface IPersistStream
  1974.     // interface IPersist
  1975.     // interface IClone
  1976.     // interface IGraphicsComposite
  1977. struct __declspec(uuid("03762c90-f4d0-11d1-ade8-080009ec732a"))
  1978. MeasuredGrid;
  1979.     // [ default ] interface IUnknown
  1980.     // interface IMapGrid
  1981.     // interface IMeasuredGrid
  1982.     // interface IProjectedGrid
  1983.     // interface IPersistStream
  1984.     // interface IPersist
  1985.     // interface IClone
  1986.     // interface IGraphicsComposite
  1987. struct __declspec(uuid("03762c91-f4d0-11d1-ade8-080009ec732a"))
  1988. IndexGrid;
  1989.     // [ default ] interface IUnknown
  1990.     // interface IIndexGrid
  1991.     // interface IMapGrid
  1992.     // interface IPersistStream
  1993.     // interface IPersist
  1994.     // interface IClone
  1995.     // interface IGraphicsComposite
  1996. struct __declspec(uuid("ff501c8a-d74b-11d2-9f43-00c04f6bc78e"))
  1997. CustomOverlayGrid;
  1998.     // [ default ] interface IUnknown
  1999.     // interface ICustomOverlayGrid
  2000.     // interface IMapGrid
  2001.     // interface IPersistStream
  2002.     // interface IPersist
  2003.     // interface IClone
  2004.     // interface IGraphicsComposite
  2005. struct __declspec(uuid("83ffcae2-edca-11d0-8683-0000f8751720"))
  2006. LocatorRectangle;
  2007.     // [ default ] interface IUnknown
  2008.     // interface ILocatorRectangle
  2009.     // interface IFrameProperties
  2010.     // interface IGraphicsComposite
  2011.     // interface IPersistStream
  2012.     // interface IPersist
  2013. struct __declspec(uuid("35f4d526-895d-4f85-b97f-1a3b84c629ad"))
  2014. MgrsGrid;
  2015.     // [ default ] interface IUnknown
  2016.     // interface IMapGrid
  2017.     // interface IMgrsGrid
  2018.     // interface IGridLadderLabels
  2019.     // interface IPersistStream
  2020.     // interface IPersist
  2021.     // interface IClone
  2022.     // interface IGraphicsComposite
  2023. struct __declspec(uuid("fd52b61a-71cd-4108-a916-f818969404ea"))
  2024. CornerGridLabel;
  2025.     // [ default ] interface IUnknown
  2026.     // interface IGridLabel
  2027.     // interface IGridLabel2
  2028.     // interface ICornerGridLabel
  2029.     // interface IPrincipalDigitsGridLabel
  2030.     // interface IGridLabelExport
  2031.     // interface IPersistStream
  2032. enum esriMapDocumentType
  2033. {
  2034.     esriMapDocumentTypeMxd = 0,
  2035.     esriMapDocumentTypePmf = 1,
  2036.     esriMapDocumentTypeLyr = 2,
  2037.     esriMapDocumentTypeUnknown = 3
  2038. };
  2039. enum esriMapDocumentVersionInfo
  2040. {
  2041.     esriMapDocumentVersionInfoSuccess = 0,
  2042.     esriMapDocumentVersionInfoFail = 1,
  2043.     esriMapDocumentVersionInfoUnknown = 2
  2044. };
  2045. struct __declspec(uuid("83bd34e5-ce3b-11d1-876e-0000f8751720"))
  2046. IPageEvents : IUnknown
  2047. {
  2048.     //
  2049.     // Raw methods provided by interface
  2050.     //
  2051.     virtual HRESULT __stdcall PageUnitsChanged ( ) = 0;
  2052.     virtual HRESULT __stdcall PageSizeChanged ( ) = 0;
  2053.     virtual HRESULT __stdcall PageMarginsChanged ( ) = 0;
  2054.     virtual HRESULT __stdcall PageColorChanged ( ) = 0;
  2055. };
  2056. struct __declspec(uuid("56fd87f5-ddce-11d1-8778-0000f8751720"))
  2057. IGraphicSnap : IUnknown
  2058. {
  2059.     //
  2060.     // Raw methods provided by interface
  2061.     //
  2062.     virtual HRESULT __stdcall get_Name (
  2063.         BSTR * Name ) = 0;
  2064.     virtual HRESULT __stdcall SnapX (
  2065.         struct IGeometry * Shape,
  2066.         double Tolerance,
  2067.         VARIANT_BOOL * snapped ) = 0;
  2068.     virtual HRESULT __stdcall SnapY (
  2069.         struct IGeometry * Shape,
  2070.         double Tolerance,
  2071.         VARIANT_BOOL * snapped ) = 0;
  2072. };
  2073. struct __declspec(uuid("fc27faaf-db88-11d1-8778-0000f8751720"))
  2074. IPageLayoutSnap : IGraphicSnap
  2075. {
  2076.     //
  2077.     // Raw methods provided by interface
  2078.     //
  2079.     virtual HRESULT __stdcall put_PageLayout (
  2080.         struct IPageLayout * _arg1 ) = 0;
  2081. };
  2082. struct __declspec(uuid("56fd87f6-ddce-11d1-8778-0000f8751720"))
  2083. IGraphicSnapEnvironment : IUnknown
  2084. {
  2085.     //
  2086.     // Raw methods provided by interface
  2087.     //
  2088.     virtual HRESULT __stdcall SnapShape (
  2089.         struct IGeometry * Shape ) = 0;
  2090.     virtual HRESULT __stdcall get_SnapTolerance (
  2091.         double * tol ) = 0;
  2092.     virtual HRESULT __stdcall put_SnapTolerance (
  2093.         double tol ) = 0;
  2094.     virtual HRESULT __stdcall put_SnapAgentOrder (
  2095.         struct IArray * guids ) = 0;
  2096.     virtual HRESULT __stdcall get_SnapAgentOrder (
  2097.         struct IArray * * guids ) = 0;
  2098.     virtual HRESULT __stdcall get_SnapAgentCount (
  2099.         long * Count ) = 0;
  2100.     virtual HRESULT __stdcall get_SnapAgent (
  2101.         long Index,
  2102.         struct IGraphicSnap * * SnapAgent ) = 0;
  2103.     virtual HRESULT __stdcall ClearSnapAgents ( ) = 0;
  2104.     virtual HRESULT __stdcall AddSnapAgent (
  2105.         struct IGraphicSnap * SnapAgent ) = 0;
  2106.     virtual HRESULT __stdcall DeleteSnapAgent (
  2107.         struct IGraphicSnap * SnapAgent ) = 0;
  2108. };
  2109. struct __declspec(uuid("dbb71b69-db4e-4780-ae6f-39ea7a4a075f"))
  2110. IPageLayout2 : IUnknown
  2111. {
  2112.     //
  2113.     // Raw methods provided by interface
  2114.     //
  2115.     virtual HRESULT __stdcall get_Page (
  2116.         struct IPage * * Page ) = 0;
  2117.     virtual HRESULT __stdcall get_RulerSettings (
  2118.         struct IRulerSettings * * RulerSettings ) = 0;
  2119.     virtual HRESULT __stdcall get_SnapGrid (
  2120.         struct ISnapGrid * * SnapGrid ) = 0;
  2121.     virtual HRESULT __stdcall get_HorizontalSnapGuides (
  2122.         struct ISnapGuides * * SnapGuides ) = 0;
  2123.     virtual HRESULT __stdcall get_VerticalSnapGuides (
  2124.         struct ISnapGuides * * SnapGuides ) = 0;
  2125.     virtual HRESULT __stdcall get_ZoomPercent (
  2126.         double * percent ) = 0;
  2127.     virtual HRESULT __stdcall put_AlignToMargins (
  2128.         VARIANT_BOOL AlignToMargins ) = 0;
  2129.     virtual HRESULT __stdcall get_AlignToMargins (
  2130.         VARIANT_BOOL * AlignToMargins ) = 0;
  2131.     virtual HRESULT __stdcall ZoomToWidth ( ) = 0;
  2132.     virtual HRESULT __stdcall ZoomToWhole ( ) = 0;
  2133.     virtual HRESULT __stdcall ZoomToPercent (
  2134.         long percent ) = 0;
  2135.     virtual HRESULT __stdcall FocusNextMapFrame ( ) = 0;
  2136.     virtual HRESULT __stdcall FocusPreviousMapFrame ( ) = 0;
  2137.     virtual HRESULT __stdcall ReplaceMaps (
  2138.         struct IMaps * maps ) = 0;
  2139.     virtual HRESULT __stdcall putref_ContentProvider (
  2140.         IUnknown * provider ) = 0;
  2141.     virtual HRESULT __stdcall get_ContentProvider (
  2142.         IUnknown * * provider ) = 0;
  2143.     virtual HRESULT __stdcall ClearContent ( ) = 0;
  2144.     virtual HRESULT __stdcall get_Printer (
  2145.         struct IPrinter * * Printer ) = 0;
  2146. };
  2147. struct __declspec(uuid("5366451c-a001-4179-b8cb-e8f014628a44"))
  2148. IMapDocument : IUnknown
  2149. {
  2150.     //
  2151.     // Raw methods provided by interface
  2152.     //
  2153.     virtual HRESULT __stdcall get_IsMapDocument (
  2154.         BSTR sDocument,
  2155.         VARIANT_BOOL * IsMapDocument ) = 0;
  2156.     virtual HRESULT __stdcall get_IsPresent (
  2157.         BSTR sDocument,
  2158.         VARIANT_BOOL * IsPresent ) = 0;
  2159.     virtual HRESULT __stdcall get_IsReadOnly (
  2160.         BSTR sDocument,
  2161.         VARIANT_BOOL * IsReadOnly ) = 0;
  2162.     virtual HRESULT __stdcall get_IsRestricted (
  2163.         BSTR sDocument,
  2164.         VARIANT_BOOL * IsRestricted ) = 0;
  2165.     virtual HRESULT __stdcall get_IsPasswordProtected (
  2166.         BSTR sDocument,
  2167.         VARIANT_BOOL * IsPasswordProtected ) = 0;
  2168.     virtual HRESULT __stdcall New (
  2169.         BSTR sDocument ) = 0;
  2170.     virtual HRESULT __stdcall Open (
  2171.         BSTR sDocument,
  2172.         BSTR bsPassword ) = 0;
  2173.     virtual HRESULT __stdcall get_DocumentFilename (
  2174.         BSTR * sDocument ) = 0;
  2175.     virtual HRESULT __stdcall get_DocumentType (
  2176.         enum esriMapDocumentType * Type ) = 0;
  2177.     virtual HRESULT __stdcall get_UsesRelativePaths (
  2178.         VARIANT_BOOL * bUsesRelativePaths ) = 0;
  2179.     virtual HRESULT __stdcall get_DocumentVersion (
  2180.         enum esriMapDocumentVersionInfo * versionInfo ) = 0;
  2181.     virtual HRESULT __stdcall get_PageLayout (
  2182.         struct IPageLayout * * ppPageLayout ) = 0;
  2183.     virtual HRESULT __stdcall get_ActiveView (
  2184.         struct IActiveView * * ppActiveView ) = 0;
  2185.     virtual HRESULT __stdcall get_MapCount (
  2186.         long * MapCount ) = 0;
  2187.     virtual HRESULT __stdcall get_Map (
  2188.         long mapIndex,
  2189.         struct IMap * * ppMap ) = 0;
  2190.     virtual HRESULT __stdcall get_Layer (
  2191.         long mapIndex,
  2192.         long layerIndex,
  2193.         struct ILayer * * ppLayer ) = 0;
  2194.     virtual HRESULT __stdcall get_Printer (
  2195.         struct IPrinter * * ppPrinter ) = 0;
  2196.     virtual HRESULT __stdcall get_Thumbnail (
  2197.         struct IPicture * * ppPicture ) = 0;
  2198.     virtual HRESULT __stdcall Close ( ) = 0;
  2199.     virtual HRESULT __stdcall GetVersionInfo (
  2200.         VARIANT_BOOL * versionInfoMissing,
  2201.         long * lMajor,
  2202.         long * lMinor,
  2203.         long * lRevision,
  2204.         long * lBuild ) = 0;
  2205.     virtual HRESULT __stdcall ReplaceContents (
  2206.         struct IMxdContents * pObject ) = 0;
  2207.     virtual HRESULT __stdcall SetActiveView (
  2208.         struct IActiveView * pActiveView ) = 0;
  2209.     virtual HRESULT __stdcall Save (
  2210.         VARIANT_BOOL bUseRelativePaths,
  2211.         VARIANT_BOOL bCreateThumnbail ) = 0;
  2212.     virtual HRESULT __stdcall SaveAs (
  2213.         BSTR sDocument,
  2214.         VARIANT_BOOL bUseRelativePaths,
  2215.         VARIANT_BOOL bCreateThumnbail ) = 0;
  2216. };
  2217. struct __declspec(uuid("dd94d76e-836d-11d0-87ec-080009ec732a"))
  2218. PageLayout;
  2219.     // [ default ] interface IUnknown
  2220.     // interface IActiveViewGEN
  2221.     // interface IPageLayout
  2222.     // interface IPageLayout2
  2223.     // interface IActiveView
  2224.     // interface IViewManager
  2225.     // interface IViewRefresh
  2226.     // interface IGraphicsContainer
  2227.     // interface IGraphicsContainerSelect
  2228.     // interface IGraphicSnapEnvironment
  2229.     // interface IConnectionPointContainer
  2230.     // interface IPersistStream
  2231.     // interface IPersist
  2232.     // interface IPageEvents
  2233.     // interface ISelectionEvents
  2234.     // interface ITransformEvents
  2235.     // interface IDisplayAdmin
  2236.     // interface IMxdContents
  2237.     // [ default, source ] interface IActiveViewEvents
  2238. struct __declspec(uuid("dd94d76f-836d-11d0-87ec-080009ec732a"))
  2239. Page;
  2240.     // [ default ] interface IUnknown
  2241.     // interface IPage
  2242.     // interface IFrameProperties
  2243.     // interface IPropertySupport
  2244.     // interface IConnectionPointContainer
  2245.     // interface IPersistStream
  2246.     // interface IPersist
  2247.     // interface IClone
  2248.     // [ default, source ] interface IPageEvents
  2249. struct __declspec(uuid("31e081ac-cb02-11d1-876c-0000f8751720"))
  2250. RulerSettings;
  2251.     // [ default ] interface IUnknown
  2252.     // interface IRulerSettings
  2253.     // interface IPersistStream
  2254.     // interface IPersist
  2255. struct __declspec(uuid("31e081ad-cb02-11d1-876c-0000f8751720"))
  2256. SnapGrid;
  2257.     // [ default ] interface IUnknown
  2258.     // interface ISnapGrid
  2259.     // interface IPersistStream
  2260.     // interface IPersist
  2261. struct __declspec(uuid("31e081ae-cb02-11d1-876c-0000f8751720"))
  2262. SnapGuides;
  2263.     // [ default ] interface IUnknown
  2264.     // interface ISnapGuides
  2265.     // interface IPersistStream
  2266.     // interface IPersist
  2267. struct __declspec(uuid("56fd87f7-ddce-11d1-8778-0000f8751720"))
  2268. GraphicSnapEnvironment;
  2269.     // [ default ] interface IUnknown
  2270.     // interface IGraphicSnapEnvironment
  2271.     // interface IPersistStream
  2272.     // interface IPersist
  2273. struct __declspec(uuid("fc27fab0-db88-11d1-8778-0000f8751720"))
  2274. GridSnap;
  2275.     // [ default ] interface IUnknown
  2276.     // interface IPageLayoutSnap
  2277.     // interface IGraphicSnap
  2278.     // interface IPersist
  2279. struct __declspec(uuid("fc27fab1-db88-11d1-8778-0000f8751720"))
  2280. GuideSnap;
  2281.     // [ default ] interface IUnknown
  2282.     // interface IPageLayoutSnap
  2283.     // interface IGraphicSnap
  2284.     // interface IPersist
  2285. struct __declspec(uuid("fc27fab2-db88-11d1-8778-0000f8751720"))
  2286. MarginSnap;
  2287.     // [ default ] interface IUnknown
  2288.     // interface IPageLayoutSnap
  2289.     // interface IGraphicSnap
  2290.     // interface IPersist
  2291. struct __declspec(uuid("fc27fab3-db88-11d1-8778-0000f8751720"))
  2292. RulerSnap;
  2293.     // [ default ] interface IUnknown
  2294.     // interface IPageLayoutSnap
  2295.     // interface IGraphicSnap
  2296.     // interface IPersist
  2297. struct __declspec(uuid("2fe5e68e-3da5-4bda-baf1-103c55115a1c"))
  2298. MapDocument;
  2299.     // [ default ] interface IUnknown
  2300.     // interface IMapDocument
  2301. enum esriRasterLayerError
  2302. {
  2303.     E_RASTERLAYER_UNKNOWN_ERROR = -2147217152
  2304. };
  2305. struct __declspec(uuid("d02371c7-35f7-11d2-b1f2-00c04f8edeff"))
  2306. IRasterLayer : ILayer
  2307. {
  2308.     //
  2309.     // Raw methods provided by interface
  2310.     //
  2311.     virtual HRESULT __stdcall get_FilePath (
  2312.         BSTR * FilePath ) = 0;
  2313.     virtual HRESULT __stdcall get_Raster (
  2314.         struct IRaster * * Raster ) = 0;
  2315.     virtual HRESULT __stdcall CreateFromRaster (
  2316.         struct IRaster * Raster ) = 0;
  2317.     virtual HRESULT __stdcall CreateFromDataset (
  2318.         struct IRasterDataset * rasterDataset ) = 0;
  2319.     virtual HRESULT __stdcall CreateFromFilePath (
  2320.         BSTR FilePath ) = 0;
  2321.     virtual HRESULT __stdcall get_Renderer (
  2322.         struct IRasterRenderer * * Renderer ) = 0;
  2323.     virtual HRESULT __stdcall putref_Renderer (
  2324.         struct IRasterRenderer * Renderer ) = 0;
  2325.     virtual HRESULT __stdcall get_BandCount (
  2326.         long * BandCount ) = 0;
  2327.     virtual HRESULT __stdcall get_ColumnCount (
  2328.         long * ColumnCount ) = 0;
  2329.     virtual HRESULT __stdcall get_RowCount (
  2330.         long * RowCount ) = 0;
  2331.     virtual HRESULT __stdcall get_PyramidPresent (
  2332.         VARIANT_BOOL * pbPyramidPresent ) = 0;
  2333.     virtual HRESULT __stdcall put_PyramidPresent (
  2334.         VARIANT_BOOL pbPyramidPresent ) = 0;
  2335.     virtual HRESULT __stdcall get_DataFrameExtent (
  2336.         struct IEnvelope * * ppExtent ) = 0;
  2337.     virtual HRESULT __stdcall put_VisibleExtent (
  2338.         struct IEnvelope * ppVisibleExtent ) = 0;
  2339.     virtual HRESULT __stdcall get_VisibleExtent (
  2340.         struct IEnvelope * * ppVisibleExtent ) = 0;
  2341.     virtual HRESULT __stdcall put_PrimaryField (
  2342.         long pnField ) = 0;
  2343.     virtual HRESULT __stdcall get_PrimaryField (
  2344.         long * pnField ) = 0;
  2345.     virtual HRESULT __stdcall put_ShowResolution (
  2346.         VARIANT_BOOL b ) = 0;
  2347.     virtual HRESULT __stdcall get_ShowResolution (
  2348.         VARIANT_BOOL * b ) = 0;
  2349.     virtual HRESULT __stdcall put_DisplayResolutionFactor (
  2350.         long pnFactor ) = 0;
  2351.     virtual HRESULT __stdcall get_DisplayResolutionFactor (
  2352.         long * pnFactor ) = 0;
  2353. };
  2354. struct __declspec(uuid("efd47fdc-de27-11d2-9fce-00c04f799f23"))
  2355. IRasterIdentifyObj : IUnknown
  2356. {
  2357.     //
  2358.     // Raw methods provided by interface
  2359.     //
  2360.     virtual HRESULT __stdcall InsertPropAndValue (
  2361.         BSTR Property,
  2362.         BSTR Value ) = 0;
  2363.     virtual HRESULT __stdcall get_Name (
  2364.         BSTR * bName ) = 0;
  2365.     virtual HRESULT __stdcall put_Name (
  2366.         BSTR bName ) = 0;
  2367.     virtual HRESULT __stdcall get_MapTip (
  2368.         BSTR * bMapTip ) = 0;
  2369.     virtual HRESULT __stdcall put_MapTip (
  2370.         BSTR bMapTip ) = 0;
  2371.     virtual HRESULT __stdcall get_Location (
  2372.         struct IPoint * * pPoint ) = 0;
  2373.     virtual HRESULT __stdcall putref_Location (
  2374.         struct IPoint * pPoint ) = 0;
  2375. };
  2376. struct __declspec(uuid("ff3bac13-e1c4-47ab-807a-4c8233341d11"))
  2377. IRasterIdentifyObj2 : IUnknown
  2378. {
  2379.     //
  2380.     // Raw methods provided by interface
  2381.     //
  2382.     virtual HRESULT __stdcall GetPropAndValues (
  2383.         long Index,
  2384.         BSTR * Property,
  2385.         BSTR * Value ) = 0;
  2386. };
  2387. struct __declspec(uuid("af9930f0-f61e-11d3-8d6c-00c04f5b87b2"))
  2388. IRasterCatalogLayer : ILayer
  2389. {
  2390.     //
  2391.     // Raw methods provided by interface
  2392.     //
  2393.     virtual HRESULT __stdcall Create (
  2394.         struct IRasterCatalogTable * pCatalog ) = 0;
  2395.     virtual HRESULT __stdcall get_CatalogTable (
  2396.         struct IRasterCatalogTable * * pCatalog ) = 0;
  2397.     virtual HRESULT __stdcall put_PrimaryField (
  2398.         long pnField ) = 0;
  2399.     virtual HRESULT __stdcall get_PrimaryField (
  2400.         long * pnField ) = 0;
  2401.     virtual HRESULT __stdcall get_Renderer (
  2402.         struct IRasterRenderer * * Renderer ) = 0;
  2403.     virtual HRESULT __stdcall putref_Renderer (
  2404.         struct IRasterRenderer * Renderer ) = 0;
  2405.     virtual HRESULT __stdcall get_DisplayRasters (
  2406.         long * pNum ) = 0;
  2407.     virtual HRESULT __stdcall put_DisplayRasters (
  2408.         long pNum ) = 0;
  2409.     virtual HRESULT __stdcall get_Symbol (
  2410.         struct ISymbol * * ppSymbol ) = 0;
  2411.     virtual HRESULT __stdcall putref_Symbol (
  2412.         struct ISymbol * ppSymbol ) = 0;
  2413. };
  2414. struct __declspec(uuid("9af99dd0-026b-11d3-9c1f-00c04f5aa6ed"))
  2415. IColorSymbol : IFillSymbol
  2416. {};
  2417. struct __declspec(uuid("1272e1b0-204c-11d3-a3f2-0004ac1b1d86"))
  2418. IColorRampSymbol : IFillSymbol
  2419. {
  2420.     //
  2421.     // Raw methods provided by interface
  2422.     //
  2423.     virtual HRESULT __stdcall get_ColorRamp (
  2424.         struct IColorRamp * * ColorRamp ) = 0;
  2425.     virtual HRESULT __stdcall put_ColorRamp (
  2426.         struct IColorRamp * ColorRamp ) = 0;
  2427.     virtual HRESULT __stdcall put_ColorRampInLegendGroup (
  2428.         struct IColorRamp * _arg1 ) = 0;
  2429.     virtual HRESULT __stdcall get_Invert (
  2430.         VARIANT_BOOL * Invert ) = 0;
  2431.     virtual HRESULT __stdcall put_Invert (
  2432.         VARIANT_BOOL Invert ) = 0;
  2433.     virtual HRESULT __stdcall put_InvertInLegendGroup (
  2434.         VARIANT_BOOL _arg1 ) = 0;
  2435.     virtual HRESULT __stdcall get_LegendClassIndex (
  2436.         long * Index ) = 0;
  2437.     virtual HRESULT __stdcall put_LegendClassIndex (
  2438.         long Index ) = 0;
  2439.     virtual HRESULT __stdcall get_LegendGroup (
  2440.         struct ILegendGroup * * ppLegendGroup ) = 0;
  2441.     virtual HRESULT __stdcall putref_LegendGroup (
  2442.         struct ILegendGroup * ppLegendGroup ) = 0;
  2443. };
  2444. enum esriRasterSelectionMaskFileFormat
  2445. {
  2446.     esriMaskTiffUncompress = 0,
  2447.     esriMaskImagineUncompress = 1
  2448. };
  2449. enum esriRasterSelectionMaskOp
  2450. {
  2451.     esriRasterSelectionMaskSET = 0,
  2452.     esriRasterSelectionMaskCLEAR = 1,
  2453.     esriRasterSelectionMaskINVERT = 2,
  2454.     esriRasterSelectionMaskCOPY = 3,
  2455.     esriRasterSelectionMaskAND = 4
  2456. };
  2457. struct __declspec(uuid("9466d4e6-937d-40c6-8709-56eb94c3c9b5"))
  2458. IRasterSpatialSelection : IUnknown
  2459. {
  2460.     //
  2461.     // Raw methods provided by interface
  2462.     //
  2463.     virtual HRESULT __stdcall Init (
  2464.         VARIANT_BOOL bInit,
  2465.         BSTR FileFullName,
  2466.         enum esriRasterSelectionMaskFileFormat FileFormat ) = 0;
  2467.     virtual HRESULT __stdcall DrawSpatialSelection (
  2468.         struct IDisplay * pDisplay,
  2469.         struct ITrackCancel * pTrackCancel ) = 0;
  2470.     virtual HRESULT __stdcall get_MaskRasterDataset (
  2471.         struct IRasterDataset * * ppRasterDataset ) = 0;
  2472.     virtual HRESULT __stdcall putref_MaskRasterDataset (
  2473.         struct IRasterDataset * ppRasterDataset ) = 0;
  2474.     virtual HRESULT __stdcall MaskWriteBitmap (
  2475.         struct ITrackCancel * trackCancel,
  2476.         struct tagRECT * pRect,
  2477.         enum esriRasterSelectionMaskOp op,
  2478.         VARIANT vBytes,
  2479.         VARIANT_BOOL byBits ) = 0;
  2480.     virtual HRESULT __stdcall MaskReadBitmap (
  2481.         struct ITrackCancel * trackCancel,
  2482.         struct tagRECT * pRect,
  2483.         VARIANT vBytes,
  2484.         VARIANT_BOOL byBits ) = 0;
  2485.     virtual HRESULT __stdcall MaskDrawPolyRect (
  2486.         struct ITrackCancel * trackCancel,
  2487.         VARIANT vRects,
  2488.         enum esriRasterSelectionMaskOp op ) = 0;
  2489. };
  2490. struct __declspec(uuid("bc2e6acb-ee59-4b6d-91ce-4e1743d403b3"))
  2491. IGeoReferenceEvents : IUnknown
  2492. {
  2493.     //
  2494.     // Raw methods provided by interface
  2495.     //
  2496.     virtual HRESULT __stdcall GeoReferenceModified ( ) = 0;
  2497.     virtual HRESULT __stdcall GeoReferenceReset ( ) = 0;
  2498. };
  2499. struct __declspec(uuid("605bc37a-15e9-40a0-90fb-de4cc376838c"))
  2500. IGdbRasterCatalogLayer : IUnknown
  2501. {
  2502.     //
  2503.     // Raw methods provided by interface
  2504.     //
  2505.     virtual HRESULT __stdcall Setup (
  2506.         struct ITable * pTable,
  2507.         VARIANT_BOOL * isSuccessful ) = 0;
  2508.     virtual HRESULT __stdcall put_Renderers (
  2509.         struct IArray * ppRenderers ) = 0;
  2510.     virtual HRESULT __stdcall get_Renderers (
  2511.         struct IArray * * ppRenderers ) = 0;
  2512.     virtual HRESULT __stdcall get_RendererUsage (
  2513.         SAFEARRAY * * pUsage ) = 0;
  2514.     virtual HRESULT __stdcall get_DrawSelectedRasters (
  2515.         VARIANT_BOOL * b ) = 0;
  2516.     virtual HRESULT __stdcall put_DrawSelectedRasters (
  2517.         VARIANT_BOOL b ) = 0;
  2518.     virtual HRESULT __stdcall ChooseRenderer (
  2519.         struct IRaster * pRaster,
  2520.         struct IRasterRenderer * * ppRender ) = 0;
  2521. };
  2522. struct __declspec(uuid("27d0e52f-f170-4743-863a-4419fe70832d"))
  2523. IRasterCatalogDisplayProps : IUnknown
  2524. {
  2525.     //
  2526.     // Raw methods provided by interface
  2527.     //
  2528.     virtual HRESULT __stdcall get_DisplayRasters (
  2529.         long * pNum ) = 0;
  2530.     virtual HRESULT __stdcall put_DisplayRasters (
  2531.         long pNum ) = 0;
  2532.     virtual HRESULT __stdcall get_Symbol (
  2533.         struct ISymbol * * ppSymbol ) = 0;
  2534.     virtual HRESULT __stdcall putref_Symbol (
  2535.         struct ISymbol * ppSymbol ) = 0;
  2536.     virtual HRESULT __stdcall put_UseScale (
  2537.         VARIANT_BOOL b ) = 0;
  2538.     virtual HRESULT __stdcall get_UseScale (
  2539.         VARIANT_BOOL * b ) = 0;
  2540.     virtual HRESULT __stdcall put_TransitionScale (
  2541.         double Scale ) = 0;
  2542.     virtual HRESULT __stdcall get_TransitionScale (
  2543.         double * Scale ) = 0;
  2544.     virtual HRESULT __stdcall get_RedrawDisplay (
  2545.         VARIANT_BOOL * b ) = 0;
  2546.     virtual HRESULT __stdcall put_RedrawDisplay (
  2547.         VARIANT_BOOL b ) = 0;
  2548.     virtual HRESULT __stdcall get_DelayDraw (
  2549.         long * ms ) = 0;
  2550.     virtual HRESULT __stdcall put_DelayDraw (
  2551.         long ms ) = 0;
  2552.     virtual HRESULT __stdcall get_ResamplingType (
  2553.         enum rstResamplingTypes * pResamplingType ) = 0;
  2554.     virtual HRESULT __stdcall put_ResamplingType (
  2555.         enum rstResamplingTypes pResamplingType ) = 0;
  2556.     virtual HRESULT __stdcall put_DrawRastersOnly (
  2557.         VARIANT_BOOL b ) = 0;
  2558.     virtual HRESULT __stdcall get_DrawRastersOnly (
  2559.         VARIANT_BOOL * b ) = 0;
  2560. };
  2561. struct __declspec(uuid("70499f74-2acb-4b69-bd88-1975644bab29"))
  2562. IRasterLayerExport : IUnknown
  2563. {
  2564.     //
  2565.     // Raw methods provided by interface
  2566.     //
  2567.     virtual HRESULT __stdcall putref_RasterLayer (
  2568.         struct IRasterLayer * _arg1 ) = 0;
  2569.     virtual HRESULT __stdcall put_Extent (
  2570.         struct IEnvelope * _arg1 ) = 0;
  2571.     virtual HRESULT __stdcall SetSize (
  2572.         long cx,
  2573.         long cy ) = 0;
  2574.     virtual HRESULT __stdcall put_Force2RGB (
  2575.         VARIANT_BOOL _arg1 ) = 0;
  2576.     virtual HRESULT __stdcall putref_SpatialReference (
  2577.         struct ISpatialReference * _arg1 ) = 0;
  2578.     virtual HRESULT __stdcall Export (
  2579.         struct IWorkspace * pWorkspace,
  2580.         BSTR newname,
  2581.         BSTR Format,
  2582.         struct IRasterDataset * * ppDataset ) = 0;
  2583. };
  2584. struct __declspec(uuid("d02371c9-35f7-11d2-b1f2-00c04f8edeff"))
  2585. RasterLayer;
  2586.     // [ default ] interface IUnknown
  2587.     // interface IRasterLayer
  2588.     // interface IGeoDataset
  2589.     // interface ILegendInfo
  2590.     // interface IPersistStream
  2591.     // interface IIdentify
  2592.     // interface ILayerInfo
  2593.     // interface IDataLayer
  2594.     // interface IDataLayer2
  2595.     // interface ILayerEffects
  2596.     // interface IDisplayAdmin
  2597.     // interface IDisplayAdmin2
  2598.     // interface IGeoReference
  2599.     // interface IDisplayTable
  2600.     // interface ITableSelection
  2601.     // interface IClass
  2602.     // interface ITable
  2603.     // interface IObjectClass
  2604.     // interface ILayerFields
  2605.     // interface ITableFields
  2606.     // interface IDisplayRelationshipClass
  2607.     // interface IRelationshipClassCollection
  2608.     // interface IRelationshipClassCollectionEdit
  2609.     // interface ILayerExtensions
  2610.     // interface ILayerDrawingProperties
  2611.     // interface ILayerGeneralProperties
  2612.     // interface ILayerPosition
  2613.     // interface IAttributeTable
  2614.     // [ default, source ] interface ILayerEvents
  2615.     // interface IConnectionPointContainer
  2616.     // interface IDataset
  2617.     // interface IPublishLayer
  2618.     // interface IRasterSpatialSelection
  2619.     // [ source ] interface IGeoReferenceEvents
  2620.     // interface IRasterDataManagementEvents
  2621.     // interface ITemporaryLayer
  2622. struct __declspec(uuid("1493c960-f620-11d3-8d6c-00c04f5b87b2"))
  2623. RasterCatalogLayer;
  2624.     // [ default ] interface IUnknown
  2625.     // interface ILayer2
  2626.     // interface IRasterCatalogLayer
  2627.     // interface IGeoDataset
  2628.     // interface ILegendInfo
  2629.     // interface IPersistStream
  2630.     // interface IIdentify
  2631.     // interface ILayerInfo
  2632.     // interface IDataLayer
  2633.     // interface IDataLayer2
  2634.     // interface ILayerEffects
  2635.     // interface ILayerExtensions
  2636.     // [ default, source ] interface ILayerEvents
  2637.     // interface IConnectionPointContainer
  2638.     // interface IDisplayAdmin
  2639.     // interface IDisplayAdmin2
  2640.     // interface ILayerDrawingProperties
  2641.     // interface ILayerPosition
  2642.     // interface IPublishLayer
  2643.     // interface IRasterCatalogDisplayProps
  2644. struct __declspec(uuid("297d796d-384e-48f8-a189-e0347281ac7d"))
  2645. GdbRasterCatalogLayer;
  2646.     // [ default ] interface IUnknown
  2647.     // interface IGdbRasterCatalogLayer
  2648.     // interface ILayer
  2649.     // interface IRasterCatalogDisplayProps
  2650.     // interface IGeoDataset
  2651.     // interface ILegendInfo
  2652.     // interface IPersistStream
  2653.     // interface IIdentify
  2654.     // interface IDataLayer
  2655.     // interface ILayerEffects
  2656.     // interface ILayerExtensions
  2657.     // [ default, source ] interface ILayerEvents
  2658.     // interface IDisplayAdmin
  2659.     // interface IDisplayAdmin2
  2660.     // interface IFeatureLayer
  2661.     // interface IGeoFeatureLayer
  2662.     // interface IHotlinkContainer
  2663.     // interface IHotlinkMacro
  2664.     // interface IHyperlinkContainer
  2665.     // interface IIdentify2
  2666.     // interface ILayerGeneralProperties
  2667.     // interface ILayerSymbologyExtents
  2668.     // interface IRelationshipClassCollection
  2669.     // interface IRelationshipClassCollectionEdit
  2670.     // interface ISecureLayer
  2671.     // interface ISymbolLevels
  2672.     // interface IDisplayFilterManager
  2673.     // interface IMapLevel
  2674.     // interface ITableFields
  2675.     // interface IPropertySupport
  2676.     // interface IFeatureLayer2
  2677.     // interface IObjectClassSchemaEvents
  2678.     // interface ILayer2
  2679.     // interface IDataset
  2680.     // interface IClass
  2681.     // interface ITable
  2682.     // interface ITableSelection
  2683.     // interface IDisplayTable
  2684.     // interface IAttributeTable
  2685.     // interface IFeatureSelection
  2686.     // interface IDataLayer2
  2687.     // interface IFeatureLayerDefinition
  2688.     // interface IFeatureLayerDefinition2
  2689.     // interface ITableDefinition
  2690.     // interface ILayerFields
  2691.     // interface IFind
  2692.     // interface IConnectionPointContainer
  2693.     // interface IDisplayRelationshipClass
  2694.     // interface ILayerDrawingProperties
  2695.     // interface ILayerPosition
  2696.     // interface ILayerInfo
  2697.     // interface IRasterDataManagementEvents
  2698. struct __declspec(uuid("b81f9ae0-026e-11d3-9c1f-00c04f5aa6ed"))
  2699. ColorSymbol;
  2700.     // [ default ] interface IUnknown
  2701.     // interface IColorSymbol
  2702.     // interface IMapLevel
  2703.     // interface ISymbol
  2704.     // interface IPersistStream
  2705.     // interface IClone
  2706.     // interface IPropertySupport
  2707. struct __declspec(uuid("40987040-204c-11d3-a3f2-0004ac1b1d86"))
  2708. ColorRampSymbol;
  2709.     // [ default ] interface IUnknown
  2710.     // interface IColorRampSymbol
  2711.     // interface IMapLevel
  2712.     // interface ISymbol
  2713.     // interface IPersistStream
  2714.     // interface IClone
  2715.     // interface IPropertySupport
  2716. struct __declspec(uuid("99dccb66-2e09-11d3-a626-0008c7bf3347"))
  2717. RasterRGBSymbol;
  2718.     // [ default ] interface IUnknown
  2719.     // interface IColorSymbol
  2720.     // interface IMapLevel
  2721.     // interface ISymbol
  2722.     // interface IPersistStream
  2723.     // interface IClone
  2724.     // interface IPropertySupport
  2725. struct __declspec(uuid("5ffad6db-9cc2-45bc-8c88-598edf5e55c4"))
  2726. SimpleRasterIdentifyObj;
  2727.     // [ default ] interface IUnknown
  2728.     // interface IIdentifyObj
  2729.     // interface IRasterIdentifyObj
  2730.     // interface IRasterIdentifyObj2
  2731. struct __declspec(uuid("61704b78-de2b-11d2-9fce-00c04f799f23"))
  2732. RasterIdentifyObj;
  2733.     // [ default ] interface IUnknown
  2734.     // interface IRasterIdentifyObj
  2735.     // interface IRasterIdentifyObj2
  2736.     // interface IIdentifyObj
  2737. struct __declspec(uuid("3dec7f54-1ea3-43af-9bf0-0ea1fad10788"))
  2738. GeoReferenceEvents;
  2739.     // [ default ] interface IUnknown
  2740.     // [ default, source ] interface IGeoReferenceEvents
  2741. struct __declspec(uuid("8dcf4198-4c40-46f3-8c60-9ae25aec032f"))
  2742. RasterLayerExport;
  2743.     // [ default ] interface IUnknown
  2744.     // interface IRasterLayerExport
  2745. struct __declspec(uuid("4d6b1ff0-c144-11d2-9f43-00c04f8ed21a"))
  2746. IRasterFormatInfo : IUnknown
  2747. {
  2748.     //
  2749.     // Raw methods provided by interface
  2750.     //
  2751.     virtual HRESULT __stdcall get_ActiveBrowse (
  2752.         VARIANT_BOOL * pOpt ) = 0;
  2753.     virtual HRESULT __stdcall put_ActiveBrowse (
  2754.         VARIANT_BOOL pOpt ) = 0;
  2755.     virtual HRESULT __stdcall get_FormatName (
  2756.         BSTR * Name ) = 0;
  2757.     virtual HRESULT __stdcall put_FormatName (
  2758.         BSTR Name ) = 0;
  2759.     virtual HRESULT __stdcall get_DefaultExts (
  2760.         BSTR * ext ) = 0;
  2761.     virtual HRESULT __stdcall put_DefaultExts (
  2762.         BSTR ext ) = 0;
  2763. };
  2764. enum esriRasterPyramidOptEnum
  2765. {
  2766.     esriRasterPyramidAlwaysPrompt = 0,
  2767.     esriRasterPyramidAlwaysBuild = 1,
  2768.     esriRasterPyramidNeverBuild = 2
  2769. };
  2770. enum esriRasterRenderingModeEnum
  2771. {
  2772.     esriRasterRenderingBlockMode = 0,
  2773.     esriRasterRenderingTopToBottomMode = 1,
  2774.     esriRasterRenderingFullMode = 2
  2775. };
  2776. struct __declspec(uuid("fb89a39b-c08e-11d2-9f43-00c04f8ed21a"))
  2777. IRasterDefaultsEnv : IUnknown
  2778. {
  2779.     //
  2780.     // Raw methods provided by interface
  2781.     //
  2782.     virtual HRESULT __stdcall get_PyramidCreateOpt (
  2783.         enum esriRasterPyramidOptEnum * opt ) = 0;
  2784.     virtual HRESULT __stdcall put_PyramidCreateOpt (
  2785.         enum esriRasterPyramidOptEnum opt ) = 0;
  2786.     virtual HRESULT __stdcall Query3BandRGB (
  2787.         long * redIndex,
  2788.         long * greenIndex,
  2789.         long * blueIndex ) = 0;
  2790.     virtual HRESULT __stdcall Set3BandRGB (
  2791.         long redIndex,
  2792.         long greenIndex,
  2793.         long blueIndex ) = 0;
  2794.     virtual HRESULT __stdcall Query4BandRGB (
  2795.         long * redIndex,
  2796.         long * greenIndex,
  2797.         long * blueIndex ) = 0;
  2798.     virtual HRESULT __stdcall Set4BandRGB (
  2799.         long redIndex,
  2800.         long greenIndex,
  2801.         long blueIndex ) = 0;
  2802.     virtual HRESULT __stdcall get_UseExtChecking (
  2803.         VARIANT_BOOL * useExts ) = 0;
  2804.     virtual HRESULT __stdcall put_UseExtChecking (
  2805.         VARIANT_BOOL useExts ) = 0;
  2806.     virtual HRESULT __stdcall get_NumFormats (
  2807.         long * pNumFormats ) = 0;
  2808.     virtual HRESULT __stdcall get_Format (
  2809.         long i,
  2810.         struct IRasterFormatInfo * * pRasterFormatInfo ) = 0;
  2811. };
  2812. struct __declspec(uuid("e5191e5e-4d03-45d9-94a4-9e2d8c5c9aed"))
  2813. IRasterDefaultsEnv2 : IRasterDefaultsEnv
  2814. {
  2815.     //
  2816.     // Raw methods provided by interface
  2817.     //
  2818.     virtual HRESULT __stdcall put_RenderingMode (
  2819.         enum esriRasterRenderingModeEnum pRenderingMode ) = 0;
  2820.     virtual HRESULT __stdcall get_RenderingMode (
  2821.         enum esriRasterRenderingModeEnum * pRenderingMode ) = 0;
  2822.     virtual HRESULT __stdcall put_Resampling (
  2823.         enum rstResamplingTypes pDefaultResampling ) = 0;
  2824.     virtual HRESULT __stdcall get_Resampling (
  2825.         enum rstResamplingTypes * pDefaultResampling ) = 0;
  2826.     virtual HRESULT __stdcall put_ProxyFilePath (
  2827.         BSTR pProxyFilePath ) = 0;
  2828.     virtual HRESULT __stdcall get_ProxyFilePath (
  2829.         BSTR * pProxyFilePath ) = 0;
  2830.     virtual HRESULT __stdcall put_MaxTableSize (
  2831.         long pMaxTableSize ) = 0;
  2832.     virtual HRESULT __stdcall get_MaxTableSize (
  2833.         long * pMaxTableSize ) = 0;
  2834.     virtual HRESULT __stdcall UpdateAll ( ) = 0;
  2835. };
  2836. struct __declspec(uuid("bbce4f14-f0da-4cbf-8196-0e380b34ccbb"))
  2837. IRasterDefaultsEnv3 : IRasterDefaultsEnv2
  2838. {
  2839.     //
  2840.     // Raw methods provided by interface
  2841.     //
  2842.     virtual HRESULT __stdcall put_UseAccurateXForm (
  2843.         VARIANT_BOOL bMoreAccurate ) = 0;
  2844.     virtual HRESULT __stdcall get_UseAccurateXForm (
  2845.         VARIANT_BOOL * bMoreAccurate ) = 0;
  2846. };
  2847. struct __declspec(uuid("eb0d0573-c109-11d2-9f43-00c04f8ed21a"))
  2848. RasterDefaultsEnv;
  2849.     // [ default ] interface IUnknown
  2850.     // interface IRasterDefaultsEnv
  2851.     // interface IRasterDefaultsEnv2
  2852.     // interface IRasterDefaultsEnv3
  2853. struct __declspec(uuid("4d6b1fef-c144-11d2-9f43-00c04f8ed21a"))
  2854. RasterFormatInfo;
  2855.     // [ default ] interface IUnknown
  2856.     // interface IRasterFormatInfo
  2857. struct __declspec(uuid("5e7c0920-14a5-11d3-80cf-0080c7597e71"))
  2858. TifPictureElement;
  2859.     // [ default ] interface IUnknown
  2860.     // interface IElement
  2861.     // interface IElementProperties
  2862.     // interface IElementProperties2
  2863.     // interface IFrameElement
  2864.     // interface IFrameDraw
  2865.     // interface IFrameProperties
  2866.     // interface IPictureElement
  2867.     // interface IPictureElement2
  2868.     // interface IGraphicElement
  2869.     // interface IBoundsProperties
  2870.     // interface IOlePictureElement
  2871.     // interface ITransform2D
  2872.     // interface IPropertySupport
  2873.     // interface IPersistStream
  2874.     // interface IClone
  2875. struct __declspec(uuid("06ac0980-1953-11d3-a3ee-0004ac1b1d86"))
  2876. JpgPictureElement;
  2877.     // [ default ] interface IUnknown
  2878.     // interface IElement
  2879.     // interface IElementProperties
  2880.     // interface IElementProperties2
  2881.     // interface IFrameElement
  2882.     // interface IFrameDraw
  2883.     // interface IFrameProperties
  2884.     // interface IPictureElement
  2885.     // interface IPictureElement2
  2886.     // interface IGraphicElement
  2887.     // interface IBoundsProperties
  2888.     // interface IOlePictureElement
  2889.     // interface ITransform2D
  2890.     // interface IPropertySupport
  2891.     // interface IPersistStream
  2892.     // interface IClone
  2893. struct __declspec(uuid("1c0d9b20-1953-11d3-a3ee-0004ac1b1d86"))
  2894. ImgPictureElement;
  2895.     // [ default ] interface IUnknown
  2896.     // interface IElement
  2897.     // interface IElementProperties
  2898.     // interface IElementProperties2
  2899.     // interface IFrameElement
  2900.     // interface IFrameDraw
  2901.     // interface IFrameProperties
  2902.     // interface IPictureElement
  2903.     // interface IPictureElement2
  2904.     // interface IGraphicElement
  2905.     // interface IBoundsProperties
  2906.     // interface IOlePictureElement
  2907.     // interface ITransform2D
  2908.     // interface IPropertySupport
  2909.     // interface IPersistStream
  2910.     // interface IClone
  2911. struct __declspec(uuid("356efc60-1953-11d3-a3ee-0004ac1b1d86"))
  2912. SidPictureElement;
  2913.     // [ default ] interface IUnknown
  2914.     // interface IElement
  2915.     // interface IElementProperties
  2916.     // interface IElementProperties2
  2917.     // interface IFrameElement
  2918.     // interface IFrameDraw
  2919.     // interface IFrameProperties
  2920.     // interface IPictureElement
  2921.     // interface IPictureElement2
  2922.     // interface IGraphicElement
  2923.     // interface IBoundsProperties
  2924.     // interface IOlePictureElement
  2925.     // interface ITransform2D
  2926.     // interface IPropertySupport
  2927.     // interface IPersistStream
  2928.     // interface IClone
  2929. struct __declspec(uuid("4a7c82b0-1953-11d3-a3ee-0004ac1b1d86"))
  2930. GifPictureElement;
  2931.     // [ default ] interface IUnknown
  2932.     // interface IElement
  2933.     // interface IElementProperties
  2934.     // interface IElementProperties2
  2935.     // interface IFrameElement
  2936.     // interface IFrameDraw
  2937.     // interface IFrameProperties
  2938.     // interface IPictureElement
  2939.     // interface IPictureElement2
  2940.     // interface IGraphicElement
  2941.     // interface IBoundsProperties
  2942.     // interface IOlePictureElement
  2943.     // interface ITransform2D
  2944.     // interface IPropertySupport
  2945.     // interface IPersistStream
  2946.     // interface IClone
  2947. struct __declspec(uuid("85cd6330-d45a-11d3-a414-0004ac1b1d86"))
  2948. PngPictureElement;
  2949.     // [ default ] interface IUnknown
  2950.     // interface IElement
  2951.     // interface IElementProperties
  2952.     // interface IElementProperties2
  2953.     // interface IFrameElement
  2954.     // interface IFrameDraw
  2955.     // interface IFrameProperties
  2956.     // interface IPictureElement
  2957.     // interface IPictureElement2
  2958.     // interface IGraphicElement
  2959.     // interface IBoundsProperties
  2960.     // interface IOlePictureElement
  2961.     // interface ITransform2D
  2962.     // interface IPropertySupport
  2963.     // interface IPersistStream
  2964.     // interface IClone
  2965. struct __declspec(uuid("d9609d73-afea-4739-8f29-f5993823f4cf"))
  2966. IMapDescriptor : IDispatch
  2967. {
  2968.     //
  2969.     // Raw methods provided by interface
  2970.     //
  2971.     virtual HRESULT __stdcall get_Name (
  2972.         BSTR * Name ) = 0;
  2973.     virtual HRESULT __stdcall put_Name (
  2974.         BSTR Name ) = 0;
  2975.     virtual HRESULT __stdcall get_FullExtent (
  2976.         struct IEnvelope * * Extent ) = 0;
  2977.     virtual HRESULT __stdcall put_FullExtent (
  2978.         struct IEnvelope * Extent ) = 0;
  2979.     virtual HRESULT __stdcall get_Extent (
  2980.         struct IEnvelope * * Extent ) = 0;
  2981.     virtual HRESULT __stdcall put_Extent (
  2982.         struct IEnvelope * Extent ) = 0;
  2983.     virtual HRESULT __stdcall get_SpatialReference (
  2984.         struct ISpatialReference * * SpatialReference ) = 0;
  2985.     virtual HRESULT __stdcall putref_SpatialReference (
  2986.         struct ISpatialReference * SpatialReference ) = 0;
  2987.     virtual HRESULT __stdcall get_Angle (
  2988.         double * angleDegrees ) = 0;
  2989.     virtual HRESULT __stdcall put_Angle (
  2990.         double angleDegrees ) = 0;
  2991.     virtual HRESULT __stdcall get_Layers (
  2992.         struct IArray * * LayerDescriptors ) = 0;
  2993.     virtual HRESULT __stdcall put_Layers (
  2994.         struct IArray * LayerDescriptors ) = 0;
  2995.     virtual HRESULT __stdcall get_LayerOrder (
  2996.         VARIANT * layerIds ) = 0;
  2997.     virtual HRESULT __stdcall put_LayerOrder (
  2998.         VARIANT layerIds ) = 0;
  2999.     virtual HRESULT __stdcall get_CustomGraphics (
  3000.         struct IArray * * Elements ) = 0;
  3001.     virtual HRESULT __stdcall put_CustomGraphics (
  3002.         struct IArray * Elements ) = 0;
  3003.     virtual HRESULT __stdcall get_LabelBarriers (
  3004.         struct IGeometryCollection * * Barriers ) = 0;
  3005.     virtual HRESULT __stdcall put_LabelBarriers (
  3006.         struct IGeometryCollection * Barriers ) = 0;
  3007.     virtual HRESULT __stdcall get_MapScale (
  3008.         double * MapScale ) = 0;
  3009.     virtual HRESULT __stdcall put_MapScale (
  3010.         double MapScale ) = 0;
  3011.     virtual HRESULT __stdcall get_MapCenter (
  3012.         struct IPoint * * Center ) = 0;
  3013.     virtual HRESULT __stdcall put_MapCenter (
  3014.         struct IPoint * Center ) = 0;
  3015.     virtual HRESULT __stdcall get_KeepAspectRatio (
  3016.         VARIANT_BOOL * keep ) = 0;
  3017.     virtual HRESULT __stdcall put_KeepAspectRatio (
  3018.         VARIANT_BOOL keep ) = 0;
  3019.     virtual HRESULT __stdcall get_BackgroundColor (
  3020.         struct IColor * * Color ) = 0;
  3021.     virtual HRESULT __stdcall put_BackgroundColor (
  3022.         struct IColor * Color ) = 0;
  3023.     virtual HRESULT __stdcall get_TransparentColor (