00001 // EncXCOM.idl : IDL source for EncXCOM 00002 // 00003 00004 // This file will be processed by the MIDL tool to 00005 // produce the type library (EncXCOM.tlb) and marshalling code. 00006 00011 // 2 (need to put this here s.t. CHAGU will work using its validation features) 00012 00013 import "oaidl.idl"; 00014 import "ocidl.idl"; 00015 00017 // enums 00019 00020 #if !defined(UDE) 00022 enum DongleState 00023 { 00024 [helpstring("Dongle not found")] DS_NotFound, 00025 [helpstring("Dongle found")] DS_Exists, 00026 [helpstring("Dongle active")] DS_Active, 00027 }; 00028 #endif 00029 00031 00034 enum PaletteType 00035 { 00036 [helpstring("Daytime palette for bright conditions")] PalDayBright, 00037 [helpstring("Normal daytime palette")] PalDay, 00038 [helpstring("Daytime palette with a black background")] PalDayBlack, 00039 [helpstring("Palette for dawn and dusk")] PalDusk, 00040 [helpstring("Palette for night viewing")] PalNight, 00041 [helpstring("Palette for night viewing through a neutral filter")] PalNightUnfiltered, 00042 [helpstring("Number of palete values")] PalCount, 00043 [helpstring("Unknown palette")] PalUnknown, 00044 }; 00045 00047 00051 enum GeoLineType 00052 { 00053 [helpstring("Great circle on the WGS84 ellipsoid")] GL_GreatCircle, 00054 [helpstring("Rhumb lines on the WGS84 ellipsoid")] GL_Rhumb, 00055 }; 00056 00058 enum S57Product 00059 { 00060 [helpstring("Unknown product")] PD_Unknown = 0, 00061 [helpstring("Electronic Navigational Chart (ENC)")] PD_ENC = 1, 00062 [helpstring("Inland Electronic Navigational Chart (ENC)")] PD_IENC = 10, 00063 [helpstring("CherSoft World Vector Shoreline (WVS)")] PD_WVS = 25, 00064 }; 00065 00067 enum S57DepthDisplayUnits 00068 { 00069 [helpstring("Metres and decimetres")] DDU_Metres = 0, 00070 [helpstring("Feet")] DDU_Feet = 1, 00071 }; 00072 00074 enum S57FeatureGeometry 00075 { 00076 [helpstring("No geometry, typically a collection of other types of feature")] FG_None, 00077 [helpstring("A single geographical position")] FG_Point, 00078 [helpstring("A line (of potentially any shape) between two geopgraphical positions")] FG_Line, 00079 [helpstring("An enclosed geographical area")] FG_Area, 00080 [helpstring("A collection of geographical positions and depths")] FG_Sounding, 00081 [helpstring("Unknown geometry")] FG_Unknown, 00082 }; 00083 00085 00086 enum S57CallBackDrawAction 00087 { 00088 [helpstring("Don't draw S-57 layer")] CB_NoS57Layer, 00089 [helpstring("Before S-57 layer draw")] CB_BeforeS57Layer, 00090 [helpstring("After S-57 layer draw")] CB_AfterS57Layer, 00091 [helpstring("Both before and after S-57 layer draw")] CB_BeforeAndAfterS57Layer, 00092 }; 00093 00094 enum HTMLAction 00095 { 00096 [helpstring("Do nothing")] SHA_DoNothing, 00097 [helpstring("Might be a Url")] SHA_MightBeUrl, 00098 [helpstring("Go home")] SHA_GoHome, 00099 [helpstring("Go back")] SHA_GoBack, 00100 [helpstring("Go forward")] SHA_GoForward, 00101 [helpstring("Update pages")] SHA_UpdatePages, 00102 [helpstring("Update pages and reload current page")] SHA_UpdatePagesAndReloadCurrentPage, 00103 [helpstring("Update pages and go home")] SHA_UpdatePagesAndGoHome, 00104 }; 00105 00106 enum S57DisplayImprovements 00107 { 00108 [helpstring("No non-standard decluttering")] S57DisplayImprovements_Nothing, 00109 [helpstring("Max ENC display improvements")] S57DisplayImprovements_Max, 00110 [helpstring("ENC display improvements as of Q1 2012")] S57DisplayImprovements_Level1, 00111 }; 00112 00114 // General interfaces 00116 00117 #if !defined(UDE) 00119 00120 [ 00121 object, 00122 uuid(df820553-6fdf-4232-863b-b92ff1575b90), 00123 dual, 00124 helpstring("IDongle Interface"), 00125 nonextensible, 00126 pointer_default(unique), 00127 hidden 00128 ] 00129 interface IDongle : IDispatch 00130 { 00132 [propget, id(1), helpstring("Dongle State")] HRESULT State([out, retval] enum DongleState * pVal); 00134 [propget, id(2), helpstring("property DeviceName")] HRESULT DeviceName([out, retval] BSTR* pVal); 00136 [id(3), helpstring("Encrypt a block of memory (>7 bytes long)")] HRESULT Encrypt([in] BYTE* pData, [in] LONG nSize); 00138 [id(4), helpstring("Decrypt a block of memory (>7 bytes long)")] HRESULT Decrypt([in] BYTE* pData, [in] LONG nSize); 00140 [id(5), helpstring("Encrypt a safearray")] HRESULT EncryptArray([in,out] VARIANT* data); 00142 [id(6), helpstring("Decrypt a safearray")] HRESULT DecryptArray([in,out] VARIANT* data); 00144 [propget, id(7), helpstring("Serial number of the dongle")] HRESULT SerialNumber([out, retval] LONG* pVal); 00145 }; 00146 00148 [ 00149 object, 00150 uuid(de705fba-a90f-4292-8951-ccd23e8eb556), 00151 dual, 00152 nonextensible, 00153 helpstring("IDongleObserver Interface"), 00154 pointer_default(unique), 00155 hidden 00156 ] 00157 interface IDongleObserver : IDispatch 00158 { 00160 [id(1), helpstring("method Register")] HRESULT Register(IDongle * dongle); 00162 [id(2), helpstring("method Unregister")] HRESULT Unregister(void); 00163 }; 00164 #endif 00165 00167 [ 00168 object, 00169 uuid(d23d39f3-e07d-4f61-89b0-0508195b3fe0), 00170 dual, 00171 nonextensible, 00172 helpstring("ILibrary Interface"), 00173 pointer_default(unique), 00174 hidden 00175 ] 00176 interface ILibrary : IDispatch 00177 { 00179 00186 [id(1), helpstring("Initialize the %ENCX library")] HRESULT Construct([in] BSTR OEMKey, [in] BSTR DFSFileName); 00187 00189 [propget, id(2), helpstring("Is the OEM key valid?")] HRESULT ValidOEMKey([out, retval] VARIANT_BOOL* pVal); 00190 00191 #if !defined(UDE) 00193 [propget, id(3), helpstring("Get the Dongle")] HRESULT Dongle([out, retval] IDongle** pVal); 00194 #endif 00195 00197 00198 [id(4), helpstring("Call while the application is idle and while DoIdle() keeps returning true")] HRESULT DoIdle([out,retval] VARIANT_BOOL* bRes); 00199 00200 #if !defined(UDE) 00202 [propget, id(5), helpstring("Get DFS licensing ID string")] HRESULT DFSInstallationId([out, retval] BSTR* pVal); 00203 00205 00208 [propget, id(6), helpstring("The full pathname of the DFS filename")] HRESULT DFSFileName([out, retval] BSTR* pVal); 00209 00211 [propget, id(7), helpstring("Is the DFS file valid?")] HRESULT ValidDFSFile([out, retval] VARIANT_BOOL* pVal); 00212 #endif 00213 00215 [propget, id(9), helpstring("The version of the library")] HRESULT Version([out, retval] BSTR* pVal); 00216 }; 00217 00219 [ 00220 object, 00221 uuid(8baae4dd-6114-41d4-b6ed-24b72752a2cc), 00222 dual, 00223 helpstring("IDisplayPalette Interface"), 00224 nonextensible, 00225 pointer_default(unique), 00226 hidden 00227 ] 00228 interface IDisplayPalette : IDispatch 00229 { 00231 [propget, id(1), helpstring("property Type")] HRESULT PalType([out, retval] enum PaletteType* pVal); 00233 [propput, id(1), helpstring("property Type")] HRESULT PalType([in] enum PaletteType newVal); 00235 [propget, id(2), helpstring("The density of colour")] HRESULT Saturation([out, retval] DOUBLE* pVal); 00237 [propput, id(2), helpstring("The density of colour")] HRESULT Saturation([in] DOUBLE newVal); 00239 [propget, id(3), helpstring("property Luminance")] HRESULT Luminance([out, retval] DOUBLE* pVal); 00241 [propput, id(3), helpstring("property Luminance")] HRESULT Luminance([in] DOUBLE newVal); 00242 }; 00243 00245 00251 [ 00252 object, 00253 uuid(b5f1a477-4297-4a3e-8683-20e4c7035837), 00254 dual, 00255 helpstring("IGeoPoint Interface"), 00256 nonextensible, 00257 pointer_default(unique), 00258 hidden, 00259 ] 00260 interface IGeoPoint : IDispatch 00261 { 00263 [propget, id(1), helpstring("Latitude")] HRESULT Lat([out, retval] DOUBLE* pVal); 00265 [propput, id(1), helpstring("Latitude")] HRESULT Lat([in] DOUBLE newVal); 00267 [propget, id(2), helpstring("Longitude")] HRESULT Lon([out, retval] DOUBLE* pVal); 00269 [propput, id(2), helpstring("Longitude")] HRESULT Lon([in] DOUBLE newVal); 00270 }; 00271 00272 00274 [ 00275 object, 00276 uuid(b9ba6f20-5d6a-4bf8-9478-d16c8acbd697), 00277 dual, 00278 helpstring("IGeoPoints Interface"), 00279 nonextensible, 00280 pointer_default(unique), 00281 hidden 00282 ] 00283 interface IGeoPoints : IDispatch 00284 { 00285 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IGeoPoint ** geoPoint); 00286 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00287 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00288 [id(2), helpstring("method Add")] HRESULT Add([in] IGeoPoint * geoPoint); 00289 [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex); 00290 [id(4), helpstring("method Clear")] HRESULT Clear(); 00291 [id(5), helpstring("method AddLatLon")] HRESULT AddLatLon([in] DOUBLE Lat, [in] DOUBLE Lon); 00292 }; 00293 00295 00296 [ 00297 object, 00298 uuid(65dc21cb-a8af-41c5-a718-60aea5bba09b), 00299 dual, 00300 helpstring("IGeoArea Interface"), 00301 nonextensible, 00302 pointer_default(unique), 00303 hidden 00304 ] 00305 interface IGeoArea : IDispatch 00306 { 00308 [propget, id(1), helpstring("property Points")] HRESULT Points([out, retval] IGeoPoints ** pVal); 00310 [propput, id(1), helpstring("property Points")] HRESULT Points([in] IGeoPoints * geoPoints); 00312 [propget, id(2), helpstring("property LineType")] HRESULT LineType([out, retval] enum GeoLineType* pVal); 00314 [propput, id(2), helpstring("property LineType")] HRESULT LineType([in] enum GeoLineType val); 00315 }; 00316 00317 00319 [ 00320 object, 00321 uuid(45f32198-3200-48a2-815c-04364a018445), 00322 dual, 00323 helpstring("IGeoHorizontalDatumInfo Interface"), 00324 nonextensible, 00325 pointer_default(unique), 00326 hidden 00327 ] 00328 interface IGeoHorizontalDatumInfo : IDispatch 00329 { 00331 [propget, id(1), helpstring("Three character code, e.g. WGE for WGS84, plus optional one-character sub area")] HRESULT Code([out, retval] BSTR* pVal); 00333 [propget, id(2), helpstring("Abbreviated description, e.g. WGS84 or OSGB1936")] HRESULT ShortDescription([out, retval] BSTR* pVal); 00335 [propget, id(3), helpstring("Full description, e.g. World Geodetic System 1984")] HRESULT LongDescription([out, retval] BSTR* pVal); 00336 }; 00337 00339 00340 [ 00341 object, 00342 uuid(ea253cbf-eb43-46d9-8350-c2df3d811340), 00343 dual, 00344 helpstring("IGeoRect Interface"), 00345 nonextensible, 00346 pointer_default(unique), 00347 hidden 00348 ] 00349 interface IGeoRect : IDispatch 00350 { 00351 [propget, id(1), helpstring("property LatN")] HRESULT LatN([out, retval] DOUBLE* pVal); //<! The northern most edge of the area. Degrees, positive going north, zero on the equator. 00352 [propput, id(1), helpstring("property LatN")] HRESULT LatN([in] DOUBLE newVal); //<! The northern most edge of the area. Degrees, positive going north, zero on the equator. 00353 [propget, id(2), helpstring("property LatS")] HRESULT LatS([out, retval] DOUBLE* pVal); //<! The southern most edge of the area. Degrees, positive going north, zero on the equator. 00354 [propput, id(2), helpstring("property LatS")] HRESULT LatS([in] DOUBLE newVal); //<! The southern most edge of the area. Degrees, positive going north, zero on the equator. 00355 [propget, id(3), helpstring("property LonE")] HRESULT LonE([out, retval] DOUBLE* pVal); //<! The eastern most edge of the area. Degrees, positive going east, zero on the Greenwich Meridian. 00356 [propput, id(3), helpstring("property LonE")] HRESULT LonE([in] DOUBLE newVal); //<! The eastern most edge of the area. Degrees, positive going east, zero on the Greenwich Meridian. 00357 [propget, id(4), helpstring("property LonW")] HRESULT LonW([out, retval] DOUBLE* pVal); //<! The western most edge of the area. Degrees, positive going east, zero on the Greenwich Meridian. 00358 [propput, id(4), helpstring("property LonW")] HRESULT LonW([in] DOUBLE newVal); //<! The western most edge of the area. Degrees, positive going east, zero on the Greenwich Meridian. 00359 }; 00360 00362 00363 [ 00364 object, 00365 uuid(58272d3a-5671-4b22-90a6-f9dcda1384aa), 00366 dual, 00367 helpstring("IGeoLine Interface"), 00368 nonextensible, 00369 pointer_default(unique), 00370 hidden 00371 ] 00372 interface IGeoLine : IDispatch 00373 { 00375 [propget, id(1), helpstring("One end of the line")] HRESULT Point1([out, retval] IGeoPoint ** pVal); 00377 [propput, id(1), helpstring("One end of the line")] HRESULT Point1([in] IGeoPoint * newVal); 00379 [propget, id(2), helpstring("The other end of the line")] HRESULT Point2([out, retval] IGeoPoint ** pVal); 00381 [propput, id(2), helpstring("The other end of the line")] HRESULT Point2([in] IGeoPoint * newVal); 00383 [propget, id(3), helpstring("The shape of the path to be used between the ends")] HRESULT LineType([out, retval] enum GeoLineType* pVal); 00385 [propput, id(3), helpstring("The shape of the path to be used between the ends")] HRESULT LineType([in] enum GeoLineType newVal); 00387 [id(4), helpstring("Setting the position of one end of the line")] HRESULT SetPoint1([in] DOUBLE LatGeodeticDegrees, [in] DOUBLE LonDegrees); 00389 [id(5), helpstring("The other end of the line")] HRESULT SetPoint2([in] DOUBLE LatGeodeticDegrees, [in] DOUBLE LonDegrees); 00391 [propget, id(6), helpstring("Length in metres of the line")] HRESULT LengthInMetres([out, retval] DOUBLE* pVal); 00392 00393 // Additions after 1.8.0.37... 00394 00396 [id(7), helpstring("Create line from start point, bearing and length")] HRESULT CreateFromBearingAndLength([in] enum GeoLineType lineType, [in] IGeoPoint* start, [in] DOUBLE bearing, [in] DOUBLE lengthInMeters); 00398 [propget, id(8), helpstring("Bearing in degrees at start of line")] HRESULT BearingStart([out, retval] DOUBLE* startBearing); 00400 [propget, id(9), helpstring("Bearing in degrees at end of line")] HRESULT BearingEnd([out, retval] DOUBLE* endBearing); 00401 }; 00402 00404 [ 00405 object, 00406 uuid(bf54eec6-5898-4878-ba9c-646c5fd81be6), 00407 dual, 00408 helpstring("IPixelPoint Interface"), 00409 nonextensible, 00410 pointer_default(unique), 00411 hidden 00412 ] 00413 interface IPixelPoint : IDispatch 00414 { 00416 [propget, id(1), helpstring("property X")] HRESULT X([out, retval] FLOAT* pVal); 00418 [propput, id(1), helpstring("property X")] HRESULT X([in] FLOAT val); 00420 [propget, id(2), helpstring("property Y")] HRESULT Y([out, retval] FLOAT* pVal); 00422 [propput, id(2), helpstring("property Y")] HRESULT Y([in] FLOAT val); 00423 }; 00424 00426 [ 00427 object, 00428 uuid(0f84c004-7b3c-4ec2-8889-7542d2ff414b), 00429 dual, 00430 helpstring("IPixelSize Interface"), 00431 nonextensible, 00432 pointer_default(unique), 00433 hidden 00434 ] 00435 interface IPixelSize : IDispatch 00436 { 00438 [propget, id(1), helpstring("property Width")] HRESULT Width([out, retval] LONG* pVal); 00440 [propput, id(1), helpstring("property Width")] HRESULT Width([in] LONG val); 00442 [propget, id(2), helpstring("property Height")] HRESULT Height([out, retval] LONG* pVal); 00444 [propput, id(2), helpstring("property Height")] HRESULT Height([in] LONG val); 00445 }; 00446 00448 [ 00449 object, 00450 uuid(9f2ee17c-e050-46a6-9fee-2fc2eb0a0675), 00451 dual, 00452 helpstring("IPixelRect Interface"), 00453 nonextensible, 00454 pointer_default(unique), 00455 hidden 00456 ] 00457 interface IPixelRect : IDispatch 00458 { 00460 [propget, id(1), helpstring("property Left")] HRESULT Left([out, retval] LONG* pVal); 00462 [propput, id(1), helpstring("property Left")] HRESULT Left([in] LONG val); 00464 [propget, id(2), helpstring("property Top")] HRESULT Top([out, retval] LONG* pVal); 00466 [propput, id(2), helpstring("property Top")] HRESULT Top([in] LONG val); 00468 [propget, id(3), helpstring("property Width")] HRESULT Width([out, retval] LONG* pVal); 00470 [propput, id(3), helpstring("property Width")] HRESULT Width([in] LONG val); 00472 [propget, id(4), helpstring("property Height")] HRESULT Height([out, retval] LONG* pVal); 00474 [propput, id(4), helpstring("property Height")] HRESULT Height([in] LONG val); 00475 }; 00476 00477 00479 00480 [ 00481 object, 00482 uuid(f099d8e2-f8ba-4d32-8dbc-aa4411c62036), 00483 dual, 00484 helpstring("IPixelPoints Interface"), 00485 nonextensible, 00486 pointer_default(unique), 00487 hidden 00488 ] 00489 interface IPixelPoints : IDispatch 00490 { 00491 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IPixelPoint ** pp); 00492 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00493 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00494 }; 00495 00496 00497 00499 [ 00500 object, 00501 uuid(1d57851f-5229-45a0-b387-3c3bb54266b2), 00502 dual, 00503 helpstring("IPolyLines Interface"), 00504 nonextensible, 00505 pointer_default(unique), 00506 hidden 00507 ] 00508 interface IPolyLines : IDispatch 00509 { 00510 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IPixelPoints ** pixelPts); 00511 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00512 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00513 }; 00514 00516 [ 00517 object, 00518 uuid(469a0018-bbea-42ca-a6a9-13c1b0d44e07), 00519 dual, 00520 helpstring("IPolyAreas Interface"), 00521 nonextensible, 00522 pointer_default(unique), 00523 hidden 00524 ] 00525 interface IPolyAreas : IDispatch 00526 { 00527 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IPixelPoints ** pixelPts); 00528 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00529 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00530 }; 00531 00532 00533 00535 00544 [ 00545 object, 00546 uuid(2102877e-6c95-45a5-a26a-0ba27bddde95), 00547 dual, 00548 helpstring("IGeoPix Interface"), 00549 nonextensible, 00550 pointer_default(unique), 00551 hidden 00552 ] 00553 interface IGeoPix : IDispatch 00554 { 00556 00565 [id(1), helpstring("Obtain a geographical position from a pixel point")] HRESULT GeoPointFromPixelPoint([in] IPixelPoint * pixelPt, [out, retval] IGeoPoint ** geoPt); 00567 [propget, id(2), helpstring("The geographical bounding rectangle for the viewport of this IGeoPix")] HRESULT Extent([out, retval] IGeoRect ** pVal); 00569 [id(3), helpstring("The geographical bounding rectangle for rectangle defined in pixel coordinates clipped to the viewport")] HRESULT ExtentFromRect([in] IPixelRect * rect, [out, retval] IGeoRect ** pVal); 00571 00573 [propget, id(4), helpstring("The scale to show to the user")] HRESULT DisplayScale([out, retval] LONG* pVal); 00575 00581 [propget, id(5), helpstring("Degrees. Like a compass bearing")] HRESULT DirectionOfUp([out, retval] DOUBLE* Degrees); 00583 00585 [propget, id(6), helpstring("Draw symbols smaller (for Overviews)")] HRESULT UseSmallSymbology([out, retval] VARIANT_BOOL* pVal); 00587 00592 [id(7), helpstring("Geographic to Pixel point conversion")] HRESULT Point([in] IGeoPoint * geoPt, [out, retval] IPixelPoint ** pixelPt); 00594 00601 [id(8), helpstring("Geographic to Pixel point conversion (extended)")] HRESULT PointEx([in] IGeoPoint * geoPt, [in] DOUBLE brgGeo, [out] DOUBLE* brgPixel, [out] DOUBLE * distOnePixel, [out, retval] IPixelPoint ** pixelPt); 00603 00606 [id(9), helpstring("Geographic to Pixel line conversion")] HRESULT Line([in] IGeoLine * geoLine, [out,retval] IPolyLines ** lines); 00608 00612 [id(10), helpstring("Geographic to Pixel area conversion")] HRESULT Area([in] IGeoArea * geoArea, [out,retval] IPolyAreas ** areas); 00614 00620 [id(11), helpstring("The visible portion of this GeoPix")] HRESULT ClipRegionDevicePoints([in] IPixelRect * rect, [in] OLE_HANDLE lHDC, [out,retval] OLE_HANDLE * lhRgn); 00622 00628 [id(12), helpstring("The visible portion of this GeoPix")] HRESULT ClipRegionLogicalPoints([in] IPixelRect * rect, [out,retval] OLE_HANDLE * lhRgn); 00630 00631 [propget, id(13), helpstring("Returns true iff the last IGeoPix::Point or IGeoPix::PointEx conversion was inside the view")] HRESULT PointInView([out, retval] VARIANT_BOOL * pVal); 00632 }; 00633 00634 00636 [ 00637 object, 00638 uuid(32071cd5-e029-4900-9b32-1cb57ffb8219), 00639 dual, 00640 helpstring("IGeoPixCollection Interface"), 00641 nonextensible, 00642 pointer_default(unique), 00643 hidden 00644 ] 00645 interface IGeoPixCollection : IDispatch 00646 { 00647 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IGeoPix ** gp); 00648 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00649 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00650 }; 00651 00652 00654 00655 [ 00656 object, 00657 uuid(6a966063-1075-4c60-918d-800d066e6354), 00658 dual, 00659 helpstring("IHorizontalDatum Interface"), 00660 nonextensible, 00661 pointer_default(unique), 00662 hidden 00663 ] 00664 interface IHorizontalDatum : IDispatch 00665 { 00667 [propget, id(1), helpstring("The accuracy of the transformation. Units are metres")] HRESULT ErrorDistanceMetres([out, retval] DOUBLE* Metres); 00669 00678 [propget, id(2), helpstring("property HasLocalDatum")] HRESULT HasLocalDatum([out, retval] VARIANT_BOOL* pVal); 00680 [propget, id(3), helpstring("Local datum short name")] HRESULT LocalDatumShortName([out, retval] BSTR* pVal); 00682 [propget, id(4), helpstring("Local datum long name")] HRESULT LocalDatumLongName([out, retval] BSTR* pVal); 00684 00686 [id(5), helpstring("method LocalToWGS84")] HRESULT LocalToWGS84([out] DOUBLE* LatWGS84, [out] DOUBLE* LonWGS84, [in] DOUBLE LatLocal, [in] DOUBLE LonLocal, [out,retval] VARIANT_BOOL* bRes); 00688 00690 [id(6), helpstring("method WGS84ToLocal")] HRESULT WGS84ToLocal([out] DOUBLE* LatLocal, [out] DOUBLE* LonLocal, [in] DOUBLE LatWGS84, [in] DOUBLE LonWGS84, [out,retval] VARIANT_BOOL* bRes); 00691 }; 00692 00693 #if !defined(UDE_ENC_ONLY) 00695 // RAS interfaces 00697 00699 [ 00700 object, 00701 uuid(e87cd362-bb3c-4f9a-85cf-3183e3bd1504), 00702 dual, 00703 helpstring("IRasCharts Interface"), 00704 nonextensible, 00705 pointer_default(unique), 00706 hidden 00707 ] 00708 interface IRasCharts : IDispatch 00709 { 00710 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] BSTR * bsChart); 00711 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00712 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00713 }; 00714 00715 00717 [ 00718 object, 00719 uuid(e8001348-0f4a-459e-a971-1bb29fe26921), 00720 dual, 00721 helpstring("IRasDiscIdentity Interface"), 00722 nonextensible, 00723 pointer_default(unique), 00724 hidden 00725 ] 00726 interface IRasDiscIdentity : IDispatch 00727 { 00729 [propget, id(1), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pVal); 00731 [propget, id(2), helpstring("The date the CD was released")] HRESULT IssueDate([out, retval] DATE* pVal); 00732 }; 00733 00735 00736 [ 00737 object, 00738 uuid(b5c82a6a-ac97-4d6d-ade7-900197fc600b), 00739 dual, 00740 helpstring("IRasNoticeToMarinersNumber Interface"), 00741 nonextensible, 00742 pointer_default(unique), 00743 hidden 00744 ] 00745 interface IRasNoticeToMarinersNumber : IDispatch 00746 { 00748 [propget, id(1), helpstring("property Year")] HRESULT Year([out, retval] LONG* pVal); 00750 [propget, id(2), helpstring("property Number")] HRESULT Number([out, retval] LONG* pVal); 00752 [id(3), helpstring("method ToString")] HRESULT ToString([retval][out] BSTR* pVal); 00753 }; 00754 00756 [ 00757 object, 00758 uuid(7aa4d35a-9d59-447b-a90e-6500f0086665), 00759 dual, 00760 helpstring("IRasNoticeToMariners Interface"), 00761 nonextensible, 00762 pointer_default(unique), 00763 hidden 00764 ] 00765 interface IRasNoticeToMariners : IDispatch 00766 { 00768 [propget, id(1), helpstring("property Number")] HRESULT Number([out, retval] IRasNoticeToMarinersNumber ** pVal); 00770 [propget, id(2), helpstring("property Text")] HRESULT Text([out, retval] BSTR* pVal); 00771 }; 00772 00773 00775 [ 00776 object, 00777 uuid(14726a88-6d3d-439f-8323-60fa7057608f), 00778 dual, 00779 helpstring("IRasNoticesToMariners Interface"), 00780 nonextensible, 00781 pointer_default(unique), 00782 hidden 00783 ] 00784 interface IRasNoticesToMariners : IDispatch 00785 { 00786 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasNoticeToMariners ** notice); 00787 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00788 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00789 }; 00790 00792 [ 00793 object, 00794 uuid(4ad2b972-e5a0-4181-a577-6d0d0934a40c), 00795 dual, 00796 helpstring("IRasPanelIdentifier Interface"), 00797 nonextensible, 00798 pointer_default(unique), 00799 hidden 00800 ] 00801 interface IRasPanelIdentifier : IDispatch 00802 { 00803 }; 00804 00805 00807 [ 00808 object, 00809 uuid(052a681e-0efa-4040-adb2-ffbfbb14e581), 00810 dual, 00811 helpstring("IRasPanelIdentifiers Interface"), 00812 nonextensible, 00813 pointer_default(unique), 00814 hidden 00815 ] 00816 interface IRasPanelIdentifiers : IDispatch 00817 { 00818 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasPanelIdentifier ** panelid); 00819 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00820 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00821 }; 00822 00823 00825 [ 00826 object, 00827 uuid(1fa6fe9f-dbc1-4c8d-9f15-d303db0cf85c), 00828 dual, 00829 helpstring("IRasChartPanelIdentifier Interface"), 00830 nonextensible, 00831 pointer_default(unique), 00832 hidden 00833 ] 00834 interface IRasChartPanelIdentifier : IDispatch 00835 { 00837 [propget, id(1), helpstring("property ChartIdentifier")] HRESULT ChartIdentifier([out, retval] BSTR* pVal); 00839 [propget, id(2), helpstring("property Panel")] HRESULT Panel([out, retval] IRasPanelIdentifier ** pVal); 00841 [id(3), helpstring("method Construct")] HRESULT Construct([in] BSTR chartNumber, [in] IRasPanelIdentifier * panelID); 00842 }; 00843 00845 [ 00846 object, 00847 uuid(5bb566ae-6f8c-46ff-85be-54bc05b03174), 00848 dual, 00849 helpstring("IRasChartPanelIdentifiers Interface"), 00850 nonextensible, 00851 pointer_default(unique), 00852 hidden 00853 ] 00854 interface IRasChartPanelIdentifiers : IDispatch 00855 { 00856 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasChartPanelIdentifier** ChartPanelId); 00857 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 00858 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 00859 }; 00860 00861 00862 00864 00867 [ 00868 object, 00869 uuid(f9efd125-65df-4b83-869f-e57e107acc84), 00870 dual, 00871 helpstring("IRasPanelInfo Interface"), 00872 nonextensible, 00873 pointer_default(unique), 00874 hidden 00875 ] 00876 interface IRasPanelInfo : IDispatch 00877 { 00879 [propget, id(1), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pVal); 00881 [propget, id(2), helpstring("property HeightDatum")] HRESULT HeightDatum([out, retval] BSTR* pVal); 00883 [propget, id(3), helpstring("property HeightUnits")] HRESULT HeightUnits([out, retval] BSTR* pVal); 00885 [propget, id(4), helpstring("property DepthDatum")] HRESULT DepthDatum([out, retval] BSTR* pVal); 00887 [propget, id(5), helpstring("property DepthUnits")] HRESULT DepthUnits([out, retval] BSTR* pVal); 00889 [propget, id(6), helpstring("property ProjectionName")] HRESULT ProjectionName([out, retval] BSTR* pVal); 00891 [propget, id(7), helpstring("property Scale")] HRESULT Scale([out, retval] LONG* pVal); 00893 [propget, id(8), helpstring("property HorizontalDatumInfo")] HRESULT HorizontalDatumInfo([out, retval] IGeoHorizontalDatumInfo ** pVal); 00895 [propget, id(9), helpstring("property GeoArea")] HRESULT GeoArea([out, retval] IGeoArea ** pVal); 00897 00900 [propget, id(10), helpstring("property PanelNumber")] HRESULT PanelNumber([out, retval] LONG* pVal); 00902 00905 [propget, id(11), helpstring("property SubPanelNumber")] HRESULT SubPanelNumber([out, retval] LONG* pVal); 00907 [propget, id(12), helpstring("property PixelPoints")] HRESULT PixelPoints([out, retval] IPixelPoints ** pVal); 00909 00910 [propget, id(13), helpstring("property ManualWGS84ShiftCanBeModified")] HRESULT ManualWGS84ShiftCanBeModified([out, retval] VARIANT_BOOL* pVal); 00912 [propget, id(14), helpstring("property ManualWGS84Shift")] HRESULT ManualWGS84Shift([out, retval] IGeoPoint ** pVal); 00914 00915 [propget, id(15), helpstring("property ManualWGS84ShiftIsSet")] HRESULT ManualWGS84ShiftIsSet([out, retval] VARIANT_BOOL * pVal); 00917 [id(16), helpstring("method PointInPanel")] HRESULT PointInPanel([in] DOUBLE dLatGeodeticDegrees, [in] DOUBLE dLonDegrees, [out,retval] VARIANT_BOOL* bRes); 00918 }; 00919 00920 00922 00923 [ 00924 object, 00925 uuid(597fa725-5aa1-447a-93d3-fff76c919536), 00926 dual, 00927 helpstring("IRasChartInfo Interface"), 00928 nonextensible, 00929 pointer_default(unique), 00930 hidden 00931 ] 00932 interface IRasChartInfo : IDispatch 00933 { 00935 00937 [propget, id(1), helpstring("property IsComplete")] HRESULT IsComplete([out, retval] VARIANT_BOOL* pVal); 00939 [propget, id(2), helpstring("property RequiresLicence")] HRESULT RequiresLicence([out, retval] VARIANT_BOOL* pVal); 00941 00943 [propget, id(3), helpstring("property IsWithdrawn")] HRESULT IsWithdrawn([out, retval] VARIANT_BOOL* pVal); 00945 [propget, id(4), helpstring("property NativeFormatLongDescription")] HRESULT NativeFormatLongDescription([out, retval] BSTR* pVal); 00947 [propget, id(5), helpstring("property NativeFormatShortDescription")] HRESULT NativeFormatShortDescription([out, retval] BSTR* pVal); 00949 [propget, id(6), helpstring("property Number")] HRESULT Number([out, retval] BSTR* pVal); 00951 [propget, id(7), helpstring("property InternationalNumber")] HRESULT InternationalNumber([out, retval] BSTR* pVal); 00953 [propget, id(8), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pVal); 00955 [propget, id(9), helpstring("property CountryOfOrigin")] HRESULT CountryOfOrigin([out, retval] BSTR* pVal); 00957 [propget, id(10), helpstring("property Producer1")] HRESULT Producer1([out, retval] BSTR* pVal); 00959 [propget, id(11), helpstring("property Producer2")] HRESULT Producer2([out, retval] BSTR* pVal); 00960 [propget, id(12), helpstring("property RasterChartIssueDate")] HRESULT RasterChartIssueDate([out, retval] DATE* pVal); 00962 00963 [propget, id(13), helpstring("property EditionDate")] HRESULT EditionDate([out, retval] DATE* pVal); 00965 [propget, id(14), helpstring("property LastChanged")] HRESULT LastChanged([out, retval] DATE* pVal); 00967 [propget, id(15), helpstring("property LatestCorrectionDate")] HRESULT LatestCorrectionDate([out, retval] DATE* pVal); 00969 [propget, id(16), helpstring("property InstallationCD")] HRESULT InstallationCD([out, retval] IRasDiscIdentity ** pVal); 00971 00972 [propget, id(17), helpstring("property MissingReInstallationCD")] HRESULT MissingReInstallationCD([out, retval] IRasDiscIdentity ** pVal); 00974 00975 [propget, id(18), helpstring("property MissingUpdateCD")] HRESULT MissingUpdateCD([out, retval] IRasDiscIdentity ** pVal); 00977 00978 [propget, id(19), helpstring("property LatestNoticeToMarinersNumber")] HRESULT LatestNoticeToMarinersNumber([out, retval] IRasNoticeToMarinersNumber ** pVal); 00980 [propget, id(20), helpstring("property NoticesToMariners")] HRESULT NoticesToMariners([out, retval] IRasNoticesToMariners ** pVal); 00982 [propget, id(21), helpstring("property PanelIdentifiers")] HRESULT PanelIdentifiers([out, retval] IRasPanelIdentifiers ** pVal); 00984 00985 [propget, id(22), helpstring("property PanelInfo")] HRESULT PanelInfo([in] IRasPanelIdentifier * panelId, [out, retval] IRasPanelInfo ** pVal); 00986 }; 00987 00988 00990 [ 00991 object, 00992 uuid(3da71511-579a-4903-85b0-cd1aae8a321e), 00993 dual, 00994 helpstring("IRasManager Interface"), 00995 nonextensible, 00996 pointer_default(unique), 00997 hidden 00998 ] 00999 interface IRasManager : IDispatch 01000 { 01002 [id(2), helpstring("method OpenRasFolder")] HRESULT OpenRasFolder([in] ILibrary * piLibrary, [in] BSTR sPath); 01004 [id(3), helpstring("method CloseRasFolder")] HRESULT CloseRasFolder(void); 01006 [propget, id(4), helpstring("property Charts")] HRESULT Charts([out, retval] IRasCharts ** pVal); 01008 [id(5), helpstring("method ChartInfo")] HRESULT ChartInfo([in] BSTR ChartIdentifier, [out, retval] IRasChartInfo ** pVal); 01010 [id(6), helpstring("method PanelInfo")] HRESULT PanelInfo([in] IRasChartPanelIdentifier * PanelID, [out, retval] IRasPanelInfo ** pVal); 01011 [propget, id(7), helpstring("property NoticesToMarinersLatestUpdate")] HRESULT NoticesToMarinersLatestUpdate([out, retval] DATE* pVal); 01012 [propget, id(8), helpstring("property GeneralNoticesToMariners")] HRESULT GeneralNoticesToMariners([out, retval] IRasNoticesToMariners ** pVal); 01013 [id(9), helpstring("method PanelsInGeoRect")] HRESULT PanelsInGeoRect([in] IGeoRect * geoRect, [in] LONG ScaleMin, [in] LONG ScaleMax, [out, retval] IRasChartPanelIdentifiers ** pVal); 01014 [id(10), helpstring("method PanelsAtPoint")] HRESULT PanelsAtPoint([in] DOUBLE dLatGeodeticDegrees, [in] DOUBLE dLonDegrees, [in] LONG ScaleMin, [in] LONG ScaleMax, [out, retval] IRasChartPanelIdentifiers ** pVal); 01016 01017 [id(11), helpstring("method SetManualWGS84Shift")] HRESULT SetManualWGS84Shift([in] IRasChartPanelIdentifier * PanelId, [in] IGeoPoint * geoPoint, VARIANT_BOOL isSet); 01018 01019 #if !defined(UDE) 01021 [id(12), helpstring("method DisplayPinDialog")] HRESULT DisplayPinDialog([in] BSTR chartNumber, [out, retval] VARIANT_BOOL * bRes); 01022 #endif 01023 01025 [id(13), helpstring("Invoke the CherSoft Windows application that installs and updates ARCS charts in the folder")] HRESULT RunInstallApplicationARCS([in] BSTR pathToInstallationApp); 01027 [id(14), helpstring("Invoke the CherSoft Windows application that installs and updates BSB charts in the folder")] HRESULT RunInstallApplicationBSB([in] BSTR pathToInstallationApp); 01028 01030 [id(15), helpstring("method IsValidRasFolder")] HRESULT IsValidRasFolder([in] BSTR sPath, [out, retval] VARIANT_BOOL * bRes); 01032 [id(16), helpstring("method CreateRasFolder")] HRESULT CreateRasFolder([in] BSTR sPath); 01033 }; 01034 01035 01037 01038 [ 01039 object, 01040 uuid(9f8ae04e-065d-4c5a-97ef-7568e33c7a67), 01041 dual, 01042 helpstring("IRasCatalogueObserver Interface"), 01043 nonextensible, 01044 pointer_default(unique), 01045 hidden 01046 ] 01047 interface IRasCatalogueObserver : IDispatch 01048 { 01050 [id(1), helpstring("method Register")] HRESULT Register([in] IRasManager * rasManager); 01052 [id(2), helpstring("method Unregister")] HRESULT Unregister(void); 01053 }; 01054 01055 01057 01059 [ 01060 object, 01061 uuid(b10d83cd-80c0-4083-8005-0aafceee096e), 01062 dual, 01063 helpstring("IRasPanelNote Interface"), 01064 nonextensible, 01065 pointer_default(unique), 01066 hidden 01067 ] 01068 interface IRasPanelNote : IDispatch 01069 { 01071 [propget, id(1), helpstring("The bounding box of the note on the chart. Pixel position (0,0) is always at the top left corner of the chart")] HRESULT Rect([out, retval] IPixelRect ** rect); 01073 01075 [propget, id(3), helpstring("Fine catIdentification of the note")] HRESULT Code([out, retval] BSTR* pVal); 01077 [propget, id(4), helpstring("Coarse categorisation of the note")] HRESULT Type([out, retval] BSTR* pVal); 01079 [propget, id(5), helpstring("Returns true if the note overlaps any hydrography")] HRESULT Obscures([out, retval] VARIANT_BOOL* pVal); 01081 01083 [propget, id(6), helpstring("Returns true if the note should be displayed to the user")] HRESULT Display([out, retval] VARIANT_BOOL* pVal); 01084 }; 01085 01087 [ 01088 object, 01089 uuid(5088adb2-3d07-44a4-87d6-513be52838d0), 01090 dual, 01091 helpstring("IRasPanelNotes Interface"), 01092 nonextensible, 01093 pointer_default(unique), 01094 hidden 01095 ] 01096 interface IRasPanelNotes : IDispatch 01097 { 01098 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasPanelNote ** panelNote); 01099 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 01100 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 01101 }; 01102 01103 01105 01109 [ 01110 object, 01111 uuid(a56d3b55-14bf-4f54-bef7-3de4e0d63a35), 01112 dual, 01113 helpstring("IRasDraw Interface"), 01114 nonextensible, 01115 pointer_default(unique), 01116 hidden 01117 ] 01118 interface IRasDraw : IDispatch 01119 { 01121 [id(1), helpstring("Use a specific chart")] HRESULT OpenChart([in] IRasManager * rasmanager, [in] BSTR ChartIdentifier); 01123 [propget, id(2), helpstring("The chart's number")] HRESULT ChartIdentifier([out, retval] BSTR* pVal); 01125 01127 [propget, id(3), helpstring("When true, the chart will be drawn at a much reduced size (typically 1/6th of normal size)")] HRESULT DisplayFullSize([out, retval] VARIANT_BOOL* pVal); 01129 01131 [propput, id(3), helpstring("When true, the chart will be drawn at a much reduced size (typically 1/6th of normal size)")] HRESULT DisplayFullSize([in] VARIANT_BOOL newVal); 01133 01136 [propget, id(4), helpstring("True iff there are currently corrections on the chart")] HRESULT HasUpdates([out, retval] VARIANT_BOOL* pVal); 01138 01139 [propget, id(5), helpstring("Draw the chart using the available updates. On by default")] HRESULT DisplayUpdates([out, retval] VARIANT_BOOL* pVal); 01141 01142 [propput, id(5), helpstring("Draw the chart using the available updates. On by default")] HRESULT DisplayUpdates([in] VARIANT_BOOL newVal); 01144 01145 [propget, id(6), helpstring("Highlight the updated areas on the chart. Off by default")] HRESULT IndicateUpdates([out, retval] VARIANT_BOOL* pVal); 01147 01148 [propput, id(6), helpstring("Highlight the updated areas on the chart. Off by default")] HRESULT IndicateUpdates([in] VARIANT_BOOL newVal); 01150 [propget, id(7), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([out, retval] IDisplayPalette ** pVal); 01152 [propput, id(7), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([in] IDisplayPalette * newVal); 01154 [propget, id(8), helpstring("This message should be displayed on top of the chart at all times")] HRESULT PermanentMessage([out, retval] BSTR* pVal); 01156 [propget, id(9), helpstring("This message should be brought to the operator's attention when the chart is opened")] HRESULT WarningMessage([out, retval] BSTR* pVal); 01158 [propget, id(10), helpstring("This message should be brought to the operator's attention when the chart is opened")] HRESULT UpdateMessage([out, retval] BSTR* pVal); 01160 [propget, id(12), helpstring("Snapshot of all the geopixes that are inside Rect()")] HRESULT VisibleGeoPix([out, retval] IGeoPixCollection ** pVal); 01162 01163 [propget, id(13), helpstring("Returns the nominal size of a pixel")] HRESULT PixelSizeMetres([out, retval] DOUBLE* sz); 01165 [propget, id(14), helpstring("Return the size of the whole chart in pixels, allowing for it being either fullsize or overview")] HRESULT ChartSize([out, retval] IPixelSize** sz); 01167 01168 [id(15), helpstring("Obtain the identity of the panel at a specified pixel position")] HRESULT PanelAtPoint([in] IPixelPoint * ipPixelPt, [out,retval] IRasPanelIdentifier ** rpid); 01170 01171 [id(16), helpstring("Obtain the GeoPix at a specified pixel position")] HRESULT GeoPix([in] IPixelPoint * ipPixelPt, [out,retval] IGeoPix ** geoPix); 01173 01174 [id(17), helpstring("Obtain the HorizontalDatum at a specified pixel position")] HRESULT HorizontalDatum([in] IPixelPoint * ipPixelPt, [out,retval] IHorizontalDatum ** hd); 01176 01177 [id(18), helpstring("Draw the Rect() portion of the chart to the specified device context")] HRESULT Draw([in] OLE_HANDLE hDC); 01179 [id(19), helpstring("Obtain a collection of notes associated with the specified panel")] HRESULT PanelNotes([in] IRasPanelIdentifier * panelId, [out, retval] IRasPanelNotes ** pVal); 01180 01182 01183 [id(20), helpstring("Get a copy of the area of the chart to be drawn. Pixel position (0,0) is always at the top left corner of the chart")] HRESULT GetRect([out, retval] IPixelRect** rect); 01185 01186 [id(21), helpstring("Set the area of the chart to be drawn. Pixel position (0,0) is always at the top left corner of the chart")] HRESULT SetRect([in] IPixelRect * rect); 01188 01189 [id(22), helpstring("Set the view rectangle to display the geographical position specified on the panel specified.")] 01190 HRESULT OpenAtPositionOnPanel([in] IRasManager * rasManager, [in] IRasChartPanelIdentifier * chartAndPanel, [in] IGeoPoint * geoPt); 01191 }; 01192 01193 #endif 01195 // S57 interfaces 01197 01199 01476 [ 01477 object, 01478 uuid(fdd5bab8-54b4-4b1f-8588-861eb0784a06), 01479 dual, 01480 helpstring("IS57Attribute Interface"), 01481 nonextensible, 01482 pointer_default(unique), 01483 hidden 01484 ] 01485 interface IS57Attribute : IDispatch 01486 { 01488 [propget, id(1), hidden, helpstring("property Product")] HRESULT Product([out, retval] enum S57Product* pVal); 01490 [propget, id(2), helpstring("property Acronym")] HRESULT Acronym([out, retval] BSTR* pVal); 01492 [propget, id(3), helpstring("property Name")] HRESULT Name([out, retval] BSTR* pVal); 01494 [id(4), helpstring("Whether this Attribute is used by the specified product")] HRESULT IsInProduct([in] enum S57Product product, [out, retval] VARIANT_BOOL * result); 01495 }; 01496 01497 01499 01500 [ 01501 object, 01502 uuid(ee498d18-89cb-4613-a368-7c4879895b85), 01503 dual, 01504 helpstring("IS57AttributeValue Interface"), 01505 nonextensible, 01506 pointer_default(unique), 01507 hidden 01508 ] 01509 interface IS57AttributeValue : IDispatch 01510 { 01512 [propget, id(1), helpstring("property Attribute")] HRESULT Attribute([out, retval] IS57Attribute ** pVal); 01514 [propget, id(2), helpstring("property Value")] HRESULT Value([out, retval] BSTR* pVal); 01515 }; 01516 01517 01519 [ 01520 object, 01521 uuid(92aa99a7-3494-4b05-b97c-20f75e2067bd), 01522 dual, 01523 helpstring("IS57AttributeValues Interface"), 01524 nonextensible, 01525 pointer_default(unique), 01526 hidden 01527 ] 01528 interface IS57AttributeValues : IDispatch 01529 { 01530 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57AttributeValue ** attrValue); 01531 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 01532 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 01533 }; 01534 01535 01537 [ 01538 object, 01539 uuid(fea35b7c-a937-4882-9dcc-792caa2b70e6), 01540 dual, 01541 helpstring("IS57CellIdentifier Interface"), 01542 nonextensible, 01543 pointer_default(unique), 01544 hidden 01545 ] 01546 interface IS57CellIdentifier : IDispatch 01547 { 01549 01550 [propget, id(1), helpstring("property CellName")] HRESULT CellName([out, retval] BSTR* pVal); 01552 [propget, id(2), helpstring("property Product")] HRESULT Product([out, retval] enum S57Product* pVal); 01554 [id(3), helpstring("method Construct")] HRESULT Construct([in] enum S57Product product, [in] BSTR cellName); 01555 }; 01556 01558 [ 01559 object, 01560 uuid(ea68d82a-89b1-4530-a701-e0f3e0173aa4), 01561 dual, 01562 helpstring("IS57CellIdentifiers Interface"), 01563 nonextensible, 01564 pointer_default(unique), 01565 hidden 01566 ] 01567 interface IS57CellIdentifiers : IDispatch 01568 { 01569 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57CellIdentifier** cellId); 01570 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 01571 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 01572 [id(2), helpstring("method Add")] HRESULT Add([in] IS57CellIdentifier * cellId); 01573 [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex); 01574 [id(4), helpstring("method Clear")] HRESULT Clear(); 01575 }; 01576 01578 01654 [ 01655 object, 01656 uuid(786306a3-57dd-44f4-8681-aedc11ba6d34), 01657 dual, 01658 helpstring("IS57Colour Interface"), 01659 nonextensible, 01660 pointer_default(unique), 01661 hidden 01662 ] 01663 interface IS57Colour : IDispatch 01664 { 01665 [propget, id(1), helpstring("property Name")] HRESULT Name([out, retval] BSTR* pVal); 01666 [propput, id(1), helpstring("property Name")] HRESULT Name([in] BSTR val); 01668 [id(2), helpstring("Construct")] HRESULT Construct([in] BSTR name); 01669 }; 01670 01671 01673 [ 01674 object, 01675 uuid(673eee69-9a42-426b-b0a9-b32a4e07c0ec), 01676 dual, 01677 helpstring("IS57ColourValue Interface"), 01678 nonextensible, 01679 pointer_default(unique), 01680 hidden 01681 ] 01682 interface IS57ColourValue : IDispatch 01683 { 01685 [id(1), helpstring("Construct")] HRESULT Construct([in] IS57Colour * pColour, DWORD rgbDay, DWORD rgbTwilight, DWORD rgbNight); 01687 [propget, id(2), helpstring("property Colour")] HRESULT Colour([out, retval] IS57Colour ** pVal); 01689 [propput, id(2), helpstring("property Colour")] HRESULT Colour([in] IS57Colour * pVal); 01691 [propget, id(3), helpstring("property RGB for daylight viewing")] HRESULT DayRGB([out, retval] COLORREF* rgb); 01693 [propput, id(3), helpstring("property RGB for daylight viewing")] HRESULT DayRGB([in] COLORREF rgb); 01695 [propget, id(4), helpstring("property RGB for twilight viewing")] HRESULT TwilightRGB([out, retval] COLORREF* rgb); 01697 [propput, id(4), helpstring("property RGB for twilight viewing")] HRESULT TwilightRGB([in] COLORREF rgb); 01699 [propget, id(5), helpstring("property RGB for nighttime viewing")] HRESULT NightRGB([out, retval] COLORREF* rgb); 01701 [propput, id(5), helpstring("property RGB for nighttime viewing")] HRESULT NightRGB([in] COLORREF rgb); 01702 }; 01703 01704 01706 [ 01707 object, 01708 uuid(45e2afed-7751-415a-8ae5-aa1c55b5bbd8), 01709 dual, 01710 helpstring("IS57ColourValues Interface"), 01711 nonextensible, 01712 pointer_default(unique), 01713 hidden 01714 ] 01715 interface IS57ColourValues : IDispatch 01716 { 01717 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57ColourValue ** colourValue); 01718 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 01719 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 01720 [id(2), helpstring("method Add")] HRESULT Add([in] IS57ColourValue * colourValue); 01721 [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex); 01722 [id(4), helpstring("method Clear")] HRESULT Clear(); 01723 }; 01724 01725 01727 [ 01728 object, 01729 uuid(9a60cafa-9c8b-4c38-bbce-de1f8d766697), 01730 dual, 01731 helpstring("IS57ProductAndUsage Interface"), 01732 nonextensible, 01733 pointer_default(unique), 01734 hidden 01735 ] 01736 interface IS57ProductAndUsage : IDispatch 01737 { 01739 [propget, id(1), helpstring("S-57 Product")] HRESULT Product([out, retval] enum S57Product* pVal); 01741 [propput, id(1), helpstring("S-57 Product")] HRESULT Product([in] enum S57Product newVal); 01743 01754 [propget, id(2), helpstring("Intended usage (For ENC, navigational purpose 1 .. 6)")] HRESULT IntendedUsage([out, retval] BYTE* pVal); 01756 01767 [propput, id(2), helpstring("Intended usage (For ENC, navigational purpose 1 .. 6)")] HRESULT IntendedUsage([in] BYTE newVal); 01768 }; 01769 01771 [ 01772 object, 01773 uuid(1d199063-539c-4fc7-ad45-7790a9dc570e), 01774 dual, 01775 helpstring("IS57ProductAndUsages Interface"), 01776 nonextensible, 01777 pointer_default(unique), 01778 hidden 01779 ] 01780 interface IS57ProductAndUsages : IDispatch 01781 { 01782 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57ProductAndUsage** ProductAndUsage); 01783 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 01784 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 01785 [id(2), helpstring("method Add")] HRESULT Add([in] IS57ProductAndUsage * ProductAndUsage); 01786 [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex); 01787 [id(4), helpstring("method Clear")] HRESULT Clear(); 01788 }; 01789 01791 01792 [ 01793 object, 01794 uuid(14659089-ca04-4ee5-b28b-4339038631c4), 01795 dual, 01796 helpstring("IS57CellInfo Interface"), 01797 nonextensible, 01798 pointer_default(unique), 01799 hidden 01800 ] 01801 interface IS57CellInfo : IDispatch 01802 { 01804 [propget, id(1), helpstring("property CellIdentifier")] HRESULT CellIdentifier([out, retval] IS57CellIdentifier** pVal); 01806 [propget, id(2), helpstring("property IntendedUsage")] HRESULT IntendedUsage([out, retval] LONG* pVal); 01808 [propget, id(3), helpstring("property CompilationScale")] HRESULT CompilationScale([out, retval] LONG* pVal); 01810 [propget, id(4), helpstring("Description of the S-57 data producer")] HRESULT Agency([out, retval] BSTR* pVal); 01812 [propget, id(5), helpstring("property Country")] HRESULT Country([out, retval] BSTR* pVal); 01814 [propget, id(6), helpstring("property VerticalDatum")] HRESULT VerticalDatum([out, retval] BSTR* pVal); 01816 [propget, id(7), helpstring("property SoundingDatum")] HRESULT SoundingDatum([out, retval] BSTR* pVal); 01818 [propget, id(8), helpstring("property Extent")] HRESULT Extent([out, retval] IGeoRect ** pVal); 01820 [propget, id(9), helpstring("property IssueDate")] HRESULT IssueDate([out, retval] DATE* pVal); 01822 [propget, id(11), helpstring("property LastChanged")] HRESULT LastChanged([out, retval] DATE* pVal); 01824 01825 [propget, id(12), helpstring("property Edition")] HRESULT Edition([out, retval] LONG* pVal); 01827 [propget, id(13), helpstring("property LatestUpdate")] HRESULT LatestUpdate([out, retval] LONG* pVal); 01829 [propget, id(14), helpstring("property PermitExpiryDate")] HRESULT PermitExpiryDate([out, retval] DATE* pVal); 01831 [propget, id(15), helpstring("property PermitIsSubscription")] HRESULT PermitIsSubscription([out, retval] VARIANT_BOOL* pVal); 01833 01835 [propget, id(16), helpstring("property LeastDetailedDisplayScaleToShow_All")] HRESULT LeastDetailedDisplayScaleToShow_All([out, retval] LONG* pVal); 01837 01839 [propget, id(17), helpstring("property LeastDetailedDisplayScaleToShow_GroupOne")] HRESULT LeastDetailedDisplayScaleToShow_GroupOne([out, retval] LONG* pVal); 01841 01844 [propget, id(18), helpstring("property LeastDetailedDisplayScaleToShow_Coverage")] HRESULT LeastDetailedDisplayScaleToShow_Coverage([out, retval] LONG* pVal); 01846 [propget, id(19), helpstring("Empty for most ENC suppliers, useful text from NOAA")] HRESULT LongFileName([out, retval] BSTR* pVal); 01847 }; 01848 01850 [ 01851 object, 01852 uuid(1508064c-782b-460c-8567-370ec1978e29), 01853 dual, 01854 helpstring("IS57DepthPoint Interface"), 01855 nonextensible, 01856 pointer_default(unique), 01857 hidden 01858 ] 01859 interface IS57DepthPoint : IDispatch 01860 { 01862 [propget, id(1), helpstring("Geographical position of sounding")] HRESULT GeoPoint([out, retval] IGeoPoint ** pVal); 01864 [propget, id(2), helpstring("Depth of sounding in metres")] HRESULT Depth([out, retval] DOUBLE* pVal); 01865 }; 01866 01867 01869 [ 01870 object, 01871 uuid(5b69d130-7dcb-46fe-aa58-9f83b03f44ec), 01872 dual, 01873 helpstring("IS57DepthPoints Interface"), 01874 nonextensible, 01875 pointer_default(unique), 01876 hidden 01877 ] 01878 interface IS57DepthPoints : IDispatch 01879 { 01880 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57DepthPoint ** depthPoint); 01881 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 01882 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 01883 }; 01884 01885 01887 [ 01888 object, 01889 uuid(9a7fd378-3b40-4165-a4e2-41b8207920d0), 01890 dual, 01891 helpstring("IS57Face Interface"), 01892 nonextensible, 01893 pointer_default(unique), 01894 hidden 01895 ] 01896 interface IS57Face : IDispatch 01897 { 01899 [propget, id(1), helpstring("property Points")] HRESULT Points([out, retval] IGeoPoints ** pVal); 01900 }; 01901 01902 01904 [ 01905 object, 01906 uuid(77d198f8-7e01-45e9-9ab9-62d586b68933), 01907 dual, 01908 helpstring("IS57Faces Interface"), 01909 nonextensible, 01910 pointer_default(unique), 01911 hidden 01912 ] 01913 interface IS57Faces : IDispatch 01914 { 01915 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57Face ** face); 01916 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 01917 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 01918 }; 01919 01921 02145 [ 02146 object, 02147 uuid(11cc52bf-4e4a-4aa3-b7cc-c77b07aeb932), 02148 dual, 02149 helpstring("IS57ObjectClass Interface"), 02150 nonextensible, 02151 pointer_default(unique), 02152 hidden 02153 ] 02154 interface IS57ObjectClass : IDispatch 02155 { 02157 [propget, id(1), hidden, helpstring("Product")] HRESULT Product([out, retval] enum S57Product* pVal); 02159 [propget, id(2), helpstring("Acronym")] HRESULT Acronym([out, retval] BSTR* pVal); 02161 [propget, id(3), helpstring("Description")] HRESULT Description([out, retval] BSTR* pVal); 02163 [id(4), helpstring("Construct")] HRESULT Construct([in] BSTR acronym); 02165 [id(5), helpstring("Whether this Object Class is used by the specified product")] HRESULT IsInProduct([in] enum S57Product product, [out, retval] VARIANT_BOOL * result); 02166 }; 02167 02169 [ 02170 object, 02171 uuid(8469ae77-1f14-4028-a7f7-1372f5513113), 02172 dual, 02173 helpstring("IS57ObjectClassCollection Interface"), 02174 nonextensible, 02175 pointer_default(unique), 02176 hidden 02177 ] 02178 interface IS57ObjectClassCollection : IDispatch 02179 { 02180 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57ObjectClass ** objectClass); 02181 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 02182 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 02183 [id(2), helpstring("method Add")] HRESULT Add([in] IS57ObjectClass * objectClass); 02184 [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex); 02185 [id(4), helpstring("method Clear")] HRESULT Clear(); 02186 }; 02187 02189 [ 02190 object, 02191 uuid(10a0305f-f863-4544-8216-8d84b39c53ed), 02192 dual, 02193 helpstring("IS57FeatureIdentifier Interface"), 02194 nonextensible, 02195 pointer_default(unique), 02196 hidden 02197 ] 02198 interface IS57FeatureIdentifier : IDispatch 02199 { 02201 02208 [propget, id(1), helpstring("Agency")] HRESULT Agency([out, retval] SHORT* pVal); 02210 [propget, id(2), helpstring("FIDN")] HRESULT FIDN([out, retval] LONG* pVal); 02212 [propget, id(3), helpstring("FIDS")] HRESULT FIDS([out, retval] SHORT* pVal); 02214 [propget, id(4), helpstring("CellIdentifier")] HRESULT CellIdentifier([out, retval] IS57CellIdentifier** pVal); 02216 [id(5), helpstring("ToString")] HRESULT ToString([out, retval] BSTR* pVal); 02218 [id(6), helpstring("Construction from parts")] HRESULT Construct([in] SHORT Agency, [in] LONG FIDN, [in] SHORT FIDS, [in] IS57CellIdentifier * piCellID); 02219 }; 02220 02222 [ 02223 object, 02224 uuid(0fdcb38e-63dc-4566-888a-9c9b4476124b), 02225 dual, 02226 helpstring("IS57FeatureIdentifiers Interface"), 02227 nonextensible, 02228 pointer_default(unique), 02229 hidden 02230 ] 02231 interface IS57FeatureIdentifiers : IDispatch 02232 { 02233 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57FeatureIdentifier** featureId); 02234 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 02235 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 02236 [id(2), helpstring("method Add")] HRESULT Add([in] IS57FeatureIdentifier * featureId); 02237 [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex); 02238 [id(4), helpstring("method Clear")] HRESULT Clear(); 02239 }; 02240 02241 02243 [ 02244 object, 02245 uuid(0cc9419f-2356-4191-b462-dc7ec146199e), 02246 dual, 02247 helpstring("IS57FeatureInfo Interface"), 02248 nonextensible, 02249 pointer_default(unique), 02250 hidden 02251 ] 02252 interface IS57FeatureInfo : IDispatch 02253 { 02255 [propget, id(1), helpstring("property ObjectClass")] HRESULT ObjectClass([out, retval] IS57ObjectClass ** pVal); 02257 [propget, id(2), helpstring("property FeatureID")] HRESULT FeatureID([out, retval] IS57FeatureIdentifier ** pVal); 02259 [propget, id(3), helpstring("property Attributes")] HRESULT Attributes([out, retval] IS57AttributeValues ** pVal); 02261 [propget, id(4), helpstring("property Slaves")] HRESULT Slaves([out, retval] IS57FeatureIdentifiers ** pVal); 02262 }; 02263 02265 [ 02266 object, 02267 uuid(e61cd72a-c234-41f4-8609-dbf318fb386f), 02268 dual, 02269 helpstring("IS57FeatureArea Interface"), 02270 nonextensible, 02271 pointer_default(unique), 02272 hidden 02273 ] 02274 interface IS57FeatureArea : IDispatch 02275 { 02277 [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal); 02279 [propget, id(2), helpstring("property Faces")] HRESULT Faces([out, retval] IS57Faces ** pVal); 02280 }; 02281 02283 [ 02284 object, 02285 uuid(e14ea2dd-94fa-4c45-b43e-71d497f16ae4), 02286 dual, 02287 helpstring("IS57FeatureLine Interface"), 02288 nonextensible, 02289 pointer_default(unique), 02290 hidden 02291 ] 02292 interface IS57FeatureLine : IDispatch 02293 { 02295 [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal); 02297 02299 [propget, id(2), helpstring("property Points")] HRESULT Points([out, retval] IGeoPoints ** pVal); 02300 }; 02301 02302 02304 [ 02305 object, 02306 uuid(923500f4-e8da-472b-97fa-405e2e9cbe13), 02307 dual, 02308 helpstring("IS57FeaturePoint Interface"), 02309 nonextensible, 02310 pointer_default(unique), 02311 hidden 02312 ] 02313 interface IS57FeaturePoint : IDispatch 02314 { 02316 [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal); 02318 [propget, id(2), helpstring("property Point")] HRESULT Point([out, retval] IGeoPoint ** pVal); 02319 }; 02320 02321 02323 [ 02324 object, 02325 uuid(b83c1cdc-4786-4ed4-98dc-dc1db0c7ee63), 02326 dual, 02327 helpstring("IS57FeatureSounding Interface"), 02328 nonextensible, 02329 pointer_default(unique), 02330 hidden 02331 ] 02332 interface IS57FeatureSounding : IDispatch 02333 { 02335 [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal); 02337 [propget, id(2), helpstring("property Depths")] HRESULT Depths([out, retval] IS57DepthPoints ** pVal); 02338 }; 02339 02340 02341 02342 02343 interface IS57DrawnFeatures; // forward declaration 02344 02346 [ 02347 object, 02348 uuid(c60b9049-e14e-4d45-865c-57c169ede132), 02349 dual, 02350 helpstring("IS57DrawnFeature Interface"), 02351 nonextensible, 02352 pointer_default(unique), 02353 hidden 02354 ] 02355 interface IS57DrawnFeature : IDispatch 02356 { 02358 02360 [propget, id(1), helpstring("property FeatureID")] HRESULT FeatureID([out, retval] IS57FeatureIdentifier ** pVal); 02362 [propget, id(2), helpstring("property Visible")] HRESULT Visible([out, retval] VARIANT_BOOL* pVal); 02364 [propget, id(3), helpstring("property DisplayPriorityPoint")] HRESULT DisplayPriorityPoint([out, retval] LONG* pVal); 02366 [propget, id(5), helpstring("property DisplayPriorityLine")] HRESULT DisplayPriorityLine([out, retval] LONG* pVal); 02368 [propget, id(6), helpstring("property DisplayPriorityArea")] HRESULT DisplayPriorityArea([out, retval] LONG* pVal); 02370 [propget, id(4), helpstring("property Slaves")] HRESULT Slaves([out, retval] IS57DrawnFeatures ** pVal); 02371 }; 02372 02374 [ 02375 object, 02376 uuid(08f640c6-0e09-4c7b-b372-86ce5bd6bac3), 02377 dual, 02378 helpstring("IS57DrawnFeatures Interface"), 02379 nonextensible, 02380 pointer_default(unique), 02381 hidden 02382 ] 02383 interface IS57DrawnFeatures : IDispatch 02384 { 02385 [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57DrawnFeature ** drawnFeature); 02386 [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal); 02387 [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal); 02388 }; 02389 02390 02391 02393 02532 [ 02533 object, 02534 uuid(ac74dd68-38b4-4c3a-8f6f-9fabe1d74fcc), 02535 dual, 02536 helpstring("IS57DisplaySettings Interface"), 02537 nonextensible, 02538 pointer_default(unique), 02539 hidden 02540 ] 02541 interface IS57DisplaySettings : IDispatch 02542 { 02544 02548 [propget, id(1), helpstring("property TwoColourShadingForDepthZones")] HRESULT TwoColourShadingForDepthZones([out, retval] VARIANT_BOOL* pVal); 02550 02554 [propput, id(1), helpstring("property TwoColourShadingForDepthZones")] HRESULT TwoColourShadingForDepthZones([in] VARIANT_BOOL newVal); 02556 [propget, id(2), helpstring("property SymbolisedAreaBoundaries")] HRESULT SymbolisedAreaBoundaries([out, retval] VARIANT_BOOL* pVal); 02558 [propput, id(2), helpstring("property SymbolisedAreaBoundaries")] HRESULT SymbolisedAreaBoundaries([in] VARIANT_BOOL newVal); 02560 [propget, id(3), helpstring("property SimplifiedSymbols")] HRESULT SimplifiedSymbols([out, retval] VARIANT_BOOL* pVal); 02562 [propput, id(3), helpstring("property SimplifiedSymbols")] HRESULT SimplifiedSymbols([in] VARIANT_BOOL newVal); 02564 [propget, id(4), helpstring("property FullLengthLightSectorLines")] HRESULT FullLengthLightSectorLines([out, retval] VARIANT_BOOL* pVal); 02566 [propput, id(4), helpstring("property FullLengthLightSectorLines")] HRESULT FullLengthLightSectorLines([in] VARIANT_BOOL newVal); 02568 02569 [propget, id(5), helpstring("property FastScrolling")] HRESULT FastScrolling([out, retval] VARIANT_BOOL* pVal); 02571 02572 [propput, id(5), helpstring("property FastScrolling")] HRESULT FastScrolling([in] VARIANT_BOOL newVal); 02573 [propget, id(6), helpstring("property OverscaleIndicator")] HRESULT OverscaleIndicator([out, retval] VARIANT_BOOL* pVal); 02574 [propput, id(6), helpstring("property OverscaleIndicator")] HRESULT OverscaleIndicator([in] VARIANT_BOOL newVal); 02576 [propget, id(7), helpstring("property Date")] HRESULT Date([out, retval] DATE* pVal); 02578 [propput, id(7), helpstring("property Date")] HRESULT Date([in] DATE newVal); 02580 [propget, id(8), helpstring("property SafetyDepthMetres")] HRESULT SafetyDepthMetres([out, retval] DOUBLE* pVal); 02582 [propput, id(8), helpstring("property SafetyDepthMetres")] HRESULT SafetyDepthMetres([in] DOUBLE newVal); 02584 [propget, id(9), helpstring("property SafetyContourMetres")] HRESULT SafetyContourMetres([out, retval] DOUBLE* pVal); 02586 [propput, id(9), helpstring("property SafetyContourMetres")] HRESULT SafetyContourMetres([in] DOUBLE newVal); 02588 [propget, id(10), helpstring("property ShallowContourMetres")] HRESULT ShallowContourMetres([out, retval] DOUBLE* pVal); 02590 [propput, id(10), helpstring("property ShallowContourMetres")] HRESULT ShallowContourMetres([in] DOUBLE newVal); 02592 [propget, id(11), helpstring("property DeepContourMetres")] HRESULT DeepContourMetres([out, retval] DOUBLE* pVal); 02594 [propput, id(11), helpstring("property DeepContourMetres")] HRESULT DeepContourMetres([in] DOUBLE newVal); 02596 [propget, id(12), helpstring("property ViewingGroup")] HRESULT ViewingGroup([in] LONG ID, [out, retval] VARIANT_BOOL* pVal); 02598 [propput, id(12), helpstring("property ViewingGroup")] HRESULT ViewingGroup([in] LONG ID, [in] VARIANT_BOOL newVal); 02600 [propget, id(13), helpstring("property NumViewingGroups")] HRESULT NumViewingGroups([out, retval] LONG* pVal); 02602 [propget, id(14), helpstring("property TextGroup")] HRESULT TextGroup([in] LONG ID, [out, retval] VARIANT_BOOL* pVal); 02604 [propput, id(14), helpstring("property TextGroup")] HRESULT TextGroup([in] LONG ID, [in] VARIANT_BOOL newVal); 02606 [propget, id(15), helpstring("property NumTextGroups")] HRESULT NumTextGroups([out, retval] LONG* pVal); 02608 [id(16), helpstring("method SetViewingGroupRange")] HRESULT SetViewingGroupRange([in] LONG Start, [in] LONG End, [in] VARIANT_BOOL bShow); 02610 [propget, id(17), helpstring("property Usages")] HRESULT Usages([out, retval] IS57ProductAndUsages ** pVal); 02612 [propput, id(17), helpstring("property Usages")] HRESULT Usages([in] IS57ProductAndUsages * ProductAndUsages); 02614 02617 [propget, id(18), helpstring("property CellFilter")] HRESULT CellFilter([out, retval] IS57CellIdentifiers ** pVal); 02619 02624 [propput, id(18), helpstring("property CellFilter")] HRESULT CellFilter([in] IS57CellIdentifiers * newVal); 02626 02631 [propget, id(19), helpstring("property CellFilterInclusive")] HRESULT CellFilterInclusive([out, retval] VARIANT_BOOL* pVal); 02633 02638 [propput, id(19), helpstring("property CellFilterInclusive")] HRESULT CellFilterInclusive([in] VARIANT_BOOL newVal); 02640 02645 [propget, id(20), helpstring("property FeatureFilter")] HRESULT FeatureFilter([out, retval] IS57FeatureIdentifiers ** pVal); 02647 02652 [propput, id(20), helpstring("property FeatureFilter")] HRESULT FeatureFilter([in] IS57FeatureIdentifiers * newVal); 02654 02659 [propget, id(21), helpstring("property FeatureFilterInclusive")] HRESULT FeatureFilterInclusive([out, retval] VARIANT_BOOL* pVal); 02661 02666 [propput, id(21), helpstring("property FeatureFilterInclusive")] HRESULT FeatureFilterInclusive([in] VARIANT_BOOL newVal); 02667 02669 02670 [propget, id(22), helpstring("property Number of Depth Zones")] HRESULT NumDepthZones([out, retval] LONG* pVal); 02672 02673 [propput, id(22), helpstring("property Number of Depth Zones")] HRESULT NumDepthZones([in] LONG newVal); 02674 02676 [propget, id(23), helpstring("property VeryShallowContourMetres")] HRESULT VeryShallowContourMetres([out, retval] DOUBLE* pVal); 02678 [propput, id(23), helpstring("property VeryShallowContourMetres")] HRESULT VeryShallowContourMetres([in] DOUBLE newVal); 02679 02681 [propget, id(24), helpstring("property SlightlyShallowContourMetres")] HRESULT SlightlyShallowContourMetres([out, retval] DOUBLE* pVal); 02683 [propput, id(24), helpstring("property SlightlyShallowContourMetres")] HRESULT SlightlyShallowContourMetres([in] DOUBLE newVal); 02684 02686 [propget, id(25), helpstring("property SlightlyDeepContourMetres")] HRESULT SlightlyDeepContourMetres([out, retval] DOUBLE* pVal); 02688 [propput, id(25), helpstring("property SlightlyDeepContourMetres")] HRESULT SlightlyDeepContourMetres([in] DOUBLE newVal); 02689 02691 [propget, id(26), helpstring("property VeryDeepContourMetres")] HRESULT VeryDeepContourMetres([out, retval] DOUBLE* pVal); 02693 [propput, id(26), helpstring("property VeryDeepContourMetres")] HRESULT VeryDeepContourMetres([in] DOUBLE newVal); 02694 02695 02697 [propget, id(27), helpstring("property Depth Display Units")] HRESULT DepthDisplayUnits([out, retval] enum S57DepthDisplayUnits* pVal); 02699 [propput, id(27), helpstring("property Depth Display Units")] HRESULT DepthDisplayUnits([in] enum S57DepthDisplayUnits newVal); 02700 02702 [id(28), helpstring("Set the SCAMIN value for an object class")] HRESULT SetScaminForObjectClass([in] IS57ObjectClass * cr, [in] LONG scamin); 02704 [id(29), helpstring("Obtain the SCAMIN value for an object class")] HRESULT ScaminForObjectClass([in] IS57ObjectClass * cr, [out, retval] LONG * scamin); 02705 02707 [propget, id(30), helpstring("property CompilationScaleZoomFactor")] HRESULT CompilationScaleZoomFactor([out, retval] LONG* pVal); 02709 [propput, id(30), helpstring("property CompilationScaleZoomFactor")] HRESULT CompilationScaleZoomFactor([in] LONG nVal); 02710 02712 [id(31), helpstring("Get an identical copy of this object")] HRESULT Copy([out,retval] IS57DisplaySettings** pVal); 02713 02715 [propget, id(32), helpstring("Affects size of text. Range 0.4 to 4. Default 1.")] HRESULT FontScaleFactor([out, retval] DOUBLE* pVal); 02717 [propput, id(32), helpstring("Affects size of text. Range 0.4 to 4. Default 1.")] HRESULT FontScaleFactor([in] DOUBLE nVal); 02718 02720 02731 [propget, id(33), helpstring("non-standard ENC display improvements level")] HRESULT ImprovementsLevel([out, retval] enum S57DisplayImprovements * level); 02733 02744 [propput, id(33), helpstring("non-standard ENC display improvements level")] HRESULT ImprovementsLevel([in] enum S57DisplayImprovements level); 02745 }; 02746 02747 02749 02750 [ 02751 object, 02752 uuid(780dfa84-c057-461d-8fda-f01f81c5412c), 02753 dual, 02754 helpstring("IS57ManagerInitialisationData Interface"), 02755 nonextensible, 02756 pointer_default(unique), 02757 hidden 02758 ] 02759 interface IS57ManagerInitialisationData : IDispatch 02760 { 02762 [propget, id(1), helpstring("Senc path")] HRESULT SencPath([out, retval] BSTR * val); 02764 [propput, id(1), helpstring("Senc path")] HRESULT SencPath([in] BSTR val); 02766 02767 [propget, id(2), helpstring("Presentation Library file name and extension")] HRESULT PresentationLibraryFileName([out, retval] BSTR * val); 02769 02770 [propput, id(2), helpstring("Presentation Library file name and extension")] HRESULT PresentationLibraryFileName([in] BSTR val); 02772 02773 [propget, id(3), helpstring("Colours and RGB values of those colours")] HRESULT ColourValues([out, retval] IS57ColourValues ** pVal); 02775 02776 [propput, id(3), helpstring("Colours and RGB values of those colours")] HRESULT ColourValues([in] IS57ColourValues * pVal); 02778 [propget, id(4), helpstring("Read only SENCs will not be watched for changes and will be fully initialized to draw charts as soon as OpenSenc2 returns.")] HRESULT ReadOnly([out, retval] VARIANT_BOOL* pVal); 02780 [propput, id(4), helpstring("Read only SENCs will not be watched for changes and will be fully initialized to draw charts as soon as OpenSenc2 returns.")] HRESULT ReadOnly([in] VARIANT_BOOL pVal); 02781 }; 02782 02783 02785 [ 02786 object, 02787 uuid(b93fc2c0-0bea-4b20-aada-5b0fd3ef002e), 02788 dual, 02789 helpstring("IS57Manager Interface"), 02790 nonextensible, 02791 pointer_default(unique), 02792 hidden 02793 ] 02794 interface IS57Manager : IDispatch 02795 { 02797 [id(1), helpstring("Associate this manager with a specified folder")] HRESULT OpenSenc([in] ILibrary * EncXLibrary, [in] BSTR sSencFolder); 02799 [id(3), helpstring("Dissociate from the current folder")] HRESULT CloseSenc(void); 02801 02803 [propget, id(4), helpstring("Obtain a collection of the cells in the Senc that cannot be used")] HRESULT UnusedCells([out, retval] IS57CellIdentifiers ** pVal); 02804 02805 // removed id(5) Providers property 02806 02808 02810 [propget, id(6), helpstring("Obtain the collection of S-57 products currently present in this SENC")] HRESULT InstalledProducts([out, retval] IS57ProductAndUsages ** pVal); 02811 02813 02816 [id(7), helpstring("Obtain the collection of all the cells in this SENC")] HRESULT Cells([in] IS57ProductAndUsages * ProductAndUsages, [in] IGeoRect * cr, [out, retval] IS57CellIdentifiers ** pVal); 02818 [id(8), helpstring("Details of a cell.")] HRESULT CellInfo([in] IS57CellIdentifier * piCellID, [out, retval] IS57CellInfo ** pVal); 02820 [id(9), helpstring("ObjectClass (a.k.a. Type) of a feature")] HRESULT ObjectClass([in] IS57FeatureIdentifier * fid, [out, retval] IS57ObjectClass ** pVal); 02822 [id(10), helpstring("Geometry of a feature")] HRESULT Geometry([in] IS57FeatureIdentifier * pifid, [out, retval] enum S57FeatureGeometry* pVal); 02824 02825 [id(11), helpstring("Details of any Feature")] HRESULT FeatureInfo([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureInfo ** pVal); 02827 02828 [id(12), helpstring("Details of a point feature")] HRESULT FeatureInfoPoint([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeaturePoint ** pVal); 02830 02831 [id(13), helpstring("Details of a line feature")] HRESULT FeatureInfoLine([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureLine ** pVal); 02833 02834 [id(14), helpstring("Details of an area feature")] HRESULT FeatureInfoArea([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureArea ** pVal); 02836 02840 [id(15), helpstring("method FeatureInfoSounding")] HRESULT FeatureInfoSounding([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureSounding ** pVal); 02842 [id(16), helpstring("Invoke the CherSoft Windows application that installs and updates ENC cells in the SENC")] HRESULT RunInstallApplication([in] BSTR pathToApplication); 02843 02845 [id(17), helpstring("Associate this manager with a specified folder")] HRESULT OpenSenc2([in] ILibrary * EncXLibrary, [in] IS57ManagerInitialisationData * p); 02846 02847 #if !defined(UDE) 02849 [id(23), helpstring("The ENC user permit needed to buy commercial ENC chart data"), restricted] HRESULT UserPermit([out, retval] BSTR* pUserPermit); 02850 #endif /* UDE */ 02851 02853 [id(24), helpstring("method IsValidSencFolder")] HRESULT IsValidSencFolder([in] BSTR sPath, [out, retval] VARIANT_BOOL * bRes); 02855 [id(25), helpstring("method CreateSencFolder")] HRESULT CreateSencFolder([in] BSTR sPath); 02856 02857 }; 02858 02860 [ 02861 object, 02862 uuid(f03b56af-b4ff-4b1d-82ef-73f79d016180), 02863 dual, 02864 helpstring("IS57FeatureQuery Interface"), 02865 nonextensible, 02866 pointer_default(unique), 02867 hidden 02868 ] 02869 interface IS57FeatureQuery : IDispatch 02870 { 02872 [id(1), helpstring("method Construct")] HRESULT Construct([in] IS57Manager * manager, [in] IS57CellIdentifier * cellid); 02874 [id(2), helpstring("method SetAreaFilter")] HRESULT SetAreaFilter([in] IGeoRect * rect); 02876 02880 [id(3), helpstring("method SetFeatureFilter")] HRESULT SetFeatureFilter([in] IS57FeatureIdentifiers * featureIds, [in] VARIANT_BOOL bInclude); 02882 02886 [id(4), helpstring("method SetObjectFilter")] HRESULT SetObjectFilter([in] IS57ObjectClassCollection * ObjectClassCollection, [in] VARIANT_BOOL bInclude); 02888 [propget, id(5), helpstring("property Results")] HRESULT Results([out, retval] IS57FeatureIdentifiers ** pVal); 02889 }; 02890 02892 [ 02893 object, 02894 uuid(35a04543-913e-48fa-b930-f1f343479b09), 02895 dual, 02896 helpstring("IS57CatalogueObserver Interface"), 02897 nonextensible, 02898 pointer_default(unique), 02899 hidden 02900 ] 02901 interface IS57CatalogueObserver : IDispatch 02902 { 02904 [id(1), helpstring("method Register")] HRESULT Register([in] IS57Manager * s57Mgr); 02906 [id(2), helpstring("method Unregister")] HRESULT Unregister(void); 02907 }; 02908 02909 02911 02912 [ 02913 object, 02914 uuid(8bde709e-0465-45da-8419-49a85b9f113b), 02915 dual, 02916 helpstring("IS57Draw Interface"), 02917 nonextensible, 02918 pointer_default(unique), 02919 hidden 02920 ] 02921 interface IS57Draw : IDispatch 02922 { 02924 [id(1), helpstring("method SetManager")] HRESULT SetManager([in] IS57Manager * pMgr); 02926 [id(2), helpstring("Draw the chart to the specified device context")] HRESULT Draw([in] OLE_HANDLE lHDC); 02928 [propget, id(3), helpstring("The nominal scale of the chart")] HRESULT DisplayScale([out, retval] LONG* pVal); 02930 02935 [id(4), helpstring("The nominal scale of the chart")] HRESULT SetDisplayScale([in] LONG nDisplayScale, [in] IPixelPoint * ipPixelPt); 02936 02938 02950 [id(7), helpstring("Obtain the sensible next scale in the specified direction")] HRESULT CalculateNewDisplayScale( 02951 [out] VARIANT_BOOL* pbAllowed, //<! Whether the output scale is within the range allowed by %ENCX 02952 [out] LONG* pnScaleOut, //<! The new suggested scale 02953 [in] LONG nScaleOld, //<! The old scale. Typically IS57Draw::DisplayScale() 02954 [in] LONG nChange, //<! The number of steps and direction to go from the old scale. Positive for more detailed scale. 02955 [in] LONG nSmallestChangeAllowed //<! The minumum number of steps to go from the old scale. 02956 ); 02958 02960 [propget, id(8), helpstring("Obtain the geopix")] HRESULT GeoPix([out, retval] IGeoPix ** pVal); 02962 02963 [id(9), helpstring("method SetDrawLayerCallback")] HRESULT SetDrawLayerCallback( 02964 [in] enum S57CallBackDrawAction callBackDrawAction, 02965 [in] IS57ProductAndUsage * iproductAndUsage, 02966 [in] BYTE Layer 02967 ); 02969 02972 [propget, id(10), helpstring("Obtain the geographical positon of the centre of the drawing surface")] HRESULT PositionOfCentre([out, retval] IGeoPoint ** geoPoint); 02974 [id(11), helpstring("Set the geographical position at the specified pixel position on the drawing surface")] HRESULT SetPosition([in] IGeoPoint * geoPt, [in] IPixelPoint * pixelPt, [out, retval] VARIANT_BOOL* bRes); 02976 [id(12), helpstring("Set the geographical position and scale so that the specified rectangle just fits on the drawing surface")] HRESULT SetPositionAndScale([in] IGeoRect * geoRect, [out,retval] VARIANT_BOOL* bRes); 02978 [propget, id(13), helpstring("The display settings control the symbolisation (drawing style) and what types of object are drawn")] HRESULT DisplaySettings([out, retval] IS57DisplaySettings ** pVal); 02980 [propput, id(13), helpstring("The display settings control the symbolisation (drawing style) and what types of object are drawn")] HRESULT DisplaySettings([in] IS57DisplaySettings * newVal); 02982 02983 [propget, id(14), helpstring("The nominal size of a pixel")] HRESULT PixelSizeMetres([out, retval] DOUBLE* sz); 02985 02986 [propput, id(14), helpstring("The nominal size of a pixel")] HRESULT PixelSizeMetres([in] DOUBLE sz); 02988 [propget, id(15), helpstring("The geographical orientation of the drawing surface")] HRESULT DirectionOfUp([out, retval] DOUBLE* pVal); 02990 [id(16), helpstring("The geographical orientation of the drawing surface")] HRESULT SetDirectionOfUp([in] DOUBLE degrees, [in] IPixelPoint * ipPixelPt, [out, retval] VARIANT_BOOL* pVal); 02991 02993 02996 [propget, id(17), helpstring("property GeoExtent")] HRESULT GeoExtent([out, retval] IGeoRect ** pVal); 02997 02998 [id(18), helpstring("method FeaturesAtPoint")] HRESULT FeaturesAtPoint([in] IPixelPoint * pixelPt, [out, retval] IS57DrawnFeatures ** pVal); 03000 [propget, id(19), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([out, retval] IDisplayPalette ** pVal); 03002 [propput, id(19), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([in] IDisplayPalette * newVal); 03004 03005 [propget, id(20), helpstring("property ShowPreviousCells")] HRESULT ShowPreviousCells([out, retval] VARIANT_BOOL* pVal); 03007 03008 [propput, id(20), helpstring("property ShowPreviousCells")] HRESULT ShowPreviousCells([in] VARIANT_BOOL newVal); 03010 03017 [id(22), helpstring("Adjusts the origin used when filling an area with symbols")] HRESULT AdjustAreaSymbolOffsets([in] LONG cx, [in] LONG cy); 03018 03020 [id(23), helpstring("Set the geographical position and scale so that the specified rectangle exactly. The corners of the drawing surface will correspond to the corners of the GeoRect"), restricted] HRESULT SetPositionAndScaleExact([in] IGeoRect * geoRect, [out,retval] VARIANT_BOOL* bRes); 03021 03023 [id(24), helpstring("Get a copy of the size of the area inside the rectangle (0,0) to (Size.Width,Size.Height) that will be drawn")] HRESULT GetSize([out, retval] IPixelSize** sz); 03025 [id(25), helpstring("Set the size of the image that will be drawn")] HRESULT SetSize([in] IPixelSize* sz); 03026 03028 [id(26), helpstring("Try to get the depth at a pixel position")] HRESULT DepthAtPoint([in] IPixelPoint * pixelPt, [out] DOUBLE* depthInMetres, [out, retval] VARIANT_BOOL* succeeded); 03029 }; 03030 03032 03033 [ 03034 object, 03035 uuid(9eb5ba84-5be4-4414-820a-c4222359219b), 03036 dual, 03037 helpstring("IHTMLGenerator Interface"), 03038 nonextensible, 03039 pointer_default(unique), 03040 hidden 03041 ] 03042 interface IHTMLGenerator : IDispatch 03043 { 03045 [id(1), helpstring("Setup the generator for S-57 properties at point")] HRESULT S57PropertiesAtPoint([in] IS57Draw* s57draw, [in] IPixelPoint * pixelPt); 03046 03048 [id(2), helpstring("Set the event for HTML")] HRESULT ProcessEvent([in] BSTR sEvent, [out, retval] enum HTMLAction * action); 03049 03051 [id(3), helpstring("Get the HTML")] HRESULT HTML([in] BSTR sUrl, [out, retval] BSTR * pHtml); 03052 }; 03053 03055 03057 03062 [ 03063 uuid(5f572706-3fdc-4d2e-bfbc-6775f7b340bb), 03064 version(1.9), 03065 helpstring("CherSoft ENCX 1.9 Type Library") 03066 ] 03067 library ENCX 03068 { 03069 #if !defined DOXYGEN_SHOULD_SKIP_THIS 03070 importlib("stdole2.tlb"); 03071 importlib("mscorlib.tlb"); 03072 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 03073 03074 03076 03088 [ 03089 uuid(c645b5d3-374c-4315-ba41-9f7d05dbd19c), 03090 helpstring("Library Class") 03091 ] 03092 coclass Library 03093 { 03094 [default] interface ILibrary; 03095 }; 03096 03098 03102 [ 03103 uuid(813312ab-7c19-41a1-816f-80f31f5d8e21), 03104 helpstring("DisplayPalette Class") 03105 ] 03106 coclass DisplayPalette 03107 { 03108 [default] interface IDisplayPalette; 03109 }; 03110 03111 #if !defined(UDE) 03113 [ 03114 uuid(0e67b38d-59c8-45e3-b606-73ae621f4166), 03115 helpstring("Events from DongleObserver"), 03116 hidden 03117 ] 03118 dispinterface _IDongleObserverEvents 03119 { 03120 properties: 03121 methods: 03123 [id(1), helpstring("method OnDongleChangeEvt")] HRESULT OnDongleChangeEvt(void); 03124 }; 03125 03127 03130 [ 03131 uuid(e5772fcb-1d7c-4a1e-ba2b-36e5ba56a1ca), 03132 helpstring("A security device") 03133 ] 03134 coclass DongleObserver 03135 { 03136 [default] interface IDongleObserver; 03137 [default, source] dispinterface _IDongleObserverEvents; 03138 }; 03139 #endif 03140 03142 03143 [ 03144 uuid(15b88bae-2148-4056-bf3b-6fbe1c213c19), 03145 helpstring("GeoPoint Class") 03146 ] 03147 coclass GeoPoint 03148 { 03149 [default] interface IGeoPoint; 03150 }; 03151 03153 03154 [ 03155 uuid(92d05ed1-8673-4a7d-9bca-31b7c01a0d0e), 03156 helpstring("Collection of GeoPoint") 03157 ] 03158 coclass GeoPoints 03159 { 03160 [default] interface IGeoPoints; 03161 }; 03162 03164 03165 [ 03166 uuid(83791f41-3781-4224-bb36-12ac56f74034), 03167 helpstring("GeoArea Class") 03168 ] 03169 coclass GeoArea 03170 { 03171 [default] interface IGeoArea; 03172 }; 03173 03175 03176 [ 03177 uuid(20eed802-20ee-4fcc-9fc0-00618fac6047), 03178 helpstring("GeoRect Class") 03179 ] 03180 coclass GeoRect 03181 { 03182 [default] interface IGeoRect; 03183 }; 03184 03186 03187 [ 03188 uuid(55fd57d8-c867-4833-a65e-141b9997535a), 03189 helpstring("GeoLine Class") 03190 ] 03191 coclass GeoLine 03192 { 03193 [default] interface IGeoLine; 03194 }; 03195 03197 03203 #if !defined(UDE_ENC_ONLY) 03204 [ 03205 uuid(740798e8-5ba7-4293-ad9b-3b8a7dfb1970), 03206 helpstring("RasManager Class") 03207 ] 03208 coclass RasManager 03209 { 03210 [default] interface IRasManager; 03211 }; 03212 03214 [ 03215 uuid(31f196e5-829b-4359-bebf-a5e93065717d), 03216 helpstring("Events from RasCatalogueObserver"), 03217 hidden 03218 ] 03219 dispinterface _IRasCatalogueObserverEvents 03220 { 03221 properties: 03222 methods: 03224 [id(1), helpstring("method OnRencOpened")] HRESULT OnRencOpened(void); 03226 [id(2), helpstring("method OnRencClosing")] HRESULT OnRencClosing(void); 03228 [id(3), helpstring("method OnChartCreatedOrModified")] HRESULT OnChartCreatedOrModified([in] BSTR ChartIdentifier); 03230 [id(4), helpstring("method OnChartDeleted")] HRESULT OnChartDeleted([in] BSTR ChartIdentifier); 03232 /* Before OnBusy(false) is called the current catalgoue is still being updated*/ 03233 [id(5), helpstring("method OnBusy")] HRESULT OnBusy([in] VARIANT_BOOL bIsBusy); 03235 [id(6), helpstring("method OnGeneralNtMChanged")] HRESULT OnGeneralNtMChanged(void); 03237 [id(7), helpstring("method OnLicenceChanged")] HRESULT OnLicenceChanged(void); 03238 }; 03239 03241 03243 [ 03244 uuid(41e49a69-c39b-4415-b11b-96c665303eac), 03245 helpstring("RasCatalogueObserver Class") 03246 ] 03247 coclass RasCatalogueObserver 03248 { 03249 [default] interface IRasCatalogueObserver; 03250 [default, source] dispinterface _IRasCatalogueObserverEvents; 03251 }; 03252 03254 03256 [ 03257 uuid(3744455b-1a3a-45ad-96ed-c4186915d673), 03258 helpstring("RasChartPanelIdentifier Class") 03259 ] 03260 coclass RasChartPanelIdentifier 03261 { 03262 [default] interface IRasChartPanelIdentifier; 03263 }; 03264 03265 03267 [ 03268 uuid(51733417-e63a-4b94-b6ac-77f6fd1d9d3e), 03269 helpstring("Events from RasDraw"), 03270 hidden 03271 ] 03272 dispinterface _IRasDrawEvents 03273 { 03274 properties: 03275 methods: 03277 [id(2), helpstring("Occurs when a chart has been modified but failed to reload")] HRESULT OnFailedAutoLoadChart([in] BSTR ChartIdentifier, [in] BSTR sErrorMsg); 03278 }; 03279 03281 03294 [ 03295 uuid(e8575a69-7243-4dd4-9c63-64a5f3c8ec18), 03296 helpstring("RasDraw Class") 03297 ] 03298 coclass RasDraw 03299 { 03300 [default] interface IRasDraw; 03301 [default, source] dispinterface _IRasDrawEvents; 03302 }; 03303 #endif 03304 03306 // S57 classes 03308 03310 [ 03311 uuid(3efc9212-c37d-4ebc-af9e-b5dcfefaee87), 03312 helpstring("Events from S57CatalogueObserver"), 03313 hidden 03314 ] 03315 dispinterface _IS57CatalogueObserverEvents 03316 { 03317 properties: 03318 methods: 03319 // Occurs when the contents of the S-57 SENC has changed. Redraw everything. 03320 [id(1), helpstring("Occurs when the contents of the S-57 SENC has changed. Redraw everything.")] HRESULT OnChanged(); 03321 }; 03322 03324 03327 [ 03328 uuid(b002f03f-f856-4561-bfeb-91bb687e78cb), 03329 helpstring("S57CatalogueObserver Class") 03330 ] 03331 coclass S57CatalogueObserver 03332 { 03333 [default] interface IS57CatalogueObserver; 03334 [default, source] dispinterface _IS57CatalogueObserverEvents; 03335 }; 03336 03338 03341 [ 03342 uuid(ee852569-3205-443e-a66e-039e11b902f9), 03343 helpstring("S57CellIdentifier Class") 03344 ] 03345 coclass S57CellIdentifier 03346 { 03347 [default] interface IS57CellIdentifier; 03348 }; 03349 03351 03352 [ 03353 uuid(9524ec58-5166-462a-a6c2-1480234a3551), 03354 helpstring("S57CellIdentifiers Class") 03355 ] 03356 coclass S57CellIdentifiers 03357 { 03358 [default] interface IS57CellIdentifiers; 03359 }; 03360 03362 03363 [ 03364 uuid(6f4b584e-7209-4832-85b7-c3cdb31fe645), 03365 helpstring("S57Colour Class"), 03366 ] 03367 coclass S57Colour 03368 { 03369 [default] interface IS57Colour; 03370 }; 03371 03373 03374 [ 03375 uuid(bc1538cc-2828-4c78-b28f-d778a2f248c6), 03376 helpstring("S57ColourValue Class"), 03377 ] 03378 coclass S57ColourValue 03379 { 03380 [default] interface IS57ColourValue; 03381 }; 03382 03384 03385 [ 03386 uuid(fb9211cb-0444-4599-a2fe-fa740bafd84b), 03387 helpstring("S57ColourValues Class"), 03388 ] 03389 coclass S57ColourValues 03390 { 03391 [default] interface IS57ColourValues; 03392 }; 03393 03395 03399 [ 03400 uuid(2d550c07-a7a8-4f52-ae70-ebcab20fbf0b), 03401 helpstring("S57ProductAndUsage Class") 03402 ] 03403 coclass S57ProductAndUsage 03404 { 03405 [default] interface IS57ProductAndUsage; 03406 }; 03407 03409 03410 [ 03411 uuid(4af28e8c-10eb-41aa-b356-a02a966c68b3), 03412 helpstring("S57ProductAndUsages Class") 03413 ] 03414 coclass S57ProductAndUsages 03415 { 03416 [default] interface IS57ProductAndUsages; 03417 }; 03418 03420 03421 [ 03422 uuid(b5eefd0c-092b-4611-87e5-54343bd3545a), 03423 helpstring("S57ObjectClass Class") 03424 ] 03425 coclass S57ObjectClass 03426 { 03427 [default] interface IS57ObjectClass; 03428 }; 03429 03431 03432 [ 03433 uuid(efa5f0e2-99d4-4ba4-b98b-f86417da69d3), 03434 helpstring("Collection of S57ObjectClass") 03435 ] 03436 coclass S57ObjectClassCollection 03437 { 03438 [default] interface IS57ObjectClassCollection; 03439 }; 03440 03442 03443 [ 03444 uuid(d84979bd-ada2-44c9-a0e4-5c1835e9cf3d), 03445 helpstring("S57FeatureIdentifier Class") 03446 ] 03447 coclass S57FeatureIdentifier 03448 { 03449 [default] interface IS57FeatureIdentifier; 03450 }; 03451 03453 03454 [ 03455 uuid(28055c3e-9ffd-4883-b1d3-e68b26c4e580), 03456 helpstring("S57FeatureIdentifiers Class") 03457 ] 03458 coclass S57FeatureIdentifiers 03459 { 03460 [default] interface IS57FeatureIdentifiers; 03461 }; 03462 03464 03470 [ 03471 uuid(0426b26a-e47e-4b3a-8394-b4a79e239ee9), 03472 helpstring("S57FeatureQuery Class") 03473 ] 03474 coclass S57FeatureQuery 03475 { 03476 [default] interface IS57FeatureQuery; 03477 }; 03478 03480 [ 03481 uuid(67005eaf-5003-48bd-aa71-af5ab9be4065), 03482 helpstring("S57ManagerInitialisationData Class") 03483 ] 03484 coclass S57ManagerInitialisationData 03485 { 03486 [default] interface IS57ManagerInitialisationData; 03487 }; 03488 03489 03490 //[ 03491 // uuid(2d7df54f-8da2-4095-874c-afc4e530f2fe), 03492 // helpstring("_IS57ManagerEvents Interface") 03493 //] 03494 //dispinterface _IS57ManagerEvents 03495 //{ 03496 // properties: 03497 // methods: 03498 // [id(1), helpstring("method OnMessage")] HRESULT OnMessage(BSTR info); 03499 // [id(2), helpstring("method OnProgress")] HRESULT OnProgress(LONG progress,LONG overall,BSTR description); 03500 // [id(3), helpstring("method CanContinue")] HRESULT CanContinue([in,out] VARIANT_BOOL* pVal); 03501 //}; 03502 03504 03516 [ 03517 uuid(fe48e0ea-a822-40b0-8cc4-e8b79c7dcff2), 03518 helpstring("S57Manager Class") 03519 ] 03520 coclass S57Manager 03521 { 03522 [default] interface IS57Manager; 03523 }; 03524 03526 [ 03527 uuid(3d208112-f186-417d-b5c1-505204be714b), 03528 helpstring("Events from S57Draw"), 03529 hidden 03530 ] 03531 dispinterface _IS57DrawEvents 03532 { 03533 properties: 03534 methods: 03536 [id(1), helpstring("Occurs before or after an S-57 layer is drawn")] HRESULT OnDrawLayer(OLE_HANDLE hdc, enum S57CallBackDrawAction action, IS57ProductAndUsage * ProductAndUsage, BYTE Layer); 03537 }; 03538 03539 03541 03554 [ 03555 uuid(460c35cd-0f69-4b59-ac67-fc8fb166997f), 03556 helpstring("S57Draw Class") 03557 ] 03558 coclass S57Draw 03559 { 03560 [default] interface IS57Draw; 03561 [default, source] dispinterface _IS57DrawEvents; 03562 }; 03563 03565 03568 [ 03569 uuid(fe634df7-6946-44fd-b9d8-52b5e10d7c7e), 03570 helpstring("HTMLGenerator Class") 03571 ] 03572 coclass HTMLGenerator 03573 { 03574 [default] interface IHTMLGenerator; 03575 }; 03576 03578 03579 [ 03580 uuid(5b86d706-9faa-4578-ae56-ed84d9908181), 03581 helpstring("PixelPoint Class") 03582 ] 03583 coclass PixelPoint 03584 { 03585 [default] interface IPixelPoint; 03586 }; 03587 03589 03590 [ 03591 uuid(6436dbb1-61b0-4fc5-976f-c3c1c9374c07), 03592 helpstring("PixelSize Class") 03593 ] 03594 coclass PixelSize 03595 { 03596 [default] interface IPixelSize; 03597 }; 03598 03599 03601 03602 [ 03603 uuid(0b2444e4-6120-4fa0-82dd-ef17d2848b8e), 03604 helpstring("PixelRect Class") 03605 ] 03606 coclass PixelRect 03607 { 03608 [default] interface IPixelRect; 03609 }; 03610 03611 03613 // Non-creatable co-classes 03614 // These are here to tidy-up the interface so that the client programmer is not faced with IFoo. 03615 // The mere existence of these co-classes means that functions returning IFoo return Foo instead. 03616 // Note that there are no RGS files for these classes and the C++ code does not use them or their GUIDs at all. 03618 #if !defined DOXYGEN_SHOULD_SKIP_THIS 03619 #if !defined(UDE) 03620 // Dongle 03621 [ 03622 uuid(a5c35c0c-98d3-4c1b-8c61-83dfae54bc6f), 03623 helpstring("Dongle Class"), 03624 noncreatable 03625 ] 03626 coclass Dongle 03627 { 03628 [default] interface IDongle; 03629 }; 03630 #endif 03631 03633 03634 [ 03635 uuid(4cb63576-94d1-4684-86e6-a77aa7deec5d), 03636 helpstring("S57DisplaySettings Class"), 03637 noncreatable 03638 ] 03639 coclass S57DisplaySettings 03640 { 03641 [default] interface IS57DisplaySettings; 03642 interface ICloneable; 03643 }; 03644 03645 // GeoHorizontalDatumInfo 03646 [ 03647 uuid(fa508974-27f7-4a6c-ad70-f26d068354de), 03648 helpstring("GeoHorizontalDatumInfo Class"), 03649 noncreatable 03650 ] 03651 coclass GeoHorizontalDatumInfo 03652 { 03653 [default] interface IGeoHorizontalDatumInfo; 03654 }; 03655 03656 // PixelPoints 03657 [ 03658 uuid(9c390939-fa1c-440e-a099-27daf059bad7), 03659 helpstring("PixelPoints Class"), 03660 noncreatable 03661 ] 03662 coclass PixelPoints 03663 { 03664 [default] interface IPixelPoints; 03665 }; 03666 03667 // PolyLines 03668 [ 03669 uuid(cf281319-7d48-4fc2-b7af-c7c02dbfe5e9), 03670 helpstring("PolyLines Class"), 03671 noncreatable 03672 ] 03673 coclass PolyLines 03674 { 03675 [default] interface IPolyLines; 03676 }; 03677 03678 // GeoPix 03679 [ 03680 uuid(fcbcb502-6665-4ce3-926e-2b905e9e1717), 03681 helpstring("GeoPix Class"), 03682 noncreatable 03683 ] 03684 coclass GeoPix 03685 { 03686 [default] interface IGeoPix; 03687 }; 03688 03689 // GeoPixCollection 03690 [ 03691 uuid(069a63ba-cc96-4495-afeb-2617a8132864), 03692 helpstring("GeoPixCollection Class"), 03693 noncreatable 03694 ] 03695 coclass GeoPixCollection 03696 { 03697 [default] interface IGeoPixCollection; 03698 }; 03699 03700 // HorizontalDatum 03701 [ 03702 uuid(72bf0bf1-640e-43e7-a4e1-e641517f9476), 03703 helpstring("HorizontalDatum Class"), 03704 noncreatable 03705 ] 03706 coclass HorizontalDatum 03707 { 03708 [default] interface IHorizontalDatum; 03709 }; 03710 03711 #if !defined(UDE_ENC_ONLY) 03712 // RasCharts 03713 [ 03714 uuid(8e08a064-55a5-4970-b5ea-9038ed3bef32), 03715 helpstring("RasCharts Class"), 03716 noncreatable 03717 ] 03718 coclass RasCharts 03719 { 03720 [default] interface IRasCharts; 03721 }; 03722 03723 // RasDiscIdentity 03724 [ 03725 uuid(45c56967-f622-4b49-955f-e32e0cc9750d), 03726 helpstring("RasDiscIdentity Class"), 03727 noncreatable 03728 ] 03729 coclass RasDiscIdentity 03730 { 03731 [default] interface IRasDiscIdentity; 03732 }; 03733 03734 // RasNoticeToMarinersNumber 03735 [ 03736 uuid(3b4d75a8-3f28-42ef-86ba-96f99e6cf22f), 03737 helpstring("RasNoticeToMarinersNumber Class"), 03738 noncreatable 03739 ] 03740 coclass RasNoticeToMarinersNumber 03741 { 03742 [default] interface IRasNoticeToMarinersNumber; 03743 }; 03744 03745 // RasNoticeToMariners 03746 [ 03747 uuid(424e53ce-1f63-4ab5-a919-30bf4317098a), 03748 helpstring("RasNoticeToMariners Class"), 03749 noncreatable 03750 ] 03751 coclass RasNoticeToMariners 03752 { 03753 [default] interface IRasNoticeToMariners; 03754 }; 03755 03756 // RasNoticesToMariners 03757 [ 03758 uuid(6dcabb3d-be23-4155-8b61-a877d8d44395), 03759 helpstring("RasNoticesToMariners Class"), 03760 noncreatable 03761 ] 03762 coclass RasNoticesToMariners 03763 { 03764 [default] interface IRasNoticesToMariners; 03765 }; 03766 03767 // RasPanelIdentifier 03768 [ 03769 uuid(76cf1a89-1e28-4863-96c3-925a54106668), 03770 helpstring("RasPanelIdentifier Class"), 03771 noncreatable 03772 ] 03773 coclass RasPanelIdentifier 03774 { 03775 [default] interface IRasPanelIdentifier; 03776 }; 03777 03778 // RasPanelIdentifiers 03779 [ 03780 uuid(5098de72-16e4-4c36-9c82-f2792e9b0cb7), 03781 helpstring("RasPanelIdentifiers Class"), 03782 noncreatable 03783 ] 03784 coclass RasPanelIdentifiers 03785 { 03786 [default] interface IRasPanelIdentifiers; 03787 }; 03788 03789 // RasChartPanelIdentifiers 03790 [ 03791 uuid(89c803ca-b4d6-461d-b469-fefde9c7c7be), 03792 helpstring("RasChartPanelIdentifiers Class"), 03793 noncreatable 03794 ] 03795 coclass RasChartPanelIdentifiers 03796 { 03797 [default] interface IRasChartPanelIdentifiers; 03798 }; 03799 03800 // RasPanelInfo 03801 [ 03802 uuid(1b0cc527-5cf7-458f-b962-d9b37caf053a), 03803 helpstring("RasPanelInfo Class"), 03804 noncreatable 03805 ] 03806 coclass RasPanelInfo 03807 { 03808 [default] interface IRasPanelInfo; 03809 }; 03810 03811 // RasChartInfo 03812 [ 03813 uuid(bda7b43f-c9f5-4d12-b0b8-b31d2a6b3bf5), 03814 helpstring("RasChartInfo Class"), 03815 noncreatable 03816 ] 03817 coclass RasChartInfo 03818 { 03819 [default] interface IRasChartInfo; 03820 }; 03821 03822 // RasPanelNote 03823 [ 03824 uuid(9344dba9-c20f-424c-b06d-324872c2b2bf), 03825 helpstring("RasPanelNote Class"), 03826 noncreatable 03827 ] 03828 coclass RasPanelNote 03829 { 03830 [default] interface IRasPanelNote; 03831 }; 03832 03833 // RasPanelNotes 03834 [ 03835 uuid(bc838b49-6aca-4f67-8700-5da3f1378518), 03836 helpstring("RasPanelNotes Class"), 03837 noncreatable 03838 ] 03839 coclass RasPanelNotes 03840 { 03841 [default] interface IRasPanelNotes; 03842 }; 03843 #endif 03844 03845 // S57Attribute 03846 [ 03847 uuid(377cc6be-5296-4e58-aea8-42b3fa883e3c), 03848 helpstring("S57Attribute Class"), 03849 noncreatable 03850 ] 03851 coclass S57Attribute 03852 { 03853 [default] interface IS57Attribute; 03854 }; 03855 03856 // S57AttributeValue 03857 [ 03858 uuid(3ceaf7d8-0ef8-407e-8345-f9dc3d764201), 03859 helpstring("S57AttributeValue Class"), 03860 noncreatable 03861 ] 03862 coclass S57AttributeValue 03863 { 03864 [default] interface IS57AttributeValue; 03865 }; 03866 03867 // S57AttributeValues 03868 [ 03869 uuid(97c18bae-882f-4f92-aa00-cf9c6c473844), 03870 helpstring("S57AttributeValues Class"), 03871 noncreatable 03872 ] 03873 coclass S57AttributeValues 03874 { 03875 [default] interface IS57AttributeValues; 03876 }; 03877 03878 // S57CellInfo 03879 [ 03880 uuid(d04d2ade-7dce-4e3e-b1c1-9101affba81d), 03881 helpstring("S57CellInfo Class"), 03882 noncreatable 03883 ] 03884 coclass S57CellInfo 03885 { 03886 [default] interface IS57CellInfo; 03887 }; 03888 03889 // S57DepthPoint 03890 [ 03891 uuid(7537fd28-34fa-41c6-aa1e-515b82d78c7f), 03892 helpstring("S57DepthPoint Class"), 03893 noncreatable 03894 ] 03895 coclass S57DepthPoint 03896 { 03897 [default] interface IS57DepthPoint; 03898 }; 03899 03900 // S57DepthPoints 03901 [ 03902 uuid(5fe96e53-6628-4db3-bde4-056de46d8892), 03903 helpstring("S57DepthPoints Class"), 03904 noncreatable 03905 ] 03906 coclass S57DepthPoints 03907 { 03908 [default] interface IS57DepthPoints; 03909 }; 03910 03911 // S57Face 03912 [ 03913 uuid(5cf868ed-55f5-41e5-9b3b-6aacbf5020b1), 03914 helpstring("S57Face Class"), 03915 noncreatable 03916 ] 03917 coclass S57Face 03918 { 03919 [default] interface IS57Face; 03920 }; 03921 03922 // S57Faces 03923 [ 03924 uuid(b9af0a43-0f9b-4f55-926b-3bb412d8ebbd), 03925 helpstring("S57Faces Class"), 03926 noncreatable 03927 ] 03928 coclass S57Faces 03929 { 03930 [default] interface IS57Faces; 03931 }; 03932 03933 // S57FeatureInfo 03934 [ 03935 uuid(6752c565-bb25-4323-89b6-2478bdf0a5ee), 03936 helpstring("S57FeatureInfo Class"), 03937 noncreatable 03938 ] 03939 coclass S57FeatureInfo 03940 { 03941 [default] interface IS57FeatureInfo; 03942 }; 03943 03944 // S57FeatureArea 03945 [ 03946 uuid(23fdf878-4bf6-47ea-bc45-8a67de1d4f40), 03947 helpstring("S57FeatureArea Class"), 03948 noncreatable 03949 ] 03950 coclass S57FeatureArea 03951 { 03952 [default] interface IS57FeatureArea; 03953 }; 03954 03955 // S57FeatureLine 03956 [ 03957 uuid(26e04017-e70e-452f-8ee8-023fae0a1543), 03958 helpstring("S57FeatureLine Class"), 03959 noncreatable 03960 ] 03961 coclass S57FeatureLine 03962 { 03963 [default] interface IS57FeatureLine; 03964 }; 03965 03966 // S57FeaturePoint 03967 [ 03968 uuid(f3e7f412-90d1-4228-8c0d-b2aa5555907b), 03969 helpstring("S57FeaturePoint Class"), 03970 noncreatable 03971 ] 03972 coclass S57FeaturePoint 03973 { 03974 [default] interface IS57FeaturePoint; 03975 }; 03976 03977 // S57FeatureSounding 03978 [ 03979 uuid(2985fc4f-fbbd-43b6-a953-99bc69fae8c7), 03980 helpstring("S57FeatureSounding Class"), 03981 noncreatable 03982 ] 03983 coclass S57FeatureSounding 03984 { 03985 [default] interface IS57FeatureSounding; 03986 }; 03987 03988 // S57DrawnFeature 03989 [ 03990 uuid(8b777dba-66ec-41b4-9692-19fbc4c76865), 03991 helpstring("S57DrawnFeature Class"), 03992 noncreatable 03993 ] 03994 coclass S57DrawnFeature 03995 { 03996 [default] interface IS57DrawnFeature; 03997 }; 03998 03999 // S57DrawnFeatures 04000 [ 04001 uuid(b8100add-30af-4695-a0bb-b4ccdc2caa6f), 04002 helpstring("S57DrawnFeatures Class"), 04003 noncreatable 04004 ] 04005 coclass S57DrawnFeatures 04006 { 04007 [default] interface IS57DrawnFeatures; 04008 }; 04009 04010 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 04011 } 04012 04013 04014
Copyright © 2012 CherSoft Ltd, All rights reserved.