ENCX SDK  5.5.0.926
encxcom.idl
Go to the documentation of this file.
1 // EncXCOM.idl : IDL source for EncXCOM
2 //
3 
4 // This file will be processed by the MIDL tool to
5 // produce the type library (EncXCOM.tlb) and marshalling code.
6 
11 #if !defined DOXYGEN_SHOULD_SKIP_THIS
12 
13 midl_pragma warning(disable:2039) /* MIDL2039 - interface is not automation marshaling conformant, requires Windows NT 4.0 SP4 or greater */
14 midl_pragma warning(disable:2111) /* MIDL2111 - identifier length exceeds 31 characters */
15 
16 import "oaidl.idl";
17 import "ocidl.idl";
18 
19 #endif
20 
22 // enums
24 
27 {
28  [helpstring("Dongle not found")] DS_NotFound,
29  [helpstring("Dongle found")] DS_Exists,
30  [helpstring("Dongle active")] DS_Active,
31 };
32 
34 
38 {
39  [helpstring("Daytime palette for bright conditions")] PalDayBright,
40  [helpstring("Normal daytime palette")] PalDay,
41  [helpstring("Daytime palette with a black background")] PalDayBlack,
42  [helpstring("Palette for dawn and dusk")] PalDusk,
43  [helpstring("Palette for night viewing")] PalNight,
44  [helpstring("Palette for night viewing through a neutral filter")] PalNightUnfiltered,
45  [helpstring("Number of palette values")] PalCount,
46  [helpstring("Unknown palette")] PalUnknown,
47 };
48 
50 
55 {
56  [helpstring("Great circle on the WGS84 ellipsoid")] GL_GreatCircle,
57  [helpstring("Rhumb lines on the WGS84 ellipsoid")] GL_Rhumb,
58 };
59 
62 {
63  [helpstring("Unknown product")] PD_Unknown = 0,
64  [helpstring("Electronic Navigational Chart (ENC)")] PD_ENC = 1,
65  [helpstring("Inland Electronic Navigational Chart (ENC)")] PD_IENC = 10,
66  [helpstring("Port ENC")] PD_PENC = 20,
67  [helpstring("CherSoft World Vector Shoreline (WVS)")] PD_WVS = 25,
68  [helpstring("Routes, Areas and Limits (AML v1 or v2)")] PD_MFF = 51,
69  [helpstring("Routes, Areas and Limits (AML v1 or v2)")] PD_RAL = 52,
70  [helpstring("Large Bottom Object (AML v1 or v2)")] PD_LBO = 53,
71  [helpstring("Contour Line Bathymetry (AML v1 or v2)")] PD_CLB = 54,
72  [helpstring("Environment, Seabed and Beach (AML v1 or v2)")] PD_ESB = 55,
73  [helpstring("Small Bottom Objects (AML v1 or v2)")] PD_SBO = 56,
74  [helpstring("AML Version 3 - generic theme")] PD_AMLV3_GEN = 57,
75  [helpstring("AML Version 3 - Land Background Data")] PD_AMLV3_LND = 101,
76  [helpstring("AML Version 3 - Nautical Chart Background Data")] PD_AMLV3_NCD = 102,
77  [helpstring("AML Version 3 - Sediment")] PD_AMLV3_SED = 103,
78  [helpstring("AML Version 3 - Contour Line Bathymetry")] PD_AMLV3_CLB = 104,
79  [helpstring("AML Version 3 - Marine Management Areas")] PD_AMLV3_MMA = 105,
80  [helpstring("AML Version 3 - Mine Tactical Data")] PD_AMLV3_MTD = 106,
81  [helpstring("AML Version 3 - Territorial Sea Boundaries")] PD_AMLV3_TSB = 107,
82  [helpstring("AML Version 3 - Flight Aeronautical Information")] PD_AMLV3_FAI = 108,
83  [helpstring("AML Version 3 - Civil Flight Information")] PD_AMLV3_CFI = 109,
84  [helpstring("AML Version 3 - Military Flight Information")] PD_AMLV3_MFI = 110,
85  [helpstring("AML Version 3 - Practice and Exercise Areas")] PD_AMLV3_PEA = 111,
86  [helpstring("AML Version 3 - Q - Routes")] PD_AMLV3_QRT = 112,
87  [helpstring("AML Version 3 - Small Bottom Objects")] PD_AMLV3_SBO = 113,
88  [helpstring("AML Version 3 - Large Bottom Objects")] PD_AMLV3_LBO = 114,
89  [helpstring("AML Version 3 - Amphibious Warfare Data")] PD_AMLV3_AMP = 115,
90  [helpstring("AML Version 3 - Ice Data")] PD_AMLV3_ICE = 116,
91  [helpstring("AML Version 3 - Military Nautical Information")] PD_AMLV3_MNI = 117,
92  [helpstring("UKHO Admiralty Information Overlay")] PD_AIO = 80,
93  [helpstring("Bathymetric ENC")] PD_BENC = 200,
94 };
95 
98 {
99  [helpstring("Metres and decimetres")] DDU_Metres = 0,
100  [helpstring("Feet")] DDU_Feet = 1,
101  [helpstring("Metres ECDIS")] DDU_MetresECDIS = 2,
102 };
103 
106 {
107  [helpstring("Kilometres")] SBU_Kilometres = 0,
108  [helpstring("Nautical Miles")] SBU_NauticalMiles = 1,
109 };
110 
113 {
114  [helpstring("Off - don't use detailed mode (default)")] SDM_Off = 0,
115  [helpstring("Auto - in detailed mode use same units")] SDM_Auto,
116  [helpstring("UseMetres - always use metres for detailed mode")] SDM_UseMetres,
117 };
118 
120 
122 {
123  [helpstring("Degrees, minutes, seconds to 1 decimal place")] D_MM_SS_S = 0,
124  [helpstring("Degrees, minutes, seconds to 2 decimal places")] D_MM_SS_SS = 1,
125  [helpstring("Degrees, minutes to 3 decimal places")] D_MM_MMM = 2,
126  [helpstring("Degrees, minutes to 4 decimal places")] D_MM_MMMM = 3,
127  [helpstring("Degrees to 5 decimal places")] D_DDDDD = 4,
128  [helpstring("Degrees to 6 decimal places")] D_DDDDDD = 5,
129 };
130 
133 {
134  [helpstring("No geometry, typically a collection of other types of feature")] FG_None,
135  [helpstring("A single geographical position")] FG_Point,
136  [helpstring("A line (of potentially any shape) between two geographical positions")] FG_Line,
137  [helpstring("An enclosed geographical area")] FG_Area,
138  [helpstring("A collection of geographical positions and depths")] FG_Sounding,
139  [helpstring("Unknown geometry")] FG_Unknown,
140 };
141 
143 
145 {
146  [helpstring("Don't draw S-57 layer")] CB_NoS57Layer,
147  [helpstring("Before S-57 layer draw")] CB_BeforeS57Layer,
148  [helpstring("After S-57 layer draw")] CB_AfterS57Layer,
149  [helpstring("Both before and after S-57 layer draw")] CB_BeforeAndAfterS57Layer,
150 };
151 
153 {
154  [helpstring("Do nothing")] SHA_DoNothing,
155  [helpstring("Might be a URL")] SHA_MightBeUrl,
156  [helpstring("Go home")] SHA_GoHome,
157  [helpstring("Go back")] SHA_GoBack,
158  [helpstring("Go forward")] SHA_GoForward,
159  [helpstring("Update pages")] SHA_UpdatePages,
160  [helpstring("Update pages and reload current page")] SHA_UpdatePagesAndReloadCurrentPage,
161  [helpstring("Update pages and go home")] SHA_UpdatePagesAndGoHome,
162 };
163 
165 {
166  [helpstring("No non-standard decluttering")] S57DisplayImprovements_Nothing,
167  [helpstring("Max ENC display improvements")] S57DisplayImprovements_Max,
168  [helpstring("ENC display improvements as of Q1 2012")] S57DisplayImprovements_Level1,
169 };
170 
172 {
173  [helpstring("Original ENCX S-57 projection for fastest drawing")] S57Projection_Cylindrical,
174  [helpstring("Mercator")] S57Projection_Mercator,
175  [helpstring("PolarStereographic")] S57Projection_PolarStereographic,
176 };
177 
180 {
181  [helpstring("Use the current system date")] S57DateMode_UseSystemDate,
182  [helpstring("Use the user set date")] S57DateMode_UseSetDate,
183  [helpstring("Ignore date attributes (PERSTA,PEREND,DATSTA,DATEND) on features")] S57DateMode_IgnoreDates,
184 };
185 
188 {
189  [helpstring("Solid pen")] PS_Solid,
190  [helpstring("Dashed pen")] PS_Dashed,
191 };
192 
195 {
196  [helpstring("Node")] FT_Node = 0,
197  [helpstring("Text")] FT_Text = 1,
198  [helpstring("Edge")] FT_Edge = 2,
199  [helpstring("Face")] FT_Face = 3,
200 };
201 
203 {
204  [helpstring("UTM")] Grid_UTM = 0,
205  [helpstring("MGRS")] Grid_MGRS = 2,
206 };
207 
209 // General interfaces
211 
213 
214 [
215  object,
216  uuid(cb25f611-7cb6-11e1-8889-0024e84637be),
217  dual,
218  helpstring("IDongle Interface"),
219  nonextensible,
220  pointer_default(unique),
221  hidden
222 ]
223 interface IDongle : IDispatch
224 {
226  [propget, id(1), helpstring("Dongle State")] HRESULT State([out, retval] enum DongleState * pVal);
228  [propget, id(2), helpstring("property DeviceName")] HRESULT DeviceName([out, retval] BSTR* pVal);
229  /*
230  // Encrypt a memory block in situ.
231  [id(3), helpstring("Encrypt a block of memory (>7 bytes long)")] HRESULT Encrypt([in] BYTE* pData, [in] LONG nSize);
232  // Decrypt a memory block in situ.
233  [id(4), helpstring("Decrypt a block of memory (>7 bytes long)")] HRESULT Decrypt([in] BYTE* pData, [in] LONG nSize);
234  // Encrypt a safearray in situ.
235  [id(5), helpstring("Encrypt a safearray")] HRESULT EncryptArray([in,out] VARIANT* data);
236  // Decrypt a safearray in situ.
237  [id(6), helpstring("Decrypt a safearray")] HRESULT DecryptArray([in,out] VARIANT* data);
238  */
240  [propget, id(7), helpstring("Serial number of the dongle")] HRESULT SerialNumber([out, retval] LONG* pVal);
241 };
242 
244 [
245  object,
246  uuid(cb25f612-7cb6-11e1-8889-0024e84637be),
247  dual,
248  nonextensible,
249  helpstring("IDongleObserver Interface"),
250  pointer_default(unique),
251  hidden
252 ]
254 {
256  [id(1), helpstring("method Register")] HRESULT Register(IDongle * dongle);
258  [id(2), helpstring("method Unregister")] HRESULT Unregister(void);
259 };
260 
262 
270 [
271  object,
272  uuid(cb25f681-7cb6-11e1-8889-0024e84637be),
273  dual,
274  helpstring("IGeoPointFormatter Interface"),
275  nonextensible,
276  pointer_default(unique),
277  hidden
278 ]
280 {
282  [propget, id(1), helpstring("Use UTM universal grid where available")] HRESULT UseUniversalGrid([out, retval] VARIANT_BOOL* useGrid);
284  [propput, id(1), helpstring("Use UTM universal grid where available")] HRESULT UseUniversalGrid([in] VARIANT_BOOL useGrid);
286  [propget, id(2), helpstring("Use national grid where available (this has priority over UseUniversalGrid)")] HRESULT UseNationalGrid([out, retval] VARIANT_BOOL* useGrid);
288  [propput, id(2), helpstring("Use national grid where available (this has priority over UseUniversalGrid)")] HRESULT UseNationalGrid([in] VARIANT_BOOL useGrid);
290  [propget, id(3), helpstring("Lat-Lon format")] HRESULT Format([out, retval] enum LatLonFormat* fmt);
292  [propput, id(3), helpstring("Lat-Lon format")] HRESULT Format([in] enum LatLonFormat fmt);
294  [propget, id(4), helpstring("UniversalGrid")] HRESULT UniversalGrid([out, retval] enum UniversalGridType * val);
296  [propput, id(4), helpstring("UniversalGrid")] HRESULT UniversalGrid([in] enum UniversalGridType val);
297 };
298 
300 [
301  object,
302  uuid(cb25f613-7cb6-11e1-8889-0024e84637be),
303  dual,
304  nonextensible,
305  helpstring("ILibrary Interface"),
306  pointer_default(unique),
307  hidden
308 ]
309 interface ILibrary : IDispatch
310 {
312 
319  [id(1), helpstring("Initialize the %ENCX library")] HRESULT Construct([in] BSTR OEMKey, [in] BSTR DFSFileName);
320 
322  [propget, id(2), helpstring("Is the OEM key valid?")] HRESULT ValidOEMKey([out, retval] VARIANT_BOOL* pVal);
323 
325  [propget, id(3), helpstring("Get the Dongle")] HRESULT Dongle([out, retval] IDongle** pVal);
326 
328 
329  [id(4), helpstring("Call while the application is idle and while DoIdle() keeps returning true")] HRESULT DoIdle([out,retval] VARIANT_BOOL* bRes);
330 
332  [propget, id(5), helpstring("Get DFS licensing ID string")] HRESULT DFSInstallationId([out, retval] BSTR* pVal);
333 
335 
338  [propget, id(6), helpstring("The full pathname of the DFS filename")] HRESULT DFSFileName([out, retval] BSTR* pVal);
339 
341  [propget, id(7), helpstring("Is the DFS file valid?")] HRESULT ValidDFSFile([out, retval] VARIANT_BOOL* pVal);
342 
344  [propget, id(9), helpstring("The version of the library")] HRESULT Version([out, retval] BSTR* pVal);
345 
346  [propget, id(10), helpstring("Get the GeoPoint formatter")] HRESULT GeoPointFormatter([out, retval] IGeoPointFormatter** pipGPFormatter);
347 
348 #if !defined DOXYGEN_SHOULD_SKIP_THIS
349  [id(11), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
350 #endif
351 };
352 
354 [
355  object,
356  uuid(cb25f614-7cb6-11e1-8889-0024e84637be),
357  dual,
358  helpstring("IDisplayPalette Interface"),
359  nonextensible,
360  pointer_default(unique),
361  hidden
362 ]
364 {
366  [propget, id(1), helpstring("property Type")] HRESULT PalType([out, retval] enum PaletteType* pVal);
368  [propput, id(1), helpstring("property Type")] HRESULT PalType([in] enum PaletteType newVal);
370  [propget, id(2), helpstring("The density of colour")] HRESULT Saturation([out, retval] DOUBLE* pVal);
372  [propput, id(2), helpstring("The density of colour")] HRESULT Saturation([in] DOUBLE newVal);
374  [propget, id(3), helpstring("property Luminance")] HRESULT Luminance([out, retval] DOUBLE* pVal);
376  [propput, id(3), helpstring("property Luminance")] HRESULT Luminance([in] DOUBLE newVal);
377 
378 #if !defined DOXYGEN_SHOULD_SKIP_THIS
379  [id(4), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
380 #endif
381 };
382 
384 
390 [
391  object,
392  uuid(cb25f615-7cb6-11e1-8889-0024e84637be),
393  dual,
394  helpstring("IGeoPoint Interface"),
395  nonextensible,
396  pointer_default(unique),
397  hidden,
398 ]
399 interface IGeoPoint : IDispatch
400 {
402  [propget, id(1), helpstring("Latitude")] HRESULT Lat([out, retval] DOUBLE* pVal);
404  [propput, id(1), helpstring("Latitude")] HRESULT Lat([in] DOUBLE newVal);
406  [propget, id(2), helpstring("Longitude")] HRESULT Lon([out, retval] DOUBLE* pVal);
408  [propput, id(2), helpstring("Longitude")] HRESULT Lon([in] DOUBLE newVal);
410  [propget, id(3), helpstring("Lat-Lon as string")] HRESULT LatLonString([out, retval] BSTR* pVal);
412  [propput, id(3), helpstring("Convert string to Lat-Lon")] HRESULT LatLonString([in] BSTR newVal);
414  [propget, id(4), helpstring("Position as formatted string")] HRESULT FormattedPosition([out, retval] BSTR* pVal);
416  [id(5), helpstring("Parse string containing latitude and longitude")] HRESULT ParseLatLon([in] BSTR newVal);
417 
418 #if !defined DOXYGEN_SHOULD_SKIP_THIS
419  [id(6), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
420 #endif
422  [id(7), helpstring("Get an identical copy of this object")] HRESULT Copy([out,retval] IGeoPoint** pVal);
423 
425  [id(8), helpstring("Parse string containing UTM grid position")] HRESULT ParseUTM([in] BSTR newVal);
426 
428  [id(9), helpstring("Parse string containing MGRS grid position")] HRESULT ParseMGRS([in] BSTR newVal);
429 };
430 
431 
432 
434 [
435  object,
436  uuid(cb25f616-7cb6-11e1-8889-0024e84637be),
437  dual,
438  helpstring("IGeoPoints Interface"),
439  nonextensible,
440  pointer_default(unique),
441  hidden
442 ]
444 {
445  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IGeoPoint ** geoPoint);
446  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
447  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
448  [id(2), helpstring("method Add")] HRESULT Add([in] IGeoPoint * geoPoint);
449  [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex);
450  [id(4), helpstring("method Clear")] HRESULT Clear();
451  [id(5), helpstring("method AddLatLon")] HRESULT AddLatLon([in] DOUBLE Lat, [in] DOUBLE Lon);
453  [id(6), helpstring("Get an identical copy of this object")] HRESULT Copy([out,retval] IGeoPoints ** pVal);
454 #if !defined DOXYGEN_SHOULD_SKIP_THIS
455  [id(7), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
456 #endif
457 };
458 
460 
461 [
462  object,
463  uuid(cb25f617-7cb6-11e1-8889-0024e84637be),
464  dual,
465  helpstring("IGeoArea Interface"),
466  nonextensible,
467  pointer_default(unique),
468  hidden
469 ]
470 interface IGeoArea : IDispatch
471 {
473  [propget, id(1), helpstring("property Points")] HRESULT Points([out, retval] IGeoPoints ** pVal);
475  [propput, id(1), helpstring("property Points")] HRESULT Points([in] IGeoPoints * geoPoints);
477  [propget, id(2), helpstring("property LineType")] HRESULT LineType([out, retval] enum GeoLineType* pVal);
479  [propput, id(2), helpstring("property LineType")] HRESULT LineType([in] enum GeoLineType val);
481  [propget, id(3), helpstring("property PointsString")] HRESULT PointsString([out, retval] BSTR * pointsString);
483  [propput, id(3), helpstring("property PointsString")] HRESULT PointsString([in] BSTR pointsString);
485  [propget, id(4), helpstring("property RoundedCornersString")] HRESULT RoundedCornersString([out, retval] BSTR * corners);
487  [propput, id(4), helpstring("property RoundedCornersString")] HRESULT RoundedCornersString([in] BSTR corners);
488 
489 #if !defined DOXYGEN_SHOULD_SKIP_THIS
490  [id(6), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
491 #endif
492 };
493 
494 
496 [
497  object,
498  uuid(cb25f618-7cb6-11e1-8889-0024e84637be),
499  dual,
500  helpstring("IGeoHorizontalDatumInfo Interface"),
501  nonextensible,
502  pointer_default(unique),
503  hidden
504 ]
506 {
508  [propget, id(1), helpstring("Three character code, e.g. WGE for WGS84, plus optional one-character sub area")] HRESULT Code([out, retval] BSTR* pVal);
510  [propget, id(2), helpstring("Abbreviated description, e.g. WGS84 or OSGB1936")] HRESULT ShortDescription([out, retval] BSTR* pVal);
512  [propget, id(3), helpstring("Full description, e.g. World Geodetic System 1984")] HRESULT LongDescription([out, retval] BSTR* pVal);
513 };
514 
516 
517 [
518  object,
519  uuid(cb25f619-7cb6-11e1-8889-0024e84637be),
520  dual,
521  helpstring("IGeoRect Interface"),
522  nonextensible,
523  pointer_default(unique),
524  hidden
525 ]
526 interface IGeoRect : IDispatch
527 {
528  [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.
529  [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.
530  [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.
531  [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.
532  [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.
533  [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.
534  [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.
535  [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.
536 
537 #if !defined DOXYGEN_SHOULD_SKIP_THIS
538  [id(6), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
539 #endif
540 };
541 
543 
544 [
545  object,
546  uuid(cb25f61a-7cb6-11e1-8889-0024e84637be),
547  dual,
548  helpstring("IGeoLine Interface"),
549  nonextensible,
550  pointer_default(unique),
551  hidden
552 ]
553 interface IGeoLine : IDispatch
554 {
556  [propget, id(1), helpstring("One end of the line")] HRESULT Point1([out, retval] IGeoPoint ** pVal);
558  [propput, id(1), helpstring("One end of the line")] HRESULT Point1([in] IGeoPoint * newVal);
560  [propget, id(2), helpstring("The other end of the line")] HRESULT Point2([out, retval] IGeoPoint ** pVal);
562  [propput, id(2), helpstring("The other end of the line")] HRESULT Point2([in] IGeoPoint * newVal);
564  [propget, id(3), helpstring("The shape of the path to be used between the ends")] HRESULT LineType([out, retval] enum GeoLineType* pVal);
566  [propput, id(3), helpstring("The shape of the path to be used between the ends")] HRESULT LineType([in] enum GeoLineType newVal);
568  [id(4), helpstring("Setting the position of one end of the line")] HRESULT SetPoint1([in] DOUBLE LatGeodeticDegrees, [in] DOUBLE LonDegrees);
570  [id(5), helpstring("The other end of the line")] HRESULT SetPoint2([in] DOUBLE LatGeodeticDegrees, [in] DOUBLE LonDegrees);
572  [propget, id(6), helpstring("Length in metres of the line")] HRESULT LengthInMetres([out, retval] DOUBLE* pVal);
573 
574  // Additions after 1.8.0.37...
575 
577  [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);
579  [propget, id(8), helpstring("Bearing in degrees at start of line")] HRESULT BearingStart([out, retval] DOUBLE* startBearing);
581  [propget, id(9), helpstring("Bearing in degrees at end of line")] HRESULT BearingEnd([out, retval] DOUBLE* endBearing);
582 
583 #if !defined DOXYGEN_SHOULD_SKIP_THIS
584  [id(10), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
585 #endif
586 };
587 
589 [
590  object,
591  uuid(cb25f61b-7cb6-11e1-8889-0024e84637be),
592  dual,
593  helpstring("IPixelPoint Interface"),
594  nonextensible,
595  pointer_default(unique),
596  hidden
597 ]
599 {
601  [propget, id(1), helpstring("property X")] HRESULT X([out, retval] FLOAT* pVal);
603  [propput, id(1), helpstring("property X")] HRESULT X([in] FLOAT val);
605  [propget, id(2), helpstring("property Y")] HRESULT Y([out, retval] FLOAT* pVal);
607  [propput, id(2), helpstring("property Y")] HRESULT Y([in] FLOAT val);
608 
609 #if !defined DOXYGEN_SHOULD_SKIP_THIS
610  [id(3), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
611 #endif
612 };
613 
615 [
616  object,
617  uuid(cb25f61c-7cb6-11e1-8889-0024e84637be),
618  dual,
619  helpstring("IPixelSize Interface"),
620  nonextensible,
621  pointer_default(unique),
622  hidden
623 ]
625 {
627  [propget, id(1), helpstring("property Width")] HRESULT Width([out, retval] LONG* pVal);
629  [propput, id(1), helpstring("property Width")] HRESULT Width([in] LONG val);
631  [propget, id(2), helpstring("property Height")] HRESULT Height([out, retval] LONG* pVal);
633  [propput, id(2), helpstring("property Height")] HRESULT Height([in] LONG val);
634 
635 #if !defined DOXYGEN_SHOULD_SKIP_THIS
636  [id(3), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
637 #endif
638 };
639 
641 [
642  object,
643  uuid(cb25f61d-7cb6-11e1-8889-0024e84637be),
644  dual,
645  helpstring("IPixelRect Interface"),
646  nonextensible,
647  pointer_default(unique),
648  hidden
649 ]
651 {
653  [propget, id(1), helpstring("property Left")] HRESULT Left([out, retval] LONG* pVal);
655  [propput, id(1), helpstring("property Left")] HRESULT Left([in] LONG val);
657  [propget, id(2), helpstring("property Top")] HRESULT Top([out, retval] LONG* pVal);
659  [propput, id(2), helpstring("property Top")] HRESULT Top([in] LONG val);
661  [propget, id(3), helpstring("property Width")] HRESULT Width([out, retval] LONG* pVal);
663  [propput, id(3), helpstring("property Width")] HRESULT Width([in] LONG val);
665  [propget, id(4), helpstring("property Height")] HRESULT Height([out, retval] LONG* pVal);
667  [propput, id(4), helpstring("property Height")] HRESULT Height([in] LONG val);
668 
669 #if !defined DOXYGEN_SHOULD_SKIP_THIS
670  [id(5), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
671 #endif
672 };
673 
674 
676 
677 [
678  object,
679  uuid(cb25f61e-7cb6-11e1-8889-0024e84637be),
680  dual,
681  helpstring("IPixelPoints Interface"),
682  nonextensible,
683  pointer_default(unique),
684  hidden
685 ]
687 {
688  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IPixelPoint ** pp);
689  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
690  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
691 };
692 
693 
694 
696 [
697  object,
698  uuid(cb25f61f-7cb6-11e1-8889-0024e84637be),
699  dual,
700  helpstring("IPolyLines Interface"),
701  nonextensible,
702  pointer_default(unique),
703  hidden
704 ]
706 {
707  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IPixelPoints ** pixelPts);
708  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
709  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
710 };
711 
713 [
714  object,
715  uuid(cb25f620-7cb6-11e1-8889-0024e84637be),
716  dual,
717  helpstring("IPolyAreas Interface"),
718  nonextensible,
719  pointer_default(unique),
720  hidden
721 ]
723 {
724  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IPixelPoints ** pixelPts);
725  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
726  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
727 };
728 
729 
730 
732 
741 [
742  object,
743  uuid(cb25f621-7cb6-11e1-8889-0024e84637be),
744  dual,
745  helpstring("IGeoPix Interface"),
746  nonextensible,
747  pointer_default(unique),
748  hidden
749 ]
750 interface IGeoPix : IDispatch
751 {
753 
762  [id(1), helpstring("Obtain a geographical position from a pixel point")] HRESULT GeoPointFromPixelPoint([in] IPixelPoint * pixelPt, [out, retval] IGeoPoint ** geoPt);
764  [propget, id(2), helpstring("The geographical bounding rectangle for the viewport of this IGeoPix")] HRESULT Extent([out, retval] IGeoRect ** pVal);
766  [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);
768 
770  [propget, id(4), helpstring("The scale to show to the user")] HRESULT DisplayScale([out, retval] LONG* pVal);
772 
778  [propget, id(5), helpstring("Degrees. Like a compass bearing")] HRESULT DirectionOfUp([out, retval] DOUBLE* Degrees);
780 
782  [propget, id(6), helpstring("Draw symbols smaller (for Overviews)")] HRESULT UseSmallSymbology([out, retval] VARIANT_BOOL* pVal);
784 
789  [id(7), helpstring("Geographic to Pixel point conversion")] HRESULT Point([in] IGeoPoint * geoPt, [out, retval] IPixelPoint ** pixelPt);
791 
798  [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);
800 
803  [id(9), helpstring("Geographic to Pixel line conversion")] HRESULT Line([in] IGeoLine * geoLine, [out,retval] IPolyLines ** lines);
805 
809  [id(10), helpstring("Geographic to Pixel area conversion")] HRESULT Area([in] IGeoArea * geoArea, [out,retval] IPolyAreas ** areas);
811 
817  [id(11), helpstring("The visible portion of this GeoPix")] HRESULT ClipRegionDevicePoints([in] IPixelRect * rect, [in] OLE_HANDLE lHDC, [out,retval] OLE_HANDLE * lhRgn);
819 
825  [id(12), helpstring("The visible portion of this GeoPix")] HRESULT ClipRegionLogicalPoints([in] IPixelRect * rect, [out,retval] OLE_HANDLE * lhRgn);
827 
828  [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);
829 
830 #if !defined DOXYGEN_SHOULD_SKIP_THIS
831  [id(14), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
832 #endif
833 };
834 
835 
837 [
838  object,
839  uuid(cb25f622-7cb6-11e1-8889-0024e84637be),
840  dual,
841  helpstring("IGeoPixCollection Interface"),
842  nonextensible,
843  pointer_default(unique),
844  hidden
845 ]
847 {
848  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IGeoPix ** gp);
849  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
850  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
851 };
852 
853 
855 
856 [
857  object,
858  uuid(cb25f623-7cb6-11e1-8889-0024e84637be),
859  dual,
860  helpstring("IHorizontalDatum Interface"),
861  nonextensible,
862  pointer_default(unique),
863  hidden
864 ]
866 {
868  [propget, id(1), helpstring("The accuracy of the transformation. Units are metres")] HRESULT ErrorDistanceMetres([out, retval] DOUBLE* Metres);
870 
879  [propget, id(2), helpstring("property HasLocalDatum")] HRESULT HasLocalDatum([out, retval] VARIANT_BOOL* pVal);
881  [propget, id(3), helpstring("Local datum short name")] HRESULT LocalDatumShortName([out, retval] BSTR* pVal);
883  [propget, id(4), helpstring("Local datum long name")] HRESULT LocalDatumLongName([out, retval] BSTR* pVal);
885 
887  [id(5), helpstring("method LocalToWGS84")] HRESULT LocalToWGS84([out] DOUBLE* LatWGS84, [out] DOUBLE* LonWGS84, [in] DOUBLE LatLocal, [in] DOUBLE LonLocal, [out,retval] VARIANT_BOOL* bRes);
889 
891  [id(6), helpstring("method WGS84ToLocal")] HRESULT WGS84ToLocal([out] DOUBLE* LatLocal, [out] DOUBLE* LonLocal, [in] DOUBLE LatWGS84, [in] DOUBLE LonWGS84, [out,retval] VARIANT_BOOL* bRes);
892 };
893 
894 #if !defined(UDE_ENC_ONLY)
896 // RAS interfaces
898 
900 [
901  object,
902  uuid(cb25f624-7cb6-11e1-8889-0024e84637be),
903  dual,
904  helpstring("IRasCharts Interface"),
905  nonextensible,
906  pointer_default(unique),
907  hidden
908 ]
910 {
911  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] BSTR * bsChart);
912  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
913  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
914 };
915 
916 
918 [
919  object,
920  uuid(cb25f625-7cb6-11e1-8889-0024e84637be),
921  dual,
922  helpstring("IRasDiscIdentity Interface"),
923  nonextensible,
924  pointer_default(unique),
925  hidden
926 ]
928 {
930  [propget, id(1), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pVal);
932  [propget, id(2), helpstring("The date the CD was released")] HRESULT IssueDate([out, retval] DATE* pVal);
933 };
934 
936 
937 [
938  object,
939  uuid(cb25f626-7cb6-11e1-8889-0024e84637be),
940  dual,
941  helpstring("IRasNoticeToMarinersNumber Interface"),
942  nonextensible,
943  pointer_default(unique),
944  hidden
945 ]
947 {
949  [propget, id(1), helpstring("property Year")] HRESULT Year([out, retval] LONG* pVal);
951  [propget, id(2), helpstring("property Number")] HRESULT Number([out, retval] LONG* pVal);
953  [id(3), helpstring("method ToString")] HRESULT ToString([retval][out] BSTR* pVal);
954 };
955 
957 [
958  object,
959  uuid(cb25f627-7cb6-11e1-8889-0024e84637be),
960  dual,
961  helpstring("IRasNoticeToMariners Interface"),
962  nonextensible,
963  pointer_default(unique),
964  hidden
965 ]
967 {
969  [propget, id(1), helpstring("property Number")] HRESULT Number([out, retval] IRasNoticeToMarinersNumber ** pVal);
971  [propget, id(2), helpstring("property Text")] HRESULT Text([out, retval] BSTR* pVal);
972 };
973 
974 
976 [
977  object,
978  uuid(cb25f628-7cb6-11e1-8889-0024e84637be),
979  dual,
980  helpstring("IRasNoticesToMariners Interface"),
981  nonextensible,
982  pointer_default(unique),
983  hidden
984 ]
986 {
987  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasNoticeToMariners ** notice);
988  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
989  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
990 };
991 
993 [
994  object,
995  uuid(cb25f629-7cb6-11e1-8889-0024e84637be),
996  dual,
997  helpstring("IRasPanelIdentifier Interface"),
998  nonextensible,
999  pointer_default(unique),
1000  hidden
1001 ]
1003 {
1004 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1005  [id(3), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1006 #endif
1007 };
1008 
1009 
1011 [
1012  object,
1013  uuid(cb25f62a-7cb6-11e1-8889-0024e84637be),
1014  dual,
1015  helpstring("IRasPanelIdentifiers Interface"),
1016  nonextensible,
1017  pointer_default(unique),
1018  hidden
1019 ]
1021 {
1022  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasPanelIdentifier ** panelid);
1023  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
1024  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
1025 };
1026 
1027 
1029 [
1030  object,
1031  uuid(cb25f62b-7cb6-11e1-8889-0024e84637be),
1032  dual,
1033  helpstring("IRasChartPanelIdentifier Interface"),
1034  nonextensible,
1035  pointer_default(unique),
1036  hidden
1037 ]
1039 {
1041  [propget, id(1), helpstring("property ChartIdentifier")] HRESULT ChartIdentifier([out, retval] BSTR* pVal);
1043  [propget, id(2), helpstring("property Panel")] HRESULT Panel([out, retval] IRasPanelIdentifier ** pVal);
1045  [id(3), helpstring("method Construct")] HRESULT Construct([in] BSTR chartNumber, [in] IRasPanelIdentifier * panelID);
1046 
1047 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1048  [id(4), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1049 #endif
1050 };
1051 
1053 [
1054  object,
1055  uuid(cb25f62c-7cb6-11e1-8889-0024e84637be),
1056  dual,
1057  helpstring("IRasChartPanelIdentifiers Interface"),
1058  nonextensible,
1059  pointer_default(unique),
1060  hidden
1061 ]
1063 {
1064  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasChartPanelIdentifier** ChartPanelId);
1065  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
1066  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
1067 };
1068 
1069 
1070 
1072 
1075 [
1076  object,
1077  uuid(cb25f62d-7cb6-11e1-8889-0024e84637be),
1078  dual,
1079  helpstring("IRasPanelInfo Interface"),
1080  nonextensible,
1081  pointer_default(unique),
1082  hidden
1083 ]
1085 {
1087  [propget, id(1), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pVal);
1089  [propget, id(2), helpstring("property HeightDatum")] HRESULT HeightDatum([out, retval] BSTR* pVal);
1091  [propget, id(3), helpstring("property HeightUnits")] HRESULT HeightUnits([out, retval] BSTR* pVal);
1093  [propget, id(4), helpstring("property DepthDatum")] HRESULT DepthDatum([out, retval] BSTR* pVal);
1095  [propget, id(5), helpstring("property DepthUnits")] HRESULT DepthUnits([out, retval] BSTR* pVal);
1097  [propget, id(6), helpstring("property ProjectionName")] HRESULT ProjectionName([out, retval] BSTR* pVal);
1099  [propget, id(7), helpstring("property Scale")] HRESULT Scale([out, retval] LONG* pVal);
1101  [propget, id(8), helpstring("property HorizontalDatumInfo")] HRESULT HorizontalDatumInfo([out, retval] IGeoHorizontalDatumInfo ** pVal);
1103  [propget, id(9), helpstring("property GeoArea")] HRESULT GeoArea([out, retval] IGeoArea ** pVal);
1105 
1108  [propget, id(10), helpstring("property PanelNumber")] HRESULT PanelNumber([out, retval] LONG* pVal);
1110 
1113  [propget, id(11), helpstring("property SubPanelNumber")] HRESULT SubPanelNumber([out, retval] LONG* pVal);
1115  [propget, id(12), helpstring("property PixelPoints")] HRESULT PixelPoints([out, retval] IPixelPoints ** pVal);
1117 
1118  [propget, id(13), helpstring("property ManualWGS84ShiftCanBeModified")] HRESULT ManualWGS84ShiftCanBeModified([out, retval] VARIANT_BOOL* pVal);
1120  [propget, id(14), helpstring("property ManualWGS84Shift")] HRESULT ManualWGS84Shift([out, retval] IGeoPoint ** pVal);
1122 
1123  [propget, id(15), helpstring("property ManualWGS84ShiftIsSet")] HRESULT ManualWGS84ShiftIsSet([out, retval] VARIANT_BOOL * pVal);
1125  [id(16), helpstring("method PointInPanel")] HRESULT PointInPanel([in] DOUBLE dLatGeodeticDegrees, [in] DOUBLE dLonDegrees, [out,retval] VARIANT_BOOL* bRes);
1126 };
1127 
1128 
1130 
1131 [
1132  object,
1133  uuid(cb25f62e-7cb6-11e1-8889-0024e84637be),
1134  dual,
1135  helpstring("IRasChartInfo Interface"),
1136  nonextensible,
1137  pointer_default(unique),
1138  hidden
1139 ]
1141 {
1143 
1145  [propget, id(1), helpstring("property IsComplete")] HRESULT IsComplete([out, retval] VARIANT_BOOL* pVal);
1147  [propget, id(2), helpstring("property RequiresLicence")] HRESULT RequiresLicence([out, retval] VARIANT_BOOL* pVal);
1149 
1151  [propget, id(3), helpstring("property IsWithdrawn")] HRESULT IsWithdrawn([out, retval] VARIANT_BOOL* pVal);
1153  [propget, id(4), helpstring("property NativeFormatLongDescription")] HRESULT NativeFormatLongDescription([out, retval] BSTR* pVal);
1155  [propget, id(5), helpstring("property NativeFormatShortDescription")] HRESULT NativeFormatShortDescription([out, retval] BSTR* pVal);
1157  [propget, id(6), helpstring("property Number")] HRESULT Number([out, retval] BSTR* pVal);
1159  [propget, id(7), helpstring("property InternationalNumber")] HRESULT InternationalNumber([out, retval] BSTR* pVal);
1161  [propget, id(8), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pVal);
1163  [propget, id(9), helpstring("property CountryOfOrigin")] HRESULT CountryOfOrigin([out, retval] BSTR* pVal);
1165  [propget, id(10), helpstring("property Producer1")] HRESULT Producer1([out, retval] BSTR* pVal);
1167  [propget, id(11), helpstring("property Producer2")] HRESULT Producer2([out, retval] BSTR* pVal);
1168  [propget, id(12), helpstring("property RasterChartIssueDate")] HRESULT RasterChartIssueDate([out, retval] DATE* pVal);
1170 
1171  [propget, id(13), helpstring("property EditionDate")] HRESULT EditionDate([out, retval] DATE* pVal);
1173  [propget, id(14), helpstring("property LastChanged")] HRESULT LastChanged([out, retval] DATE* pVal);
1175  [propget, id(15), helpstring("property LatestCorrectionDate")] HRESULT LatestCorrectionDate([out, retval] DATE* pVal);
1177  [propget, id(16), helpstring("property InstallationCD")] HRESULT InstallationCD([out, retval] IRasDiscIdentity ** pVal);
1179 
1180  [propget, id(17), helpstring("property MissingReInstallationCD")] HRESULT MissingReInstallationCD([out, retval] IRasDiscIdentity ** pVal);
1182 
1183  [propget, id(18), helpstring("property MissingUpdateCD")] HRESULT MissingUpdateCD([out, retval] IRasDiscIdentity ** pVal);
1185 
1186  [propget, id(19), helpstring("property LatestNoticeToMarinersNumber")] HRESULT LatestNoticeToMarinersNumber([out, retval] IRasNoticeToMarinersNumber ** pVal);
1188  [propget, id(20), helpstring("property NoticesToMariners")] HRESULT NoticesToMariners([out, retval] IRasNoticesToMariners ** pVal);
1190  [propget, id(21), helpstring("property PanelIdentifiers")] HRESULT PanelIdentifiers([out, retval] IRasPanelIdentifiers ** pVal);
1192 
1193  [propget, id(22), helpstring("property PanelInfo")] HRESULT PanelInfo([in] IRasPanelIdentifier * panelId, [out, retval] IRasPanelInfo ** pVal);
1194 };
1195 
1196 
1198 [
1199  object,
1200  uuid(cb25f62f-7cb6-11e1-8889-0024e84637be),
1201  dual,
1202  helpstring("IRasManager Interface"),
1203  nonextensible,
1204  pointer_default(unique),
1205  hidden
1206 ]
1208 {
1210  [id(2), helpstring("method OpenRasFolder")] HRESULT OpenRasFolder([in] ILibrary * piLibrary, [in] BSTR sPath);
1212  [propget, id(4), helpstring("property Charts")] HRESULT Charts([out, retval] IRasCharts ** pVal);
1214  [id(5), helpstring("method ChartInfo")] HRESULT ChartInfo([in] BSTR ChartIdentifier, [out, retval] IRasChartInfo ** pVal);
1216  [id(6), helpstring("method PanelInfo")] HRESULT PanelInfo([in] IRasChartPanelIdentifier * PanelID, [out, retval] IRasPanelInfo ** pVal);
1217  [propget, id(7), helpstring("property NoticesToMarinersLatestUpdate")] HRESULT NoticesToMarinersLatestUpdate([out, retval] DATE* pVal);
1218  [propget, id(8), helpstring("property GeneralNoticesToMariners")] HRESULT GeneralNoticesToMariners([out, retval] IRasNoticesToMariners ** pVal);
1219  [id(9), helpstring("method PanelsInGeoRect")] HRESULT PanelsInGeoRect([in] IGeoRect * geoRect, [in] LONG ScaleMin, [in] LONG ScaleMax, [out, retval] IRasChartPanelIdentifiers ** pVal);
1220  [id(10), helpstring("method PanelsAtPoint")] HRESULT PanelsAtPoint([in] DOUBLE dLatGeodeticDegrees, [in] DOUBLE dLonDegrees, [in] LONG ScaleMin, [in] LONG ScaleMax, [out, retval] IRasChartPanelIdentifiers ** pVal);
1222 
1223  [id(11), helpstring("method SetManualWGS84Shift")] HRESULT SetManualWGS84Shift([in] IRasChartPanelIdentifier * PanelId, [in] IGeoPoint * geoPoint, VARIANT_BOOL isSet);
1224 
1226  [id(12), helpstring("method DisplayPinDialog")] HRESULT DisplayPinDialog([in] BSTR chartNumber, [out, retval] VARIANT_BOOL * bRes);
1227 
1229  [id(13), helpstring("Invoke the CherSoft Windows application that installs and updates ARCS charts in the folder")] HRESULT RunInstallApplicationARCS([in] BSTR pathToInstallationApp);
1230 
1232  [id(15), helpstring("method IsValidRasFolder")] HRESULT IsValidRasFolder([in] BSTR sPath, [out, retval] VARIANT_BOOL * bRes);
1234  [id(16), helpstring("method CreateRasFolder")] HRESULT CreateRasFolder([in] BSTR sPath);
1235 
1236 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1237  [id(17), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1238 #endif
1239 };
1240 
1241 
1243 
1244 [
1245  object,
1246  uuid(cb25f630-7cb6-11e1-8889-0024e84637be),
1247  dual,
1248  helpstring("IRasCatalogueObserver Interface"),
1249  nonextensible,
1250  pointer_default(unique),
1251  hidden
1252 ]
1254 {
1256  [id(1), helpstring("method Register")] HRESULT Register([in] IRasManager * rasManager);
1258  [id(2), helpstring("method Unregister")] HRESULT Unregister(void);
1259 };
1260 
1261 
1263 
1265 [
1266  object,
1267  uuid(cb25f631-7cb6-11e1-8889-0024e84637be),
1268  dual,
1269  helpstring("IRasPanelNote Interface"),
1270  nonextensible,
1271  pointer_default(unique),
1272  hidden
1273 ]
1275 {
1277  [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);
1279 
1281  [propget, id(3), helpstring("Fine catIdentification of the note")] HRESULT Code([out, retval] BSTR* pVal);
1283  [propget, id(4), helpstring("Coarse categorisation of the note")] HRESULT Type([out, retval] BSTR* pVal);
1285  [propget, id(5), helpstring("Returns true if the note overlaps any hydrography")] HRESULT Obscures([out, retval] VARIANT_BOOL* pVal);
1287 
1289  [propget, id(6), helpstring("Returns true if the note should be displayed to the user")] HRESULT Display([out, retval] VARIANT_BOOL* pVal);
1290 };
1291 
1293 [
1294  object,
1295  uuid(cb25f632-7cb6-11e1-8889-0024e84637be),
1296  dual,
1297  helpstring("IRasPanelNotes Interface"),
1298  nonextensible,
1299  pointer_default(unique),
1300  hidden
1301 ]
1303 {
1304  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IRasPanelNote ** panelNote);
1305  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
1306  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
1307 };
1308 
1309 
1311 
1313 [
1314  object,
1315  uuid(cb25f633-7cb6-11e1-8889-0024e84637be),
1316  dual,
1317  helpstring("IRasDraw Interface"),
1318  nonextensible,
1319  pointer_default(unique),
1320  hidden
1321 ]
1322 interface IRasDraw : IDispatch
1323 {
1325  [id(1), helpstring("Use a specific chart")] HRESULT OpenChart([in] IRasManager * rasmanager, [in] BSTR ChartIdentifier);
1327  [propget, id(2), helpstring("The chart's number")] HRESULT ChartIdentifier([out, retval] BSTR* pVal);
1329 
1331  [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);
1333 
1335  [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);
1337 
1340  [propget, id(4), helpstring("True iff there are currently corrections on the chart")] HRESULT HasUpdates([out, retval] VARIANT_BOOL* pVal);
1342 
1343  [propget, id(5), helpstring("Draw the chart using the available updates. On by default")] HRESULT DisplayUpdates([out, retval] VARIANT_BOOL* pVal);
1345 
1346  [propput, id(5), helpstring("Draw the chart using the available updates. On by default")] HRESULT DisplayUpdates([in] VARIANT_BOOL newVal);
1348 
1349  [propget, id(6), helpstring("Highlight the updated areas on the chart. Off by default")] HRESULT IndicateUpdates([out, retval] VARIANT_BOOL* pVal);
1351 
1352  [propput, id(6), helpstring("Highlight the updated areas on the chart. Off by default")] HRESULT IndicateUpdates([in] VARIANT_BOOL newVal);
1354  [propget, id(7), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([out, retval] IDisplayPalette ** pVal);
1356  [propput, id(7), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([in] IDisplayPalette * newVal);
1358  [propget, id(8), helpstring("This message should be displayed on top of the chart at all times")] HRESULT PermanentMessage([out, retval] BSTR* pVal);
1360  [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);
1362  [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);
1364  [propget, id(12), helpstring("Snapshot of all the geopixes that are inside Rect()")] HRESULT VisibleGeoPix([out, retval] IGeoPixCollection ** pVal);
1366 
1367  [propget, id(13), helpstring("Returns the nominal size of a pixel")] HRESULT PixelSizeMetres([out, retval] DOUBLE* sz);
1369  [propget, id(14), helpstring("Return the size of the whole chart in pixels, allowing for it being either full-size or overview")] HRESULT ChartSize([out, retval] IPixelSize** sz);
1371 
1372  [id(15), helpstring("Obtain the identity of the panel at a specified pixel position")] HRESULT PanelAtPoint([in] IPixelPoint * ipPixelPt, [out,retval] IRasPanelIdentifier ** rpid);
1374 
1375  [id(16), helpstring("Obtain the GeoPix at a specified pixel position")] HRESULT GeoPix([in] IPixelPoint * ipPixelPt, [out,retval] IGeoPix ** geoPix);
1377 
1378  [id(17), helpstring("Obtain the HorizontalDatum at a specified pixel position")] HRESULT HorizontalDatum([in] IPixelPoint * ipPixelPt, [out,retval] IHorizontalDatum ** hd);
1380 
1381  [id(18), helpstring("Draw the Rect() portion of the chart to the specified device context")] HRESULT Draw([in] OLE_HANDLE hDC);
1383  [id(19), helpstring("Obtain a collection of notes associated with the specified panel")] HRESULT PanelNotes([in] IRasPanelIdentifier * panelId, [out, retval] IRasPanelNotes ** pVal);
1384 
1386 
1387  [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);
1389 
1390  [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);
1392 
1393  [id(22), helpstring("Set the view rectangle to display the geographical position specified on the panel specified.")]
1394  HRESULT OpenAtPositionOnPanel([in] IRasManager * rasManager, [in] IRasChartPanelIdentifier * chartAndPanel, [in] IGeoPoint * geoPt);
1395 
1397  [propget, id(23), helpstring("Magnify raster chart")] HRESULT Magnify([out, retval] ULONG* percent);
1399 
1400  [propput, id(23), helpstring("Magnify raster chart")] HRESULT Magnify([in] ULONG percent);
1401 
1403 
1404  [id(24), helpstring("Obtain the GeoPix for the specified panel")] HRESULT PanelGeoPix([in] IRasPanelIdentifier* panelID, [out, retval] IGeoPix** geoPix);
1405 };
1406 
1407 #endif
1409 // S57 interfaces
1411 
1413 
1690 [
1691  object,
1692  uuid(cb25f634-7cb6-11e1-8889-0024e84637be),
1693  dual,
1694  helpstring("IS57Attribute Interface"),
1695  nonextensible,
1696  pointer_default(unique),
1697  hidden
1698 ]
1700 {
1702  [propget, id(1), hidden, helpstring("property Product")] HRESULT Product([out, retval] enum S57Product* pVal);
1704  [propget, id(2), helpstring("property Acronym")] HRESULT Acronym([out, retval] BSTR* pVal);
1706  [propget, id(3), helpstring("property Name")] HRESULT Name([out, retval] BSTR* pVal);
1708  [id(4), helpstring("Whether this Attribute is used by the specified product")] HRESULT IsInProduct([in] enum S57Product product, [out, retval] VARIANT_BOOL * result);
1709 };
1710 
1711 
1713 
1714 [
1715  object,
1716  uuid(cb25f635-7cb6-11e1-8889-0024e84637be),
1717  dual,
1718  helpstring("IS57AttributeValue Interface"),
1719  nonextensible,
1720  pointer_default(unique),
1721  hidden
1722 ]
1724 {
1726  [propget, id(1), helpstring("property Attribute")] HRESULT Attribute([out, retval] IS57Attribute ** pVal);
1728  [propget, id(2), helpstring("property Value")] HRESULT Value([out, retval] BSTR* pVal);
1729 };
1730 
1731 
1733 [
1734  object,
1735  uuid(cb25f636-7cb6-11e1-8889-0024e84637be),
1736  dual,
1737  helpstring("IS57AttributeValues Interface"),
1738  nonextensible,
1739  pointer_default(unique),
1740  hidden
1741 ]
1743 {
1744  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57AttributeValue ** attrValue);
1745  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
1746  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
1747 };
1748 
1749 
1751 [
1752  object,
1753  uuid(cb25f637-7cb6-11e1-8889-0024e84637be),
1754  dual,
1755  helpstring("IS57CellIdentifier Interface"),
1756  nonextensible,
1757  pointer_default(unique),
1758  hidden
1759 ]
1761 {
1763 
1764  [propget, id(1), helpstring("property CellName")] HRESULT CellName([out, retval] BSTR* pVal);
1766  [propget, id(2), helpstring("property Product")] HRESULT Product([out, retval] enum S57Product* pVal);
1768  [id(3), helpstring("method Construct")] HRESULT Construct([in] enum S57Product product, [in] BSTR cellName);
1769 
1770 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1771  [id(4), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1772 #endif
1773 };
1774 
1776 [
1777  object,
1778  uuid(cb25f638-7cb6-11e1-8889-0024e84637be),
1779  dual,
1780  helpstring("IS57CellIdentifiers Interface"),
1781  nonextensible,
1782  pointer_default(unique),
1783  hidden
1784 ]
1786 {
1787  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57CellIdentifier** cellId);
1788  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
1789  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
1790  [id(2), helpstring("method Add")] HRESULT Add([in] IS57CellIdentifier * cellId);
1791  [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex);
1792  [id(4), helpstring("method Clear")] HRESULT Clear();
1793 
1794 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1795  [id(5), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1796 #endif
1797 };
1798 
1800 
1876 [
1877  object,
1878  uuid(cb25f639-7cb6-11e1-8889-0024e84637be),
1879  dual,
1880  helpstring("IS57Colour Interface"),
1881  nonextensible,
1882  pointer_default(unique),
1883  hidden
1884 ]
1886 {
1887  [propget, id(1), helpstring("property Name")] HRESULT Name([out, retval] BSTR* pVal);
1888  [propput, id(1), helpstring("property Name")] HRESULT Name([in] BSTR val);
1890  [id(2), helpstring("Construct")] HRESULT Construct([in] BSTR name);
1891 
1892 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1893  [id(3), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1894 #endif
1895 };
1896 
1897 
1899 [
1900  object,
1901  uuid(cb25f63a-7cb6-11e1-8889-0024e84637be),
1902  dual,
1903  helpstring("IS57ColourValue Interface"),
1904  nonextensible,
1905  pointer_default(unique),
1906  hidden
1907 ]
1909 {
1911  [id(1), helpstring("Construct")] HRESULT Construct([in] IS57Colour * pColour, DWORD rgbDay, DWORD rgbTwilight, DWORD rgbNight);
1913  [propget, id(2), helpstring("property Colour")] HRESULT Colour([out, retval] IS57Colour ** pVal);
1915  [propput, id(2), helpstring("property Colour")] HRESULT Colour([in] IS57Colour * pVal);
1917  [propget, id(3), helpstring("property RGB for daylight viewing")] HRESULT DayRGB([out, retval] COLORREF* rgb);
1919  [propput, id(3), helpstring("property RGB for daylight viewing")] HRESULT DayRGB([in] COLORREF rgb);
1921  [propget, id(4), helpstring("property RGB for twilight viewing")] HRESULT TwilightRGB([out, retval] COLORREF* rgb);
1923  [propput, id(4), helpstring("property RGB for twilight viewing")] HRESULT TwilightRGB([in] COLORREF rgb);
1925  [propget, id(5), helpstring("property RGB for night time viewing")] HRESULT NightRGB([out, retval] COLORREF* rgb);
1927  [propput, id(5), helpstring("property RGB for night time viewing")] HRESULT NightRGB([in] COLORREF rgb);
1928 
1929 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1930  [id(6), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1931 #endif
1932 };
1933 
1934 
1936 [
1937  object,
1938  uuid(cb25f63b-7cb6-11e1-8889-0024e84637be),
1939  dual,
1940  helpstring("IS57ColourValues Interface"),
1941  nonextensible,
1942  pointer_default(unique),
1943  hidden
1944 ]
1946 {
1947  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57ColourValue ** colourValue);
1948  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
1949  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
1950  [id(2), helpstring("method Add")] HRESULT Add([in] IS57ColourValue * colourValue);
1951  [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex);
1952  [id(4), helpstring("method Clear")] HRESULT Clear();
1953 
1954 #if !defined DOXYGEN_SHOULD_SKIP_THIS
1955  [id(5), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
1956 #endif
1957 };
1958 
1959 
1961 [
1962  object,
1963  uuid(cb25f63c-7cb6-11e1-8889-0024e84637be),
1964  dual,
1965  helpstring("IS57ProductAndUsage Interface"),
1966  nonextensible,
1967  pointer_default(unique),
1968  hidden
1969 ]
1971 {
1973  [propget, id(1), helpstring("S-57 Product")] HRESULT Product([out, retval] enum S57Product* pVal);
1975  [propput, id(1), helpstring("S-57 Product")] HRESULT Product([in] enum S57Product newVal);
1977 
1988  [propget, id(2), helpstring("Intended usage (For ENC, navigational purpose 1 .. 6)")] HRESULT IntendedUsage([out, retval] BYTE* pVal);
1990 
2001  [propput, id(2), helpstring("Intended usage (For ENC, navigational purpose 1 .. 6)")] HRESULT IntendedUsage([in] BYTE newVal);
2002 
2003 #if !defined DOXYGEN_SHOULD_SKIP_THIS
2004  [id(3), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
2005 #endif
2006 };
2007 
2009 [
2010  object,
2011  uuid(cb25f63d-7cb6-11e1-8889-0024e84637be),
2012  dual,
2013  helpstring("IS57ProductAndUsages Interface"),
2014  nonextensible,
2015  pointer_default(unique),
2016  hidden
2017 ]
2019 {
2020  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57ProductAndUsage** ProductAndUsage);
2021  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
2022  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
2023  [id(2), helpstring("method Add")] HRESULT Add([in] IS57ProductAndUsage * ProductAndUsage);
2024  [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex);
2025  [id(4), helpstring("method Clear")] HRESULT Clear();
2026 
2027 #if !defined DOXYGEN_SHOULD_SKIP_THIS
2028  [id(5), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
2029 #endif
2030 
2031  [id(6), helpstring("method RestoreDefault")] HRESULT RestoreDefault();
2032 };
2033 
2035 
2036 [
2037  object,
2038  uuid(cb25f63e-7cb6-11e1-8889-0024e84637be),
2039  dual,
2040  helpstring("IS57CellInfo Interface"),
2041  nonextensible,
2042  pointer_default(unique),
2043  hidden
2044 ]
2046 {
2048  [propget, id(1), helpstring("property CellIdentifier")] HRESULT CellIdentifier([out, retval] IS57CellIdentifier** pVal);
2050  [propget, id(2), helpstring("property IntendedUsage")] HRESULT IntendedUsage([out, retval] LONG* pVal);
2052  [propget, id(3), helpstring("property CompilationScale")] HRESULT CompilationScale([out, retval] LONG* pVal);
2054  [propget, id(4), helpstring("Description of the S-57 data producer")] HRESULT Agency([out, retval] BSTR* pVal);
2056  [propget, id(5), helpstring("property Country")] HRESULT Country([out, retval] BSTR* pVal);
2058  [propget, id(6), helpstring("property VerticalDatum")] HRESULT VerticalDatum([out, retval] BSTR* pVal);
2060  [propget, id(7), helpstring("property SoundingDatum")] HRESULT SoundingDatum([out, retval] BSTR* pVal);
2062  [propget, id(8), helpstring("property Extent")] HRESULT Extent([out, retval] IGeoRect ** pVal);
2064  [propget, id(9), helpstring("property IssueDate")] HRESULT IssueDate([out, retval] DATE* pVal);
2066  [propget, id(11), helpstring("property LastChanged")] HRESULT LastChanged([out, retval] DATE* pVal);
2068 
2069  [propget, id(12), helpstring("property Edition")] HRESULT Edition([out, retval] LONG* pVal);
2071  [propget, id(13), helpstring("property LatestUpdate")] HRESULT LatestUpdate([out, retval] LONG* pVal);
2073  [propget, id(14), helpstring("property PermitExpiryDate")] HRESULT PermitExpiryDate([out, retval] DATE* pVal);
2075  [propget, id(15), helpstring("property PermitIsSubscription")] HRESULT PermitIsSubscription([out, retval] VARIANT_BOOL* pVal);
2077 
2079  [propget, id(16), helpstring("property LeastDetailedDisplayScaleToShow_All")] HRESULT LeastDetailedDisplayScaleToShow_All([out, retval] LONG* pVal);
2081 
2083  [propget, id(17), helpstring("property LeastDetailedDisplayScaleToShow_GroupOne")] HRESULT LeastDetailedDisplayScaleToShow_GroupOne([out, retval] LONG* pVal);
2085 
2088  [propget, id(18), helpstring("property LeastDetailedDisplayScaleToShow_Coverage")] HRESULT LeastDetailedDisplayScaleToShow_Coverage([out, retval] LONG* pVal);
2090  [propget, id(19), helpstring("Empty for most ENC suppliers, useful text from NOAA")] HRESULT LongFileName([out, retval] BSTR* pVal);
2091 };
2092 
2094 [
2095  object,
2096  uuid(cb25f63f-7cb6-11e1-8889-0024e84637be),
2097  dual,
2098  helpstring("IS57DepthPoint Interface"),
2099  nonextensible,
2100  pointer_default(unique),
2101  hidden
2102 ]
2104 {
2106  [propget, id(1), helpstring("Geographical position of sounding")] HRESULT GeoPoint([out, retval] IGeoPoint ** pVal);
2108  [propget, id(2), helpstring("Depth of sounding in metres")] HRESULT Depth([out, retval] DOUBLE* pVal);
2109 };
2110 
2111 
2113 [
2114  object,
2115  uuid(cb25f640-7cb6-11e1-8889-0024e84637be),
2116  dual,
2117  helpstring("IS57DepthPoints Interface"),
2118  nonextensible,
2119  pointer_default(unique),
2120  hidden
2121 ]
2123 {
2124  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57DepthPoint ** depthPoint);
2125  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
2126  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
2127 };
2128 
2129 
2131 [
2132  object,
2133  uuid(cb25f641-7cb6-11e1-8889-0024e84637be),
2134  dual,
2135  helpstring("IS57Face Interface"),
2136  nonextensible,
2137  pointer_default(unique),
2138  hidden
2139 ]
2140 interface IS57Face : IDispatch
2141 {
2143  [propget, id(1), helpstring("property Points")] HRESULT Points([out, retval] IGeoPoints ** pVal);
2144 };
2145 
2146 
2148 [
2149  object,
2150  uuid(cb25f642-7cb6-11e1-8889-0024e84637be),
2151  dual,
2152  helpstring("IS57Faces Interface"),
2153  nonextensible,
2154  pointer_default(unique),
2155  hidden
2156 ]
2158 {
2159  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57Face ** face);
2160  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
2161  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
2162 };
2163 
2165 
2389 [
2390  object,
2391  uuid(cb25f643-7cb6-11e1-8889-0024e84637be),
2392  dual,
2393  helpstring("IS57ObjectClass Interface"),
2394  nonextensible,
2395  pointer_default(unique),
2396  hidden
2397 ]
2399 {
2401  [propget, id(1), hidden, helpstring("Product")] HRESULT Product([out, retval] enum S57Product* pVal);
2403  [propget, id(2), helpstring("Acronym")] HRESULT Acronym([out, retval] BSTR* pVal);
2405  [propget, id(3), helpstring("Description")] HRESULT Description([out, retval] BSTR* pVal);
2407  [id(4), helpstring("Construct")] HRESULT Construct([in] BSTR acronym);
2409  [id(5), helpstring("Whether this Object Class is used by the specified product")] HRESULT IsInProduct([in] enum S57Product product, [out, retval] VARIANT_BOOL * result);
2410 
2411 #if !defined DOXYGEN_SHOULD_SKIP_THIS
2412  [id(6), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
2413 #endif
2414 };
2415 
2417 [
2418  object,
2419  uuid(cb25f644-7cb6-11e1-8889-0024e84637be),
2420  dual,
2421  helpstring("IS57ObjectClassCollection Interface"),
2422  nonextensible,
2423  pointer_default(unique),
2424  hidden
2425 ]
2427 {
2428  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57ObjectClass ** objectClass);
2429  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
2430  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
2431  [id(2), helpstring("method Add")] HRESULT Add([in] IS57ObjectClass * objectClass);
2432  [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex);
2433  [id(4), helpstring("method Clear")] HRESULT Clear();
2434 
2435 #if !defined DOXYGEN_SHOULD_SKIP_THIS
2436  [id(5), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
2437 #endif
2438 };
2439 
2441 [
2442  object,
2443  uuid(cb25f645-7cb6-11e1-8889-0024e84637be),
2444  dual,
2445  helpstring("IS57FeatureIdentifier Interface"),
2446  nonextensible,
2447  pointer_default(unique),
2448  hidden
2449 ]
2451 {
2453 
2460  [propget, id(1), helpstring("Agency")] HRESULT Agency([out, retval] SHORT* pVal);
2462  [propget, id(2), helpstring("FIDN")] HRESULT FIDN([out, retval] LONG* pVal);
2464  [propget, id(3), helpstring("FIDS")] HRESULT FIDS([out, retval] SHORT* pVal);
2466  [propget, id(4), helpstring("CellIdentifier")] HRESULT CellIdentifier([out, retval] IS57CellIdentifier** pVal);
2468  [id(5), helpstring("Show feature ID and cell ID as string")] HRESULT ToString([out, retval] BSTR* pVal);
2470  [id(6), helpstring("Construction from parts")] HRESULT Construct([in] SHORT Agency, [in] LONG FIDN, [in] SHORT FIDS, [in] IS57CellIdentifier * piCellID);
2472  [id(7), helpstring("Construct from string")] HRESULT FromString([in] BSTR val);
2473 #if !defined DOXYGEN_SHOULD_SKIP_THIS
2474  [id(9), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
2475 #endif
2477  [id(10), helpstring("Construction from parts")] HRESULT ConstructEx([in] SHORT Agency, [in] LONG FIDN, [in] SHORT FIDS, [in] IS57CellIdentifier * piCellID, [in] LONG index);
2479  [propget, id(11), helpstring("Index")] HRESULT Index([out, retval] LONG* pVal);
2481  [id(12), helpstring("Show feature ID, cell ID and index as string")] HRESULT ToStringEx([out, retval] BSTR* pVal);
2482 };
2483 
2485 [
2486  object,
2487  uuid(cb25f646-7cb6-11e1-8889-0024e84637be),
2488  dual,
2489  helpstring("IS57FeatureIdentifiers Interface"),
2490  nonextensible,
2491  pointer_default(unique),
2492  hidden
2493 ]
2495 {
2496  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57FeatureIdentifier** featureId);
2497  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
2498  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
2499  [id(2), helpstring("method Add")] HRESULT Add([in] IS57FeatureIdentifier * featureId);
2500  [id(3), helpstring("method Remove")] HRESULT Remove([in] LONG nIndex);
2501  [id(4), helpstring("method Clear")] HRESULT Clear();
2502 
2503 #if !defined DOXYGEN_SHOULD_SKIP_THIS
2504  [id(5), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
2505 #endif
2506 };
2507 
2508 
2510 [
2511  object,
2512  uuid(cb25f647-7cb6-11e1-8889-0024e84637be),
2513  dual,
2514  helpstring("IS57FeatureInfo Interface"),
2515  nonextensible,
2516  pointer_default(unique),
2517  hidden
2518 ]
2520 {
2522  [propget, id(1), helpstring("property ObjectClass")] HRESULT ObjectClass([out, retval] IS57ObjectClass ** pVal);
2524  [propget, id(2), helpstring("property FeatureID")] HRESULT FeatureID([out, retval] IS57FeatureIdentifier ** pVal);
2526  [propget, id(3), helpstring("property Attributes")] HRESULT Attributes([out, retval] IS57AttributeValues ** pVal);
2528  [propget, id(4), helpstring("property Slaves")] HRESULT Slaves([out, retval] IS57FeatureIdentifiers ** pVal);
2529 };
2530 
2532 [
2533  object,
2534  uuid(cb25f648-7cb6-11e1-8889-0024e84637be),
2535  dual,
2536  helpstring("IS57FeatureArea Interface"),
2537  nonextensible,
2538  pointer_default(unique),
2539  hidden
2540 ]
2542 {
2544  [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal);
2546  [propget, id(2), helpstring("property Faces")] HRESULT Faces([out, retval] IS57Faces ** pVal);
2547 };
2548 
2550 [
2551  object,
2552  uuid(cb25f649-7cb6-11e1-8889-0024e84637be),
2553  dual,
2554  helpstring("IS57FeatureLine Interface"),
2555  nonextensible,
2556  pointer_default(unique),
2557  hidden
2558 ]
2560 {
2562  [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal);
2564 
2566  [propget, id(2), helpstring("property Points")] HRESULT Points([out, retval] IGeoPoints ** pVal);
2567 };
2568 
2569 
2571 [
2572  object,
2573  uuid(cb25f64a-7cb6-11e1-8889-0024e84637be),
2574  dual,
2575  helpstring("IS57FeaturePoint Interface"),
2576  nonextensible,
2577  pointer_default(unique),
2578  hidden
2579 ]
2581 {
2583  [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal);
2585  [propget, id(2), helpstring("property Point")] HRESULT Point([out, retval] IGeoPoint ** pVal);
2586 };
2587 
2588 
2590 [
2591  object,
2592  uuid(cb25f64b-7cb6-11e1-8889-0024e84637be),
2593  dual,
2594  helpstring("IS57FeatureSounding Interface"),
2595  nonextensible,
2596  pointer_default(unique),
2597  hidden
2598 ]
2600 {
2602  [propget, id(1), helpstring("property FeatureInfo")] HRESULT FeatureInfo([out, retval] IS57FeatureInfo ** pVal);
2604  [propget, id(2), helpstring("property Depths")] HRESULT Depths([out, retval] IS57DepthPoints ** pVal);
2605 };
2606 
2607 
2608 
2609 
2610 interface IS57DrawnFeatures; // forward declaration
2611 
2613 [
2614  object,
2615  uuid(cb25f64c-7cb6-11e1-8889-0024e84637be),
2616  dual,
2617  helpstring("IS57DrawnFeature Interface"),
2618  nonextensible,
2619  pointer_default(unique),
2620  hidden
2621 ]
2623 {
2625 
2627  [propget, id(1), helpstring("property FeatureID")] HRESULT FeatureID([out, retval] IS57FeatureIdentifier ** pVal);
2629  [propget, id(2), helpstring("property Visible")] HRESULT Visible([out, retval] VARIANT_BOOL* pVal);
2631  [propget, id(3), helpstring("property DisplayPriorityPoint")] HRESULT DisplayPriorityPoint([out, retval] LONG* pVal);
2633  [propget, id(5), helpstring("property DisplayPriorityLine")] HRESULT DisplayPriorityLine([out, retval] LONG* pVal);
2635  [propget, id(6), helpstring("property DisplayPriorityArea")] HRESULT DisplayPriorityArea([out, retval] LONG* pVal);
2637  [propget, id(4), helpstring("property Slaves")] HRESULT Slaves([out, retval] IS57DrawnFeatures ** pVal);
2638 };
2639 
2641 [
2642  object,
2643  uuid(cb25f64d-7cb6-11e1-8889-0024e84637be),
2644  dual,
2645  helpstring("IS57DrawnFeatures Interface"),
2646  nonextensible,
2647  pointer_default(unique),
2648  hidden
2649 ]
2651 {
2652  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out,retval] IS57DrawnFeature ** drawnFeature);
2653  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
2654  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
2655 };
2656 
2657 
2658 
2660 
2876 [
2877  object,
2878  uuid(cb25f64e-7cb6-11e1-8889-0024e84637be),
2879  dual,
2880  helpstring("IS57DisplaySettings Interface"),
2881  nonextensible,
2882  pointer_default(unique),
2883  hidden
2884 ]
2886 {
2888 
2892  [propget, id(1), helpstring("property TwoColourShadingForDepthZones")] HRESULT TwoColourShadingForDepthZones([out, retval] VARIANT_BOOL* pVal);
2894 
2898  [propput, id(1), helpstring("property TwoColourShadingForDepthZones")] HRESULT TwoColourShadingForDepthZones([in] VARIANT_BOOL newVal);
2900  [propget, id(2), helpstring("property SymbolisedAreaBoundaries")] HRESULT SymbolisedAreaBoundaries([out, retval] VARIANT_BOOL* pVal);
2902  [propput, id(2), helpstring("property SymbolisedAreaBoundaries")] HRESULT SymbolisedAreaBoundaries([in] VARIANT_BOOL newVal);
2904  [propget, id(3), helpstring("property SimplifiedSymbols")] HRESULT SimplifiedSymbols([out, retval] VARIANT_BOOL* pVal);
2906  [propput, id(3), helpstring("property SimplifiedSymbols")] HRESULT SimplifiedSymbols([in] VARIANT_BOOL newVal);
2908  [propget, id(4), helpstring("property FullLengthLightSectorLines")] HRESULT FullLengthLightSectorLines([out, retval] VARIANT_BOOL* pVal);
2910  [propput, id(4), helpstring("property FullLengthLightSectorLines")] HRESULT FullLengthLightSectorLines([in] VARIANT_BOOL newVal);
2912  [propget, id(6), helpstring("property OverscaleIndicator")] HRESULT OverscaleIndicator([out, retval] VARIANT_BOOL* pVal);
2914  [propput, id(6), helpstring("property OverscaleIndicator")] HRESULT OverscaleIndicator([in] VARIANT_BOOL newVal);
2916  [propget, id(7), helpstring("property Date")] HRESULT Date([out, retval] DATE* pVal);
2918  [propput, id(7), helpstring("property Date")] HRESULT Date([in] DATE newVal);
2920  [propget, id(8), helpstring("property SafetyDepthMetres")] HRESULT SafetyDepthMetres([out, retval] DOUBLE* pVal);
2922  [propput, id(8), helpstring("property SafetyDepthMetres")] HRESULT SafetyDepthMetres([in] DOUBLE newVal);
2924  [propget, id(9), helpstring("property SafetyContourMetres")] HRESULT SafetyContourMetres([out, retval] DOUBLE* pVal);
2926  [propput, id(9), helpstring("property SafetyContourMetres")] HRESULT SafetyContourMetres([in] DOUBLE newVal);
2928  [propget, id(10), helpstring("property ShallowContourMetres")] HRESULT ShallowContourMetres([out, retval] DOUBLE* pVal);
2930  [propput, id(10), helpstring("property ShallowContourMetres")] HRESULT ShallowContourMetres([in] DOUBLE newVal);
2932  [propget, id(11), helpstring("property DeepContourMetres")] HRESULT DeepContourMetres([out, retval] DOUBLE* pVal);
2934  [propput, id(11), helpstring("property DeepContourMetres")] HRESULT DeepContourMetres([in] DOUBLE newVal);
2936  [propget, id(12), helpstring("property ViewingGroup")] HRESULT ViewingGroup([in] LONG ID, [out, retval] VARIANT_BOOL* pVal);
2938  [propput, id(12), helpstring("property ViewingGroup")] HRESULT ViewingGroup([in] LONG ID, [in] VARIANT_BOOL newVal);
2940  [propget, id(13), helpstring("property NumViewingGroups")] HRESULT NumViewingGroups([out, retval] LONG* pVal);
2942  [propget, id(14), helpstring("property TextGroup")] HRESULT TextGroup([in] LONG ID, [out, retval] VARIANT_BOOL* pVal);
2944  [propput, id(14), helpstring("property TextGroup")] HRESULT TextGroup([in] LONG ID, [in] VARIANT_BOOL newVal);
2946  [propget, id(15), helpstring("property NumTextGroups")] HRESULT NumTextGroups([out, retval] LONG* pVal);
2948  [id(16), helpstring("method SetViewingGroupRange")] HRESULT SetViewingGroupRange([in] LONG Start, [in] LONG End, [in] VARIANT_BOOL bShow);
2950  [propget, id(17), helpstring("property Usages")] HRESULT Usages([out, retval] IS57ProductAndUsages ** pVal);
2952  [propput, id(17), helpstring("property Usages")] HRESULT Usages([in] IS57ProductAndUsages * ProductAndUsages);
2953 
2955 
2958  [propget, id(18), helpstring("property CellFilter")] HRESULT CellFilter([out, retval] IS57CellIdentifiers ** pVal);
2959 
2961 
2964  [propput, id(18), helpstring("property CellFilter")] HRESULT CellFilter([in] IS57CellIdentifiers * newVal);
2965 
2967 
2969  [propget, id(19), helpstring("property CellFilterInclusive")] HRESULT CellFilterInclusive([out, retval] VARIANT_BOOL* pVal);
2971 
2976  [propput, id(19), helpstring("property CellFilterInclusive")] HRESULT CellFilterInclusive([in] VARIANT_BOOL newVal);
2978 
2983  [propget, id(20), helpstring("property FeatureFilter")] HRESULT FeatureFilter([out, retval] IS57FeatureIdentifiers ** pVal);
2985 
2990  [propput, id(20), helpstring("property FeatureFilter")] HRESULT FeatureFilter([in] IS57FeatureIdentifiers * newVal);
2992 
2997  [propget, id(21), helpstring("property FeatureFilterInclusive")] HRESULT FeatureFilterInclusive([out, retval] VARIANT_BOOL* pVal);
2999 
3004  [propput, id(21), helpstring("property FeatureFilterInclusive")] HRESULT FeatureFilterInclusive([in] VARIANT_BOOL newVal);
3005 
3007 
3008  [propget, id(22), helpstring("property Number of Depth Zones")] HRESULT NumDepthZones([out, retval] LONG* pVal);
3010 
3011  [propput, id(22), helpstring("property Number of Depth Zones")] HRESULT NumDepthZones([in] LONG newVal);
3012 
3014  [propget, id(23), helpstring("property VeryShallowContourMetres")] HRESULT VeryShallowContourMetres([out, retval] DOUBLE* pVal);
3016  [propput, id(23), helpstring("property VeryShallowContourMetres")] HRESULT VeryShallowContourMetres([in] DOUBLE newVal);
3017 
3019  [propget, id(24), helpstring("property SlightlyShallowContourMetres")] HRESULT SlightlyShallowContourMetres([out, retval] DOUBLE* pVal);
3021  [propput, id(24), helpstring("property SlightlyShallowContourMetres")] HRESULT SlightlyShallowContourMetres([in] DOUBLE newVal);
3022 
3024  [propget, id(25), helpstring("property SlightlyDeepContourMetres")] HRESULT SlightlyDeepContourMetres([out, retval] DOUBLE* pVal);
3026  [propput, id(25), helpstring("property SlightlyDeepContourMetres")] HRESULT SlightlyDeepContourMetres([in] DOUBLE newVal);
3027 
3029  [propget, id(26), helpstring("property VeryDeepContourMetres")] HRESULT VeryDeepContourMetres([out, retval] DOUBLE* pVal);
3031  [propput, id(26), helpstring("property VeryDeepContourMetres")] HRESULT VeryDeepContourMetres([in] DOUBLE newVal);
3032 
3033 
3035  [propget, id(27), helpstring("property Depth Display Units")] HRESULT DepthDisplayUnits([out, retval] enum S57DepthDisplayUnits* pVal);
3037  [propput, id(27), helpstring("property Depth Display Units")] HRESULT DepthDisplayUnits([in] enum S57DepthDisplayUnits newVal);
3038 
3040  [id(28), helpstring("Set the SCAMIN value for an object class")] HRESULT SetScaminForObjectClass([in] IS57ObjectClass * cr, [in] LONG scamin);
3042  [id(29), helpstring("Obtain the SCAMIN value for an object class")] HRESULT ScaminForObjectClass([in] IS57ObjectClass * cr, [out, retval] LONG * scamin);
3043 
3045  [propget, id(30), helpstring("property CompilationScaleZoomFactor")] HRESULT CompilationScaleZoomFactor([out, retval] LONG* pVal);
3047  [propput, id(30), helpstring("property CompilationScaleZoomFactor")] HRESULT CompilationScaleZoomFactor([in] LONG nVal);
3048 
3050  [id(31), helpstring("Get an identical copy of this object")] HRESULT Copy([out,retval] IS57DisplaySettings** pVal);
3051 
3053  [propget, id(32), helpstring("Affects size of text. Range 0.4 to 4. Default 1.")] HRESULT FontScaleFactor([out, retval] DOUBLE* pVal);
3055  [propput, id(32), helpstring("Affects size of text. Range 0.4 to 4. Default 1.")] HRESULT FontScaleFactor([in] DOUBLE nVal);
3056 
3058 
3069  [propget, id(33), helpstring("non-standard ENC display improvements level")] HRESULT ImprovementsLevel([out, retval] enum S57DisplayImprovements * level);
3071 
3082  [propput, id(33), helpstring("non-standard ENC display improvements level")] HRESULT ImprovementsLevel([in] enum S57DisplayImprovements level);
3083 
3085  [propget, id(34), helpstring("XML string representing settings")] HRESULT XML([out, retval] BSTR* xml);
3087  [propput, id(34), helpstring("XML string representing settings")] HRESULT XML([in] BSTR xml);
3089  [id(35), helpstring("Merge XML settings into existing settings")] HRESULT MergeXML([in] BSTR xml);
3090 
3092  [propget, id(36), helpstring("property IgnoreScamin")] HRESULT IgnoreScamin([out, retval] VARIANT_BOOL* pVal);
3094  [propput, id(36), helpstring("property IgnoreScamin")] HRESULT IgnoreScamin([in] VARIANT_BOOL newVal);
3095 
3097  [propget, id(37), helpstring("property DeclutterOverlappingCells")] HRESULT DeclutterOverlappingCells([out, retval] VARIANT_BOOL* pVal);
3099  [propput, id(37), helpstring("property DeclutterOverlappingCells")] HRESULT DeclutterOverlappingCells([in] VARIANT_BOOL newVal);
3101  [propget, id(38), helpstring("property ShowOverlappingCellAreas")] HRESULT ShowOverlappingCellAreas([out, retval] VARIANT_BOOL* pVal);
3103  [propput, id(38), helpstring("property ShowOverlappingCellAreas")] HRESULT ShowOverlappingCellAreas([in] VARIANT_BOOL newVal);
3104 
3106  [propget, id(39), helpstring("property HighlightDateDependent")] HRESULT HighlightDateDependent([out, retval] VARIANT_BOOL* pVal);
3108  [propput, id(39), helpstring("property HighlightDateDependent")] HRESULT HighlightDateDependent([in] VARIANT_BOOL newVal);
3109 
3111  [propget, id(40), helpstring("property DateMode")] HRESULT DateMode([out, retval] enum S57DateMode * dateMode);
3113  [propput, id(40), helpstring("property DateMode")] HRESULT DateMode([in] enum S57DateMode dateMode);
3114 
3115 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3116  [id(41), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3117 #endif
3118 
3120  [propget, id(42), helpstring("property ShowIsolatedDangersInShallowWater")] HRESULT ShowIsolatedDangersInShallowWater([out, retval] VARIANT_BOOL* pVal);
3122  [propput, id(42), helpstring("property ShowIsolatedDangersInShallowWater")] HRESULT ShowIsolatedDangersInShallowWater([in] VARIANT_BOOL newVal);
3123 };
3124 
3127 [
3128  object,
3129  uuid(cb25f684-7cb6-11e1-8889-0024e84637be),
3130  dual,
3131  helpstring("IWVSDisplaySettings Interface"),
3132  nonextensible,
3133  pointer_default(unique),
3134  hidden
3135 ]
3137 {
3139  [propget, id(1), helpstring("Fill colour of the land")] HRESULT LandColour([out, retval] DWORD * val);
3141  [propput, id(1), helpstring("Fill colour of the land")] HRESULT LandColour([in] DWORD val);
3143  [propget, id(2), helpstring("Outline colour of the land")] HRESULT LandOutlineColour([out, retval] DWORD * val);
3145  [propput, id(2), helpstring("Outline colour of the land")] HRESULT LandOutlineColour([in] DWORD val);
3147  [propget, id(3), helpstring("Colour of the lakes")] HRESULT LakeColour([out, retval] DWORD * val);
3149  [propput, id(3), helpstring("Colour of the lakes")] HRESULT LakeColour([in] DWORD val);
3151  [propget, id(4), helpstring("Colour of the borders")] HRESULT BorderColour([out, retval] DWORD * val);
3153  [propput, id(4), helpstring("Colour of the borders")] HRESULT BorderColour([in] DWORD val);
3155  [propget, id(5), helpstring("Colour of the rivers")] HRESULT RiverColour([out, retval] DWORD * val);
3157  [propput, id(5), helpstring("Colour of the rivers")] HRESULT RiverColour([in] DWORD val);
3159  [propget, id(6), helpstring("Land outline width")] HRESULT LandOutlineWidth([out, retval] FLOAT * val);
3161  [propput, id(6), helpstring("Land outline width")] HRESULT LandOutlineWidth([in] FLOAT val);
3163  [propget, id(7), helpstring("Border width")] HRESULT BorderWidth([out, retval] FLOAT * val);
3165  [propput, id(7), helpstring("Border width")] HRESULT BorderWidth([in] FLOAT val);
3167  [propget, id(8), helpstring("River width")] HRESULT RiverWidth([out, retval] FLOAT * val);
3169  [propput, id(8), helpstring("River width")] HRESULT RiverWidth([in] FLOAT val);
3170 
3172  [propget, id(9), helpstring("Show or hide")] HRESULT Show([out, retval] VARIANT_BOOL * val);
3174  [propput, id(9), helpstring("Show or hide")] HRESULT Show([in] VARIANT_BOOL val);
3175 
3177  [id(10), helpstring("Get an identical copy of this object")] HRESULT Copy([out,retval] IWVSDisplaySettings** pVal);
3178 
3180  [propget, id(11), helpstring("Outline colour of the lake")] HRESULT LakeOutlineColour([out, retval] DWORD * val);
3182  [propput, id(11), helpstring("Outline colour of the lake")] HRESULT LakeOutlineColour([in] DWORD val);
3184  [propget, id(12), helpstring("Lake outline width")] HRESULT LakeOutlineWidth([out, retval] FLOAT * val);
3186  [propput, id(12), helpstring("Lake outline width")] HRESULT LakeOutlineWidth([in] FLOAT val);
3187 
3189  [propget, id(13), helpstring("Fill colour of Antarctica")] HRESULT AntarcticaColour([out, retval] DWORD * val);
3191  [propput, id(13), helpstring("Fill colour of Antarctica")] HRESULT AntarcticaColour([in] DWORD val);
3193  [propget, id(14), helpstring("Outline colour of Antarctica")] HRESULT AntarcticaOutlineColour([out, retval] DWORD * val);
3195  [propput, id(14), helpstring("Outline colour of Antarctica")] HRESULT AntarcticaOutlineColour([in] DWORD val);
3196 
3197 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3198  [id(15), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3199 #endif
3200 };
3201 
3204 [
3205  object,
3206  uuid(cb25f688-7cb6-11e1-8889-0024e84637be),
3207  dual,
3208  helpstring("IGridPen Interface"),
3209  nonextensible,
3210  pointer_default(unique),
3211  hidden
3212 ]
3213 interface IGridPen : IDispatch
3214 {
3216  [propget, id(1), helpstring("Grid line colour")] HRESULT Colour([out, retval] DWORD * val);
3218  [propput, id(1), helpstring("Grid line colour")] HRESULT Colour([in] DWORD val);
3220  [propget, id(2), helpstring("Grid line width")] HRESULT Width([out, retval] FLOAT * val);
3222  [propput, id(2), helpstring("Grid line width")] HRESULT Width([in] FLOAT val);
3224  [propget, id(3), helpstring("Grid line style")] HRESULT Style([out, retval] enum PenStyle * val);
3226  [propput, id(3), helpstring("Grid line style")] HRESULT Style([in] enum PenStyle val);
3228  [propget, id(4), helpstring("Show or hide")] HRESULT Show([out, retval] VARIANT_BOOL * val);
3230  [propput, id(4), helpstring("Show or hide")] HRESULT Show([in] VARIANT_BOOL val);
3232  [id(5), helpstring("Get an identical copy of this object")] HRESULT Copy([out,retval] IGridPen** pVal);
3233 
3234 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3235  [id(6), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3236 #endif
3237 };
3238 
3240 
3242 [
3243  object,
3244  uuid(cb25f686-7cb6-11e1-8889-0024e84637be),
3245  dual,
3246  helpstring("IGridDisplaySettings Interface"),
3247  nonextensible,
3248  pointer_default(unique),
3249  hidden
3250 ]
3252 {
3254  [propget, id(1), helpstring("Get primary grid pen")] HRESULT GridPen1([out, retval] IGridPen ** val);
3256  [propput, id(1), helpstring("Set primary grid pen")] HRESULT GridPen1([in] IGridPen * val);
3258  [propget, id(2), helpstring("Get secondary grid pen")] HRESULT GridPen2([out, retval] IGridPen ** val);
3260  [propput, id(2), helpstring("Set secondary grid pen")] HRESULT GridPen2([in] IGridPen * val);
3262  [propget, id(3), helpstring("Get tertiary grid pen")] HRESULT GridPen3([out, retval] IGridPen ** val);
3264  [propput, id(3), helpstring("Set tertiary grid pen")] HRESULT GridPen3([in] IGridPen * val);
3266  [propget, id(4), helpstring("Show or hide the grid")] HRESULT Show([out, retval] VARIANT_BOOL * val);
3268  [propput, id(4), helpstring("Show or hide the grid")] HRESULT Show([in] VARIANT_BOOL val);
3270  [propget, id(5), helpstring("Label colour")] HRESULT LabelColour([out, retval] DWORD * val);
3272  [propput, id(5), helpstring("Label colour")] HRESULT LabelColour([in] DWORD val);
3274  [propget, id(6), helpstring("Show or hide labels")] HRESULT ShowLabels([out, retval] VARIANT_BOOL * val);
3276  [propput, id(6), helpstring("Show or hide labels")] HRESULT ShowLabels([in] VARIANT_BOOL val);
3278  [id(7), helpstring("Get an identical copy of this object")] HRESULT Copy([out,retval] IGridDisplaySettings** pVal);
3279 
3280 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3281  [id(8), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3282 #endif
3283 };
3284 
3286 
3287 
3289 
3290 [
3291  object,
3292  uuid(cb25f64f-7cb6-11e1-8889-0024e84637be),
3293  dual,
3294  helpstring("IS57ManagerInitialisationData Interface"),
3295  nonextensible,
3296  pointer_default(unique),
3297  hidden
3298 ]
3300 {
3302  [propget, id(1), helpstring("Senc path")] HRESULT SencPath([out, retval] BSTR * val);
3304  [propput, id(1), helpstring("Senc path")] HRESULT SencPath([in] BSTR val);
3306 
3307  [propget, id(2), helpstring("Presentation Library file name and extension")] HRESULT PresentationLibraryFileName([out, retval] BSTR * val);
3309 
3310  [propput, id(2), helpstring("Presentation Library file name and extension")] HRESULT PresentationLibraryFileName([in] BSTR val);
3312 
3313  [propget, id(3), helpstring("Colours and RGB values of those colours")] HRESULT ColourValues([out, retval] IS57ColourValues ** pVal);
3315 
3316  [propput, id(3), helpstring("Colours and RGB values of those colours")] HRESULT ColourValues([in] IS57ColourValues * pVal);
3318  [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);
3320  [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);
3322  [propget, id(5), helpstring("WVS path")] HRESULT WVSPath([out, retval] BSTR * val);
3324  [propput, id(5), helpstring("WVS path")] HRESULT WVSPath([in] BSTR val);
3325 
3326 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3327  [id(6), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3328 #endif
3329 };
3330 
3331 
3333 [
3334  object,
3335  uuid(cb25f650-7cb6-11e1-8889-0024e84637be),
3336  dual,
3337  helpstring("IS57Manager Interface"),
3338  nonextensible,
3339  pointer_default(unique),
3340  hidden
3341 ]
3343 {
3345  [id(1), helpstring("Associate this manager with a specified folder")] HRESULT OpenSenc([in] ILibrary * EncXLibrary, [in] BSTR sSencFolder);
3347  [id(3), helpstring("Dissociate from the current folder")] HRESULT CloseSenc(void);
3349 
3351  [propget, id(4), helpstring("Obtain a collection of the cells in the Senc that cannot be used")] HRESULT UnusedCells([out, retval] IS57CellIdentifiers ** pVal);
3352 
3353  // removed id(5) Providers property
3354 
3356 
3358  [propget, id(6), helpstring("Obtain the collection of S-57 products currently present in this SENC")] HRESULT InstalledProducts([out, retval] IS57ProductAndUsages ** pVal);
3359 
3361 
3364  [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);
3366  [id(8), helpstring("Details of a cell.")] HRESULT CellInfo([in] IS57CellIdentifier * piCellID, [out, retval] IS57CellInfo ** pVal);
3368  [id(9), helpstring("ObjectClass (a.k.a. Type) of a feature")] HRESULT ObjectClass([in] IS57FeatureIdentifier * fid, [out, retval] IS57ObjectClass ** pVal);
3370  [id(10), helpstring("Geometry of a feature")] HRESULT Geometry([in] IS57FeatureIdentifier * pifid, [out, retval] enum S57FeatureGeometry* pVal);
3372 
3373  [id(11), helpstring("Details of any Feature")] HRESULT FeatureInfo([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureInfo ** pVal);
3375 
3376  [id(12), helpstring("Details of a point feature")] HRESULT FeatureInfoPoint([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeaturePoint ** pVal);
3378 
3379  [id(13), helpstring("Details of a line feature")] HRESULT FeatureInfoLine([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureLine ** pVal);
3381 
3382  [id(14), helpstring("Details of an area feature")] HRESULT FeatureInfoArea([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureArea ** pVal);
3384 
3388  [id(15), helpstring("method FeatureInfoSounding")] HRESULT FeatureInfoSounding([in] IS57FeatureIdentifier * pifid, [out,retval] IS57FeatureSounding ** pVal);
3390  [id(16), helpstring("Invoke the CherSoft Windows application that installs and updates ENC cells in the SENC")] HRESULT RunInstallApplication([in] BSTR pathToApplication);
3391 
3393  [id(17), helpstring("Associate this manager with a specified folder")] HRESULT OpenSenc2([in] ILibrary * EncXLibrary, [in] IS57ManagerInitialisationData * p);
3394 
3396  [id(18), helpstring("Associate this manager with a specified SENC folder and WVS")] HRESULT OpenSencAndWVS([in] ILibrary * EncXLibrary, [in] BSTR sSencFolder, [in] BSTR sWVSFileOrFolder);
3397 
3399  [id(23), helpstring("The ENC user permit needed to buy commercial ENC chart data"), restricted] HRESULT UserPermit([out, retval] BSTR* pUserPermit);
3400 
3402  [id(24), helpstring("method IsValidSencFolder")] HRESULT IsValidSencFolder([in] BSTR sPath, [out, retval] VARIANT_BOOL * bRes);
3404  [id(25), helpstring("method CreateSencFolder")] HRESULT CreateSencFolder([in] BSTR sPath);
3405 
3406 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3407  [id(28), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3408 #endif
3409 };
3410 
3412 [
3413  object,
3414  uuid(cb25f651-7cb6-11e1-8889-0024e84637be),
3415  dual,
3416  helpstring("IS57FeatureQuery Interface"),
3417  nonextensible,
3418  pointer_default(unique),
3419  hidden
3420 ]
3422 {
3424  [id(1), helpstring("method Construct")] HRESULT Construct([in] IS57Manager * manager, [in] IS57CellIdentifier * cellid);
3426  [id(2), helpstring("method SetAreaFilter")] HRESULT SetAreaFilter([in] IGeoRect * rect);
3428 
3432  [id(3), helpstring("method SetFeatureFilter")] HRESULT SetFeatureFilter([in] IS57FeatureIdentifiers * featureIds, [in] VARIANT_BOOL bInclude);
3434 
3438  [id(4), helpstring("method SetObjectFilter")] HRESULT SetObjectFilter([in] IS57ObjectClassCollection * ObjectClassCollection, [in] VARIANT_BOOL bInclude);
3440  [propget, id(5), helpstring("property Results")] HRESULT Results([out, retval] IS57FeatureIdentifiers ** pVal);
3441 };
3442 
3444 [
3445  object,
3446  uuid(cb25f652-7cb6-11e1-8889-0024e84637be),
3447  dual,
3448  helpstring("IS57CatalogueObserver Interface"),
3449  nonextensible,
3450  pointer_default(unique),
3451  hidden
3452 ]
3454 {
3456  [id(1), helpstring("method Register")] HRESULT Register([in] IS57Manager * s57Mgr);
3458  [id(2), helpstring("method Unregister")] HRESULT Unregister(void);
3459 
3460 };
3461 
3463 
3465 
3466 [
3467  object,
3468  uuid(cb25f69a-7cb6-11e1-8889-0024e84637be),
3469  dual,
3470  nonextensible,
3471  pointer_default(unique)
3472 ]
3474 {
3475  [id(1)] HRESULT Add([in] enum VPFFeatureType t);
3476  [id(2)] HRESULT Remove([in] enum VPFFeatureType t);
3477  [id(3)] HRESULT Contains([in] enum VPFFeatureType t, [out, retval] VARIANT_BOOL * pVal);
3478 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3479  [id(4), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3480 #endif
3481 };
3482 
3484 
3485 [
3486  object,
3487  uuid(cb25f6a0-7cb6-11e1-8889-0024e84637be),
3488  dual,
3489  nonextensible,
3490  pointer_default(unique)
3491 ]
3493 {
3494  [propget, id(1), helpstring("property Name")] HRESULT Name([out, retval] BSTR* pVal);
3495  [propget, id(2), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pVal);
3496  [propget, id(3), helpstring("property Use")] HRESULT Use([out, retval] VARIANT_BOOL* pVal);
3497  [propput, id(3), helpstring("property Use")] HRESULT Use([in] VARIANT_BOOL val);
3498  [propget, id(4), helpstring("property TopologicalLevel")] HRESULT TopologicalLevel([out, retval] LONG* pVal);
3499 };
3500 
3502 
3503 [
3504  object,
3505  uuid(cb25f69e-7cb6-11e1-8889-0024e84637be),
3506  dual,
3507  nonextensible,
3508  pointer_default(unique)
3509 ]
3511 {
3512  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out, retval] IVPFIteratorGuide_CoverageUse ** pp);
3513  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
3514  [propget, id(2), helpstring("property Name")] HRESULT Name([out, retval] BSTR* pVal);
3515  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
3516  [propget, id(3), helpstring("property Use")] HRESULT Use([out, retval] VARIANT_BOOL* pVal);
3517  [propput, id(3), helpstring("property Use")] HRESULT Use([in] VARIANT_BOOL val);
3519  [propget, id(4), helpstring("property Extent")] HRESULT Extent([out, retval] IGeoRect ** pVal);
3520 };
3521 
3523 
3524 [
3525  object,
3526  uuid(cb25f69c-7cb6-11e1-8889-0024e84637be),
3527  dual,
3528  nonextensible,
3529  pointer_default(unique)
3530 ]
3532 {
3533  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out, retval] IVPFIteratorGuide_LibraryUse ** pp);
3534  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
3535  [propget, id(2), helpstring("property Name")] HRESULT Name([out, retval] BSTR* pVal);
3536  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
3537  [propget, id(3), helpstring("property Use")] HRESULT Use([out, retval] VARIANT_BOOL* pVal);
3538  [propput, id(3), helpstring("property Use")] HRESULT Use([in] VARIANT_BOOL val);
3539 };
3540 
3542 
3543 [
3544  object,
3545  uuid(cb25f696-7cb6-11e1-8889-0024e84637be),
3546  dual,
3547  nonextensible,
3548  pointer_default(unique)
3549 ]
3551 {
3552  [propget, id(0), helpstring("property Item")] HRESULT Item([in] VARIANT vtIndex, [out, retval] IVPFIteratorGuide_DatabaseUse ** pp);
3553  [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
3554  [propget, id(-4), helpstring("property _NewEnum"), restricted] HRESULT _NewEnum([out, retval] IUnknown** pVal);
3555 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3556  [id(2), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3557 #endif
3558 };
3559 
3561 
3562 [
3563  object,
3564  uuid(cb25f694-7cb6-11e1-8889-0024e84637be),
3565  dual,
3566  nonextensible,
3567  pointer_default(unique)
3568 ]
3570 {
3572 
3575  [propget, id(1), helpstring("property TwoColourShadingForDepthZones")] HRESULT TwoColourShadingForDepthZones([out, retval] VARIANT_BOOL* pVal);
3577 
3580  [propput, id(1), helpstring("property TwoColourShadingForDepthZones")] HRESULT TwoColourShadingForDepthZones([in] VARIANT_BOOL newVal);
3581 
3583  [propget, id(2), helpstring("property ShallowPattern")] HRESULT ShallowPattern([out, retval] VARIANT_BOOL* pVal);
3585  [propput, id(2), helpstring("property ShallowPattern")] HRESULT ShallowPattern([in] VARIANT_BOOL newVal);
3586 
3588  [propget, id(3), helpstring("property SimplifiedSymbols")] HRESULT SimplifiedSymbols([out, retval] VARIANT_BOOL* pVal);
3590  [propput, id(3), helpstring("property SimplifiedSymbols")] HRESULT SimplifiedSymbols([in] VARIANT_BOOL newVal);
3591 
3592 
3594  [propget, id(9), helpstring("property SafetyContourMetres")] HRESULT SafetyContourMetres([out, retval] DOUBLE* pVal);
3596  [propput, id(9), helpstring("property SafetyContourMetres")] HRESULT SafetyContourMetres([in] DOUBLE newVal);
3598  [propget, id(10), helpstring("property ShallowContourMetres")] HRESULT ShallowContourMetres([out, retval] DOUBLE* pVal);
3600  [propput, id(10), helpstring("property ShallowContourMetres")] HRESULT ShallowContourMetres([in] DOUBLE newVal);
3602  [propget, id(11), helpstring("property DeepContourMetres")] HRESULT DeepContourMetres([out, retval] DOUBLE* pVal);
3604  [propput, id(11), helpstring("property DeepContourMetres")] HRESULT DeepContourMetres([in] DOUBLE newVal);
3605 
3607  [propget, id(30), helpstring("property CompilationScaleZoomFactor")] HRESULT CompilationScaleZoomFactor([out, retval] DOUBLE* pVal);
3609  [propput, id(30), helpstring("property CompilationScaleZoomFactor")] HRESULT CompilationScaleZoomFactor([in] DOUBLE nVal);
3610 
3612  [id(31), helpstring("Get an identical copy of this object")] HRESULT Copy([out, retval] IVPFDisplaySettings** pVal);
3613 
3615  [propget, id(32), helpstring("The types of features to draw")] HRESULT FeatureSet([out, retval] IVPFFeatureSet ** pVal);
3617  [propput, id(32), helpstring("The types of features to draw")] HRESULT FeatureSet([in] IVPFFeatureSet * newVal);
3618 
3619 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3620  [id(41), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3621 #endif
3622 };
3623 
3625 
3626 [
3627  object,
3628  uuid(cb25f692-7cb6-11e1-8889-0024e84637be),
3629  dual,
3630  nonextensible,
3631  pointer_default(unique)
3632 ]
3634 {
3636  [id(1), helpstring("Associate this manager with a specified folder")] HRESULT OpenVenc([in] ILibrary * EncXLibrary, [in] BSTR chartFolder);
3638  [id(2), helpstring("Dissociate from the current folder")] HRESULT CloseVenc(void);
3640  [id(3), helpstring("Invoke the CherSoft Windows application that installs and updates VPF files")] HRESULT RunInstallApplication([in] BSTR pathToApplication);
3641 
3643  [propget, id(4), helpstring("The iterator guide")] HRESULT IteratorGuide([out, retval] IVPFIteratorGuide ** pVal);
3644 
3645 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3646  [id(141), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3647 #endif
3648 };
3649 
3651 [
3652  object,
3653  uuid(cb25f6a2-7cb6-11e1-8889-0024e84637be),
3654  dual,
3655  helpstring("IVPFCatalogueObserver Interface"),
3656  nonextensible,
3657  pointer_default(unique),
3658  hidden
3659 ]
3661 {
3663  [id(1), helpstring("method Register")] HRESULT Register([in] IVPFManager * vpfMgr);
3665  [id(2), helpstring("method Unregister")] HRESULT Unregister(void);
3666 
3667 };
3668 
3670 
3671 [
3672  object,
3673  uuid(cb25f653-7cb6-11e1-8889-0024e84637be),
3674  dual,
3675  helpstring("IS57Draw Interface"),
3676  nonextensible,
3677  pointer_default(unique),
3678  hidden
3679 ]
3680 interface IS57Draw : IDispatch
3681 {
3683  [id(1), helpstring("method SetManager")] HRESULT SetManager([in] IS57Manager * pMgr);
3685  [id(2), helpstring("Draw the chart to the specified device context")] HRESULT Draw([in] OLE_HANDLE lHDC);
3687  [propget, id(3), helpstring("The nominal scale of the chart")] HRESULT DisplayScale([out, retval] LONG* pVal);
3689 
3694  [id(4), helpstring("The nominal scale of the chart")] HRESULT SetDisplayScale([in] LONG nDisplayScale, [in] IPixelPoint * ipPixelPt);
3695 
3697 
3709  [id(7), helpstring("Obtain the sensible next scale in the specified direction")] HRESULT CalculateNewDisplayScale(
3710  [out] VARIANT_BOOL* pbAllowed, //<! Whether the output scale is within the range allowed by %ENCX
3711  [out] LONG* pnScaleOut, //<! The new suggested scale
3712  [in] LONG nScaleOld, //<! The old scale. Typically IS57Draw::DisplayScale()
3713  [in] LONG nChange, //<! The number of steps and direction to go from the old scale. Positive for more detailed scale.
3714  [in] LONG nSmallestChangeAllowed //<! The minimum number of steps to go from the old scale.
3715  );
3717 
3719  [propget, id(8), helpstring("Obtain the geopix")] HRESULT GeoPix([out, retval] IGeoPix ** pVal);
3721 
3722  [id(9), helpstring("method SetDrawLayerCallback")] HRESULT SetDrawLayerCallback(
3723  [in] enum S57CallBackDrawAction callBackDrawAction,
3724  [in] IS57ProductAndUsage * iproductAndUsage,
3725  [in] BYTE Layer
3726  );
3728 
3731  [propget, id(10), helpstring("Obtain the geographical position of the centre of the drawing surface")] HRESULT PositionOfCentre([out, retval] IGeoPoint ** geoPoint);
3733  [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);
3735  [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);
3737  [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);
3739  [propput, id(13), helpstring("The display settings control the symbolisation (drawing style) and what types of object are drawn")] HRESULT DisplaySettings([in] IS57DisplaySettings * newVal);
3741 
3742  [propget, id(14), helpstring("The nominal size of a pixel")] HRESULT PixelSizeMetres([out, retval] DOUBLE* sz);
3744 
3745  [propput, id(14), helpstring("The nominal size of a pixel")] HRESULT PixelSizeMetres([in] DOUBLE sz);
3747  [propget, id(15), helpstring("The geographical orientation of the drawing surface")] HRESULT DirectionOfUp([out, retval] DOUBLE* pVal);
3749  [id(16), helpstring("The geographical orientation of the drawing surface")] HRESULT SetDirectionOfUp([in] DOUBLE degrees, [in] IPixelPoint * ipPixelPt, [out, retval] VARIANT_BOOL* pVal);
3750 
3752 
3755  [propget, id(17), helpstring("property GeoExtent")] HRESULT GeoExtent([out, retval] IGeoRect ** pVal);
3756 
3757  [id(18), helpstring("method FeaturesAtPoint")] HRESULT FeaturesAtPoint([in] IPixelPoint * pixelPt, [out, retval] IS57DrawnFeatures ** pVal);
3759  [propget, id(19), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([out, retval] IDisplayPalette ** pVal);
3761  [propput, id(19), helpstring("The colour scheme for the chart")] HRESULT DisplayPalette([in] IDisplayPalette * newVal);
3763 
3764  [propget, id(20), helpstring("property ShowPreviousCells")] HRESULT ShowPreviousCells([out, retval] VARIANT_BOOL* pVal);
3766 
3767  [propput, id(20), helpstring("property ShowPreviousCells")] HRESULT ShowPreviousCells([in] VARIANT_BOOL newVal);
3769 
3776  [id(22), helpstring("Adjusts the origin used when filling an area with symbols")] HRESULT AdjustAreaSymbolOffsets([in] LONG cx, [in] LONG cy);
3777 
3779  [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);
3780 
3782  [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);
3784  [id(25), helpstring("Set the size of the image that will be drawn")] HRESULT SetSize([in] IPixelSize* sz);
3785 
3787  [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);
3788 
3789 
3790  // RESERVE ID 27 FOR DEPTH AT GEOPOINT PROPERTY OR METHOD
3791 
3792 
3794  [propget, id(28), helpstring("Projection")] HRESULT ProjectionType([out, retval] enum S57Projection * projection);
3796  [propput, id(28), helpstring("Projection")] HRESULT ProjectionType([in] enum S57Projection projection);
3797 
3799  [propget, id(29), helpstring("Scalebar")] HRESULT Scalebar([out, retval] enum ScaleBarUnits * pVal);
3801  [propput, id(29), helpstring("Scalebar")] HRESULT Scalebar([in] enum ScaleBarUnits newVal);
3802 
3804  [propget, id(30), helpstring("Draw grid (deprecated)")] HRESULT DrawGrid([out, retval] VARIANT_BOOL * pVal);
3806  [propput, id(30), helpstring("Draw grid (deprecated)")] HRESULT DrawGrid([in] VARIANT_BOOL pVal);
3807 
3809  [propget, id(31), helpstring("The display settings control the symbolisation for single file World Vector Shoreline")] HRESULT WVSDisplaySettings([out, retval] IWVSDisplaySettings ** pVal);
3811  [propput, id(31), helpstring("The display settings control the symbolisation for single file World Vector Shoreline")] HRESULT WVSDisplaySettings([in] IWVSDisplaySettings * newVal);
3812 
3814  [propget, id(32), helpstring("The display settings control the drawing of the grid")] HRESULT GridDisplaySettings([out, retval] IGridDisplaySettings ** pVal);
3816  [propput, id(32), helpstring("The display settings control the drawing of the grid")] HRESULT GridDisplaySettings([in] IGridDisplaySettings * newVal);
3817 
3819  [id(33), helpstring("Highlight Feature")] HRESULT HighlightFeature([in] IS57FeatureIdentifier * featureId, [in] VARIANT_BOOL bClear);
3821  [id(34), helpstring("Highlight Sounding")] HRESULT HighlightSounding([in] IS57FeatureIdentifier * featureId, [in] double depthMetres, [in] VARIANT_BOOL bClear);
3822 
3823 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3824  [id(35), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3825 #endif
3826 
3828  [propget, id(36), helpstring("property BackgroundColour")] HRESULT BackgroundColour([out, retval] DWORD * colour);
3830  [propput, id(36), helpstring("property BackgroundColour")] HRESULT BackgroundColour([in] DWORD colour);
3831 
3833  [id(37), helpstring("method SetVPFManager")] HRESULT SetVPFManager([in] IVPFManager * pMgr);
3834 
3836  [id(38), helpstring("method VPFFeaturesAtPoint")] HRESULT VPFFeaturesAtPoint([in] IPixelPoint * pixelPt, [out, retval] BSTR * pXML);
3838  [id(39), helpstring("method VPFCoverageAtPoint")] HRESULT VPFCoveragesAtPoint([in] IPixelPoint * pixelPt, [out, retval] BSTR * pXML);
3839 
3841  [propget, id(40), helpstring("The VPF display settings")] HRESULT VPFDisplaySettings([out, retval] IVPFDisplaySettings ** pVal);
3843  [propput, id(40), helpstring("The VPF display settings")] HRESULT VPFDisplaySettings([in] IVPFDisplaySettings * newVal);
3844 
3846  [propget, id(41), helpstring("ScalebarDetailedMode")] HRESULT ScalebarDetailedMode([out, retval] enum SBDetailedMode * scale);
3848  [propput, id(41), helpstring("ScalebarDetailedMode")] HRESULT ScalebarDetailedMode([in] enum SBDetailedMode scale);
3849 };
3850 
3852 
3853 [
3854  object,
3855  uuid(cb25f67f-7cb6-11e1-8889-0024e84637be),
3856  dual,
3857  helpstring("IHTMLGenerator Interface"),
3858  nonextensible,
3859  pointer_default(unique),
3860  hidden
3861 ]
3863 {
3865  [id(1), helpstring("Set-up the generator for S-57 properties at point")] HRESULT S57PropertiesAtPoint([in] IS57Draw* s57draw, [in] IPixelPoint * pixelPt);
3866 
3868  [id(2), helpstring("Set the event for HTML")] HRESULT ProcessEvent([in] BSTR sEvent, [out, retval] enum HTMLAction * action);
3869 
3871  [id(3), helpstring("Get the HTML")] HRESULT HTML([in] BSTR sUrl, [out, retval] BSTR * pHtml);
3872 };
3873 
3875 
3876 [
3877  object,
3878  uuid(cb25f690-7cb6-11e1-8889-0024e84637be),
3879  dual,
3880  helpstring("IRouteCheck Interface"),
3881  nonextensible,
3882  pointer_default(unique),
3883  hidden
3884 ]
3886 {
3888  [id(1), helpstring("Check the route")] HRESULT Check([in] IGeoPoints * geoPoints, [in] enum GeoLineType lineType, [in] double safetyContourMetres, [in] double safetyDistanceMetres, [in] IS57Manager * manager, [out, retval] BSTR * xml);
3889 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3890  [id(2), hidden, restricted] HRESULT Address([out, retval] DWORD_PTR * pVal);
3891 #endif
3893  [propget, id(3), helpstring("Check line features within safety distance")] HRESULT CheckLinesWithinSafetyDistance([out, retval] VARIANT_BOOL * pVal);
3895  [propput, id(3), helpstring("Check line features within safety distance")] HRESULT CheckLinesWithinSafetyDistance([in] VARIANT_BOOL pVal);
3897  [propget, id(4), helpstring("Check area features within safety distance")] HRESULT CheckAreasWithinSafetyDistance([out, retval] VARIANT_BOOL * pVal);
3899  [propput, id(4), helpstring("Check area features within safety distance")] HRESULT CheckAreasWithinSafetyDistance([in] VARIANT_BOOL pVal);
3900 };
3901 
3903 
3905 
3909 [
3910  uuid(cb25f5f4-7cb6-11e1-8889-0024e84637be),
3911  version(3.0),
3912  helpstring("CherSoft ENCX 3.0 Type Library")
3913 ]
3914 library ENCX
3915 {
3916 #if !defined DOXYGEN_SHOULD_SKIP_THIS
3917  importlib("stdole2.tlb");
3918  importlib("mscorlib.tlb");
3919 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
3920 
3921 
3923 
3935  [
3936  uuid(cb25f5f5-7cb6-11e1-8889-0024e84637be),
3937  helpstring("Library Class")
3938  ]
3939  coclass Library
3940  {
3941  [default] interface ILibrary;
3942  };
3943 
3945 
3949  [
3950  uuid(cb25f5f6-7cb6-11e1-8889-0024e84637be),
3951  helpstring("DisplayPalette Class")
3952  ]
3954  {
3955  [default] interface IDisplayPalette;
3956  };
3957 
3959  [
3960  uuid(cb25f654-7cb6-11e1-8889-0024e84637be),
3961  helpstring("Events from DongleObserver"),
3962  hidden
3963  ]
3965  {
3966  properties:
3967  methods:
3969  [id(1), helpstring("method OnDongleChangeEvt")] HRESULT OnDongleChangeEvt(void);
3970  };
3971 
3973 
3976  [
3977  uuid(cb25f656-7cb6-11e1-8889-0024e84637be),
3978  helpstring("A security device")
3979  ]
3981  {
3982  [default] interface IDongleObserver;
3983  [default, source] dispinterface _IDongleObserverEvents;
3984  };
3985 
3987 
3988  [
3989  uuid(cb25f5f7-7cb6-11e1-8889-0024e84637be),
3990  helpstring("GeoPoint Class")
3991  ]
3992  coclass GeoPoint
3993  {
3994  [default] interface IGeoPoint;
3995  interface ICloneable;
3996  };
3997 
3999 
4000  [
4001  uuid(cb25f5f8-7cb6-11e1-8889-0024e84637be),
4002  helpstring("Collection of GeoPoint")
4003  ]
4004  coclass GeoPoints
4005  {
4006  [default] interface IGeoPoints;
4007  interface ICloneable;
4008  };
4009 
4011 
4012  [
4013  uuid(cb25f5f9-7cb6-11e1-8889-0024e84637be),
4014  helpstring("GeoArea Class")
4015  ]
4016  coclass GeoArea
4017  {
4018  [default] interface IGeoArea;
4019  };
4020 
4022 
4023  [
4024  uuid(cb25f5fa-7cb6-11e1-8889-0024e84637be),
4025  helpstring("GeoRect Class")
4026  ]
4027  coclass GeoRect
4028  {
4029  [default] interface IGeoRect;
4030  };
4031 
4033 
4034  [
4035  uuid(cb25f5fb-7cb6-11e1-8889-0024e84637be),
4036  helpstring("GeoLine Class")
4037  ]
4038  coclass GeoLine
4039  {
4040  [default] interface IGeoLine;
4041  };
4042 
4044 
4050 #if !defined(UDE_ENC_ONLY)
4051  [
4052  uuid(cb25f657-7cb6-11e1-8889-0024e84637be),
4053  helpstring("RasManager Class")
4054  ]
4055  coclass RasManager
4056  {
4057  [default] interface IRasManager;
4058  };
4059 
4061  [
4062  uuid(cb25f658-7cb6-11e1-8889-0024e84637be),
4063  helpstring("Events from RasCatalogueObserver"),
4064  hidden
4065  ]
4067  {
4068  properties:
4069  methods:
4071  [id(1), helpstring("Occurs when the contents of the raster chart folder has changed. Redraw everything.")] HRESULT OnChanged();
4072  };
4073 
4075 
4077  [
4078  uuid(cb25f659-7cb6-11e1-8889-0024e84637be),
4079  helpstring("RasCatalogueObserver Class")
4080  ]
4082  {
4083  [default] interface IRasCatalogueObserver;
4084  [default, source] dispinterface _IRasCatalogueObserverEvents;
4085  };
4086 
4088 
4090  [
4091  uuid(cb25f67a-7cb6-11e1-8889-0024e84637be),
4092  helpstring("RasChartPanelIdentifier Class")
4093  ]
4095  {
4096  [default] interface IRasChartPanelIdentifier;
4097  };
4098 
4100 
4111  [
4112  uuid(cb25f67b-7cb6-11e1-8889-0024e84637be),
4113  helpstring("RasDraw Class")
4114  ]
4115  coclass RasDraw
4116  {
4117  [default] interface IRasDraw;
4118  };
4119 #endif
4120 
4122  // S57 classes
4124 
4126  [
4127  uuid(cb25f5fc-7cb6-11e1-8889-0024e84637be),
4128  helpstring("Events from S57CatalogueObserver"),
4129  hidden
4130  ]
4132  {
4133  properties:
4134  methods:
4135  // Occurs when the contents of the S-57 SENC has changed. Redraw everything.
4136  [id(1), helpstring("Occurs when the contents of the S-57 SENC has changed. Redraw everything.")] HRESULT OnChanged();
4137  };
4138 
4140 
4143  [
4144  uuid(cb25f5fd-7cb6-11e1-8889-0024e84637be),
4145  helpstring("S57CatalogueObserver Class")
4146  ]
4148  {
4149  [default] interface IS57CatalogueObserver;
4150  [default, source] dispinterface _IS57CatalogueObserverEvents;
4151  };
4152 
4154 
4157  [
4158  uuid(cb25f5fe-7cb6-11e1-8889-0024e84637be),
4159  helpstring("S57CellIdentifier Class")
4160  ]
4162  {
4163  [default] interface IS57CellIdentifier;
4164  };
4165 
4167 
4168  [
4169  uuid(cb25f5ff-7cb6-11e1-8889-0024e84637be),
4170  helpstring("S57CellIdentifiers Class")
4171  ]
4173  {
4174  [default] interface IS57CellIdentifiers;
4175  };
4176 
4178 
4179  [
4180  uuid(cb25f60d-7cb6-11e1-8889-0024e84637be),
4181  helpstring("S57Colour Class"),
4182  ]
4183  coclass S57Colour
4184  {
4185  [default] interface IS57Colour;
4186  };
4187 
4189 
4190  [
4191  uuid(cb25f610-7cb6-11e1-8889-0024e84637be),
4192  helpstring("S57ColourValue Class"),
4193  ]
4195  {
4196  [default] interface IS57ColourValue;
4197  };
4198 
4200 
4201  [
4202  uuid(cb25f60e-7cb6-11e1-8889-0024e84637be),
4203  helpstring("S57ColourValues Class"),
4204  ]
4206  {
4207  [default] interface IS57ColourValues;
4208  };
4209 
4211 
4215  [
4216  uuid(cb25f600-7cb6-11e1-8889-0024e84637be),
4217  helpstring("S57ProductAndUsage Class")
4218  ]
4220  {
4221  [default] interface IS57ProductAndUsage;
4222  };
4223 
4225 
4226  [
4227  uuid(cb25f601-7cb6-11e1-8889-0024e84637be),
4228  helpstring("S57ProductAndUsages Class")
4229  ]
4231  {
4232  [default] interface IS57ProductAndUsages;
4233  };
4234 
4236 
4237  [
4238  uuid(cb25f602-7cb6-11e1-8889-0024e84637be),
4239  helpstring("S57ObjectClass Class")
4240  ]
4242  {
4243  [default] interface IS57ObjectClass;
4244  };
4245 
4247 
4248  [
4249  uuid(cb25f603-7cb6-11e1-8889-0024e84637be),
4250  helpstring("Collection of S57ObjectClass")
4251  ]
4253  {
4254  [default] interface IS57ObjectClassCollection;
4255  };
4256 
4258 
4259  [
4260  uuid(cb25f604-7cb6-11e1-8889-0024e84637be),
4261  helpstring("S57FeatureIdentifier Class")
4262  ]
4264  {
4265  [default] interface IS57FeatureIdentifier;
4266  };
4267 
4269 
4270  [
4271  uuid(cb25f605-7cb6-11e1-8889-0024e84637be),
4272  helpstring("S57FeatureIdentifiers Class")
4273  ]
4275  {
4276  [default] interface IS57FeatureIdentifiers;
4277  };
4278 
4280 
4286  [
4287  uuid(cb25f606-7cb6-11e1-8889-0024e84637be),
4288  helpstring("S57FeatureQuery Class")
4289  ]
4291  {
4292  [default] interface IS57FeatureQuery;
4293  };
4294 
4296  [
4297  uuid(cb25f60f-7cb6-11e1-8889-0024e84637be),
4298  helpstring("S57ManagerInitialisationData Class")
4299  ]
4301  {
4302  [default] interface IS57ManagerInitialisationData;
4303  };
4304 
4305 
4307 
4319  [
4320  uuid(cb25f607-7cb6-11e1-8889-0024e84637be),
4321  helpstring("S57Manager Class")
4322  ]
4323  coclass S57Manager
4324  {
4325  [default] interface IS57Manager;
4326  };
4327 
4329  [
4330  uuid(cb25f655-7cb6-11e1-8889-0024e84637be),
4331  helpstring("Events from S57Draw"),
4332  hidden
4333  ]
4334  dispinterface _IS57DrawEvents
4335  {
4336  properties:
4337  methods:
4339  [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);
4340  };
4341 
4342 
4344 
4357  [
4358  uuid(cb25f608-7cb6-11e1-8889-0024e84637be),
4359  helpstring("S57Draw Class")
4360  ]
4361  coclass S57Draw
4362  {
4363  [default] interface IS57Draw;
4364  [default, source] dispinterface _IS57DrawEvents;
4365  };
4366 
4368 
4371  [
4372  uuid(cb25f680-7cb6-11e1-8889-0024e84637be),
4373  helpstring("HTMLGenerator Class")
4374  ]
4376  {
4377  [default] interface IHTMLGenerator;
4378  };
4379 
4381 
4382  [
4383  uuid(cb25f60a-7cb6-11e1-8889-0024e84637be),
4384  helpstring("PixelPoint Class")
4385  ]
4386  coclass PixelPoint
4387  {
4388  [default] interface IPixelPoint;
4389  };
4390 
4392 
4393  [
4394  uuid(cb25f60b-7cb6-11e1-8889-0024e84637be),
4395  helpstring("PixelSize Class")
4396  ]
4397  coclass PixelSize
4398  {
4399  [default] interface IPixelSize;
4400  };
4401 
4402 
4404 
4405  [
4406  uuid(cb25f60c-7cb6-11e1-8889-0024e84637be),
4407  helpstring("PixelRect Class")
4408  ]
4409  coclass PixelRect
4410  {
4411  [default] interface IPixelRect;
4412  };
4413 
4414 
4416  // Non-creatable co-classes
4417  // These are here to tidy-up the interface so that the client programmer is not faced with IFoo.
4418  // The mere existence of these co-classes means that functions returning IFoo return Foo instead.
4419  // Note that there are no RGS files for these classes and the C++ code does not use them or their GUIDs at all.
4421 #if !defined DOXYGEN_SHOULD_SKIP_THIS
4422  // Dongle
4423  [
4424  uuid(cb25f67c-7cb6-11e1-8889-0024e84637be),
4425  helpstring("Dongle Class"),
4426  noncreatable
4427  ]
4428  coclass Dongle
4429  {
4430  [default] interface IDongle;
4431  };
4432 
4434 
4435  [
4436  uuid(cb25f609-7cb6-11e1-8889-0024e84637be),
4437  helpstring("S57DisplaySettings Class"),
4438  noncreatable
4439  ]
4440  coclass S57DisplaySettings
4441  {
4442  [default] interface IS57DisplaySettings;
4443  interface ICloneable;
4444  };
4445 
4446  // GeoHorizontalDatumInfo
4447  [
4448  uuid(cb25f67d-7cb6-11e1-8889-0024e84637be),
4449  helpstring("GeoHorizontalDatumInfo Class"),
4450  noncreatable
4451  ]
4452  coclass GeoHorizontalDatumInfo
4453  {
4454  [default] interface IGeoHorizontalDatumInfo;
4455  };
4456 
4457  // PixelPoints
4458  [
4459  uuid(cb25f65a-7cb6-11e1-8889-0024e84637be),
4460  helpstring("PixelPoints Class"),
4461  noncreatable
4462  ]
4463  coclass PixelPoints
4464  {
4465  [default] interface IPixelPoints;
4466  };
4467 
4468  // PolyLines
4469  [
4470  uuid(cb25f65b-7cb6-11e1-8889-0024e84637be),
4471  helpstring("PolyLines Class"),
4472  noncreatable
4473  ]
4474  coclass PolyLines
4475  {
4476  [default] interface IPolyLines;
4477  };
4478 
4479  // GeoPix
4480  [
4481  uuid(cb25f65c-7cb6-11e1-8889-0024e84637be),
4482  helpstring("GeoPix Class"),
4483  noncreatable
4484  ]
4485  coclass GeoPix
4486  {
4487  [default] interface IGeoPix;
4488  };
4489 
4490  // GeoPixCollection
4491  [
4492  uuid(cb25f65d-7cb6-11e1-8889-0024e84637be),
4493  helpstring("GeoPixCollection Class"),
4494  noncreatable
4495  ]
4496  coclass GeoPixCollection
4497  {
4498  [default] interface IGeoPixCollection;
4499  };
4500 
4501  // HorizontalDatum
4502  [
4503  uuid(cb25f65e-7cb6-11e1-8889-0024e84637be),
4504  helpstring("HorizontalDatum Class"),
4505  noncreatable
4506  ]
4507  coclass HorizontalDatum
4508  {
4509  [default] interface IHorizontalDatum;
4510  };
4511 
4512 #if !defined(UDE_ENC_ONLY)
4513  // RasCharts
4514  [
4515  uuid(cb25f65f-7cb6-11e1-8889-0024e84637be),
4516  helpstring("RasCharts Class"),
4517  noncreatable
4518  ]
4519  coclass RasCharts
4520  {
4521  [default] interface IRasCharts;
4522  };
4523 
4524  // RasDiscIdentity
4525  [
4526  uuid(cb25f660-7cb6-11e1-8889-0024e84637be),
4527  helpstring("RasDiscIdentity Class"),
4528  noncreatable
4529  ]
4530  coclass RasDiscIdentity
4531  {
4532  [default] interface IRasDiscIdentity;
4533  };
4534 
4535  // RasNoticeToMarinersNumber
4536  [
4537  uuid(cb25f661-7cb6-11e1-8889-0024e84637be),
4538  helpstring("RasNoticeToMarinersNumber Class"),
4539  noncreatable
4540  ]
4541  coclass RasNoticeToMarinersNumber
4542  {
4543  [default] interface IRasNoticeToMarinersNumber;
4544  };
4545 
4546  // RasNoticeToMariners
4547  [
4548  uuid(cb25f662-7cb6-11e1-8889-0024e84637be),
4549  helpstring("RasNoticeToMariners Class"),
4550  noncreatable
4551  ]
4552  coclass RasNoticeToMariners
4553  {
4554  [default] interface IRasNoticeToMariners;
4555  };
4556 
4557  // RasNoticesToMariners
4558  [
4559  uuid(cb25f663-7cb6-11e1-8889-0024e84637be),
4560  helpstring("RasNoticesToMariners Class"),
4561  noncreatable
4562  ]
4563  coclass RasNoticesToMariners
4564  {
4565  [default] interface IRasNoticesToMariners;
4566  };
4567 
4568  // RasPanelIdentifier
4569  [
4570  uuid(cb25f664-7cb6-11e1-8889-0024e84637be),
4571  helpstring("RasPanelIdentifier Class"),
4572  noncreatable
4573  ]
4574  coclass RasPanelIdentifier
4575  {
4576  [default] interface IRasPanelIdentifier;
4577  };
4578 
4579  // RasPanelIdentifiers
4580  [
4581  uuid(cb25f665-7cb6-11e1-8889-0024e84637be),
4582  helpstring("RasPanelIdentifiers Class"),
4583  noncreatable
4584  ]
4585  coclass RasPanelIdentifiers
4586  {
4587  [default] interface IRasPanelIdentifiers;
4588  };
4589 
4590  // RasChartPanelIdentifiers
4591  [
4592  uuid(cb25f666-7cb6-11e1-8889-0024e84637be),
4593  helpstring("RasChartPanelIdentifiers Class"),
4594  noncreatable
4595  ]
4596  coclass RasChartPanelIdentifiers
4597  {
4598  [default] interface IRasChartPanelIdentifiers;
4599  };
4600 
4601  // RasPanelInfo
4602  [
4603  uuid(cb25f667-7cb6-11e1-8889-0024e84637be),
4604  helpstring("RasPanelInfo Class"),
4605  noncreatable
4606  ]
4607  coclass RasPanelInfo
4608  {
4609  [default] interface IRasPanelInfo;
4610  };
4611 
4612  // RasChartInfo
4613  [
4614  uuid(cb25f668-7cb6-11e1-8889-0024e84637be),
4615  helpstring("RasChartInfo Class"),
4616  noncreatable
4617  ]
4618  coclass RasChartInfo
4619  {
4620  [default] interface IRasChartInfo;
4621  };
4622 
4623  // RasPanelNote
4624  [
4625  uuid(cb25f669-7cb6-11e1-8889-0024e84637be),
4626  helpstring("RasPanelNote Class"),
4627  noncreatable
4628  ]
4629  coclass RasPanelNote
4630  {
4631  [default] interface IRasPanelNote;
4632  };
4633 
4634  // RasPanelNotes
4635  [
4636  uuid(cb25f66a-7cb6-11e1-8889-0024e84637be),
4637  helpstring("RasPanelNotes Class"),
4638  noncreatable
4639  ]
4640  coclass RasPanelNotes
4641  {
4642  [default] interface IRasPanelNotes;
4643  };
4644 #endif
4645 
4646  // S57Attribute
4647  [
4648  uuid(cb25f66b-7cb6-11e1-8889-0024e84637be),
4649  helpstring("S57Attribute Class"),
4650  noncreatable
4651  ]
4652  coclass S57Attribute
4653  {
4654  [default] interface IS57Attribute;
4655  };
4656 
4657  // S57AttributeValue
4658  [
4659  uuid(cb25f66c-7cb6-11e1-8889-0024e84637be),
4660  helpstring("S57AttributeValue Class"),
4661  noncreatable
4662  ]
4663  coclass S57AttributeValue
4664  {
4665  [default] interface IS57AttributeValue;
4666  };
4667 
4668  // S57AttributeValues
4669  [
4670  uuid(cb25f66d-7cb6-11e1-8889-0024e84637be),
4671  helpstring("S57AttributeValues Class"),
4672  noncreatable
4673  ]
4674  coclass S57AttributeValues
4675  {
4676  [default] interface IS57AttributeValues;
4677  };
4678 
4679  // S57CellInfo
4680  [
4681  uuid(cb25f66e-7cb6-11e1-8889-0024e84637be),
4682  helpstring("S57CellInfo Class"),
4683  noncreatable
4684  ]
4685  coclass S57CellInfo
4686  {
4687  [default] interface IS57CellInfo;
4688  };
4689 
4690  // S57DepthPoint
4691  [
4692  uuid(cb25f66f-7cb6-11e1-8889-0024e84637be),
4693  helpstring("S57DepthPoint Class"),
4694  noncreatable
4695  ]
4696  coclass S57DepthPoint
4697  {
4698  [default] interface IS57DepthPoint;
4699  };
4700 
4701  // S57DepthPoints
4702  [
4703  uuid(cb25f670-7cb6-11e1-8889-0024e84637be),
4704  helpstring("S57DepthPoints Class"),
4705  noncreatable
4706  ]
4707  coclass S57DepthPoints
4708  {
4709  [default] interface IS57DepthPoints;
4710  };
4711 
4712  // S57Face
4713  [
4714  uuid(cb25f671-7cb6-11e1-8889-0024e84637be),
4715  helpstring("S57Face Class"),
4716  noncreatable
4717  ]
4718  coclass S57Face
4719  {
4720  [default] interface IS57Face;
4721  };
4722 
4723  // S57Faces
4724  [
4725  uuid(cb25f672-7cb6-11e1-8889-0024e84637be),
4726  helpstring("S57Faces Class"),
4727  noncreatable
4728  ]
4729  coclass S57Faces
4730  {
4731  [default] interface IS57Faces;
4732  };
4733 
4734  // S57FeatureInfo
4735  [
4736  uuid(cb25f673-7cb6-11e1-8889-0024e84637be),
4737  helpstring("S57FeatureInfo Class"),
4738  noncreatable
4739  ]
4740  coclass S57FeatureInfo
4741  {
4742  [default] interface IS57FeatureInfo;
4743  };
4744 
4745  // S57FeatureArea
4746  [
4747  uuid(cb25f674-7cb6-11e1-8889-0024e84637be),
4748  helpstring("S57FeatureArea Class"),
4749  noncreatable
4750  ]
4751  coclass S57FeatureArea
4752  {
4753  [default] interface IS57FeatureArea;
4754  };
4755 
4756  // S57FeatureLine
4757  [
4758  uuid(cb25f675-7cb6-11e1-8889-0024e84637be),
4759  helpstring("S57FeatureLine Class"),
4760  noncreatable
4761  ]
4762  coclass S57FeatureLine
4763  {
4764  [default] interface IS57FeatureLine;
4765  };
4766 
4767  // S57FeaturePoint
4768  [
4769  uuid(cb25f676-7cb6-11e1-8889-0024e84637be),
4770  helpstring("S57FeaturePoint Class"),
4771  noncreatable
4772  ]
4773  coclass S57FeaturePoint
4774  {
4775  [default] interface IS57FeaturePoint;
4776  };
4777 
4778  // S57FeatureSounding
4779  [
4780  uuid(cb25f677-7cb6-11e1-8889-0024e84637be),
4781  helpstring("S57FeatureSounding Class"),
4782  noncreatable
4783  ]
4784  coclass S57FeatureSounding
4785  {
4786  [default] interface IS57FeatureSounding;
4787  };
4788 
4789  // S57DrawnFeature
4790  [
4791  uuid(cb25f678-7cb6-11e1-8889-0024e84637be),
4792  helpstring("S57DrawnFeature Class"),
4793  noncreatable
4794  ]
4795  coclass S57DrawnFeature
4796  {
4797  [default] interface IS57DrawnFeature;
4798  };
4799 
4800  // S57DrawnFeatures
4801  [
4802  uuid(cb25f679-7cb6-11e1-8889-0024e84637be),
4803  helpstring("S57DrawnFeatures Class"),
4804  noncreatable
4805  ]
4806  coclass S57DrawnFeatures
4807  {
4808  [default] interface IS57DrawnFeatures;
4809  };
4810 
4811 
4812  // GeoPointFormatter
4813  [
4814  uuid(cb25f682-7cb6-11e1-8889-0024e84637be),
4815  helpstring("GeoPointFormatter Class"),
4816  noncreatable
4817  ]
4818  coclass GeoPointFormatter
4819  {
4820  [default] interface IGeoPointFormatter;
4821  };
4822 
4823  // PolyAreas
4824  [
4825  uuid(cb25f683-7cb6-11e1-8889-0024e84637be),
4826  helpstring("PolyAreas Class"),
4827  noncreatable
4828  ]
4829  coclass PolyAreas
4830  {
4831  [default] interface IPolyAreas;
4832  };
4833 
4835 
4836  [
4837  uuid(cb25f685-7cb6-11e1-8889-0024e84637be),
4838  helpstring("WVSDisplaySettings Class"),
4839  noncreatable
4840  ]
4841  coclass WVSDisplaySettings
4842  {
4843  [default] interface IWVSDisplaySettings;
4844  interface ICloneable;
4845  };
4846 
4848 
4849  [
4850  uuid(cb25f687-7cb6-11e1-8889-0024e84637be),
4851  helpstring("GridDisplaySettings Class"),
4852  noncreatable
4853  ]
4854  coclass GridDisplaySettings
4855  {
4856  [default] interface IGridDisplaySettings;
4857  interface ICloneable;
4858  };
4859 
4861 
4862  [
4863  uuid(cb25f689-7cb6-11e1-8889-0024e84637be),
4864  helpstring("GridPen Class"),
4865  noncreatable
4866  ]
4867  coclass GridPen
4868  {
4869  [default] interface IGridPen;
4870  interface ICloneable;
4871  };
4872 
4874  [
4875  uuid(cb25f691-7cb6-11e1-8889-0024e84637be),
4876  helpstring("RouteCheck Class")
4877  ]
4878  coclass RouteCheck
4879  {
4880  [default] interface IRouteCheck;
4881  };
4882 
4883 
4884  // VPFIteratorGuide_CoverageUse
4885  [
4886  uuid(cb25f6a1-7cb6-11e1-8889-0024e84637be),
4887  noncreatable
4888  ]
4889  coclass VPFIteratorGuide_CoverageUse
4890  {
4891  [default] interface IVPFIteratorGuide_CoverageUse;
4892  };
4893 
4894  // VPFIteratorGuide_LibraryUse
4895  [
4896  uuid(cb25f69f-7cb6-11e1-8889-0024e84637be),
4897  noncreatable
4898  ]
4899  coclass VPFIteratorGuide_LibraryUse
4900  {
4901  [default] interface IVPFIteratorGuide_LibraryUse;
4902  };
4903 
4904  // VPFIteratorGuide_DatabaseUse
4905  [
4906  uuid(cb25f69d-7cb6-11e1-8889-0024e84637be),
4907  noncreatable
4908  ]
4909  coclass VPFIteratorGuide_DatabaseUse
4910  {
4911  [default] interface IVPFIteratorGuide_DatabaseUse;
4912  };
4913 
4914  // VPFIteratorGuide
4915  [
4916  uuid(cb25f697-7cb6-11e1-8889-0024e84637be),
4917  noncreatable
4918  ]
4919  coclass VPFIteratorGuide
4920  {
4921  [default] interface IVPFIteratorGuide;
4922  };
4923 
4924  // VPFDisplaySettings
4925  [
4926  uuid(cb25f695-7cb6-11e1-8889-0024e84637be),
4927  helpstring("VPFDisplaySettings Class"),
4928  noncreatable
4929  ]
4930  coclass VPFDisplaySettings
4931  {
4932  [default] interface IVPFDisplaySettings;
4933  interface ICloneable;
4934  };
4935 
4936  // VPFFeatureSet
4937  [
4938  uuid(cb25f69b-7cb6-11e1-8889-0024e84637be)
4939  ]
4940  coclass VPFFeatureSet
4941  {
4942  [default] interface IVPFFeatureSet;
4943  };
4944 
4945  // VPFManager
4946  [
4947  uuid(cb25f693-7cb6-11e1-8889-0024e84637be)
4948  ]
4949  coclass VPFManager
4950  {
4951  [default] interface IVPFManager;
4952  };
4953 
4954 
4956  [
4957  uuid(cb25f6a4-7cb6-11e1-8889-0024e84637be),
4958  helpstring("Events from VPFCatalogueObserver"),
4959  hidden
4960  ]
4961  dispinterface _IVPFCatalogueObserverEvents
4962  {
4963  properties:
4964  methods:
4965  // Occurs when the contents of the VENC has changed. Redraw everything.
4966  [id(1), helpstring("Occurs when the contents of the VENC has changed. Redraw everything.")] HRESULT OnChanged();
4967  };
4968 
4970 
4973  [
4974  uuid(cb25f6a3-7cb6-11e1-8889-0024e84637be),
4975  helpstring("VPFCatalogueObserver Class")
4976  ]
4977  coclass VPFCatalogueObserver
4978  {
4979  [default] interface IVPFCatalogueObserver;
4980  [default, source] dispinterface _IVPFCatalogueObserverEvents;
4981  };
4982 
4983 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
4984 }
Specifies the type of palette and any fading of the chart.
Definition: encxcom.idl:3954
Observe the state of the security device.
Definition: encxcom.idl:3981
An area formed by joining points in a closed loop with lines of the specified shape.
Definition: encxcom.idl:4017
A line of a specified shape between two points on the Earth's surface.
Definition: encxcom.idl:4039
A position on the Earth's surface defined by geodetic latitude and longitude.
Definition: encxcom.idl:3993
Collection of GeoPoint objects.
Definition: encxcom.idl:4005
An area on the Earth's surface defined by two meridians (east and west) and two parallels (north and ...
Definition: encxcom.idl:4028
Create HTML for display in a browser control (etc.)
Definition: encxcom.idl:4376
The top level object in the ENCX library. Required to create many other ENCX objects.
Definition: encxcom.idl:3940
A value class representing a floating point Cartesian pixel point.
Definition: encxcom.idl:4387
A value class representing a floating point Cartesian pixel rectangle aligned with the Cartesian axes...
Definition: encxcom.idl:4410
A value class representing a floating point Cartesian pixel size.
Definition: encxcom.idl:4398
Observe changes to the charts in a RasManager.
Definition: encxcom.idl:4082
The identity of a single panel (either the main chart or an inset panel) on a known raster chart.
Definition: encxcom.idl:4095
Display a bounded raster chart via a Win32 Device Context.
Definition: encxcom.idl:4116
Manage a folder of raster charts.
Definition: encxcom.idl:4056
Observe changes to the cells in an S57Manager.
Definition: encxcom.idl:4148
Identification of an S-57 cell.
Definition: encxcom.idl:4162
Collection of S57CellIdentifier.
Definition: encxcom.idl:4173
An S-57 Colour Identifier.
Definition: encxcom.idl:4184
An S-57 Colour Identifier combined with the values of the colour (RGB) for each colour scheme (Day,...
Definition: encxcom.idl:4195
A collection of S-57 colours and associated RGB values.
Definition: encxcom.idl:4206
Display a continuous S-57 vector chart via a Win32 Device Context.
Definition: encxcom.idl:4362
A globally unique value that identifies a particular feature as represented by a particular S-57 cell...
Definition: encxcom.idl:4264
Collection of S57FeatureIdentifier.
Definition: encxcom.idl:4275
A means of querying an S-57 cell within a SENC to obtain a collection of the cell's features.
Definition: encxcom.idl:4291
An S-57 SENC.
Definition: encxcom.idl:4324
Parameters required to initialize S57Manager using OpenSenc2()
Definition: encxcom.idl:4301
Collection of S57ObjectClass.
Definition: encxcom.idl:4253
Type of S-57 Object.
Definition: encxcom.idl:4242
The combination of an S-57 Product and an Intended Usage.
Definition: encxcom.idl:4220
Collection of S57ProductAndUsage.
Definition: encxcom.idl:4231
ScaleBarUnits
Used to set the units to use for the scale bar on S57 charts.
Definition: encxcom.idl:106
@ SBU_Kilometres
kilometres
Definition: encxcom.idl:107
@ SBU_NauticalMiles
nautical miles
Definition: encxcom.idl:108
S57DateMode
Determines the date to use when deciding whether to draw features with date dependencies or just allo...
Definition: encxcom.idl:180
@ S57DateMode_IgnoreDates
Draw all features regardless of date.
Definition: encxcom.idl:183
@ S57DateMode_UseSetDate
Use the user set date.
Definition: encxcom.idl:182
@ S57DateMode_UseSystemDate
Use the current system date.
Definition: encxcom.idl:181
VPFFeatureType
VPF feature types to draw.
Definition: encxcom.idl:195
@ FT_Edge
Line features.
Definition: encxcom.idl:198
@ FT_Node
Point features.
Definition: encxcom.idl:196
@ FT_Text
Text features.
Definition: encxcom.idl:197
@ FT_Face
Polygon features.
Definition: encxcom.idl:199
PaletteType
Used to specify which palette the charts will be rendered in.
Definition: encxcom.idl:38
@ PalDay
Normal daytime palette.
Definition: encxcom.idl:40
@ PalDusk
Palette for dawn and dusk.
Definition: encxcom.idl:42
@ PalNight
Palette for night viewing.
Definition: encxcom.idl:43
@ PalCount
Number of palette values.
Definition: encxcom.idl:45
@ PalDayBright
Daytime palette for bright conditions.
Definition: encxcom.idl:39
@ PalUnknown
Unknown palette.
Definition: encxcom.idl:46
@ PalDayBlack
Daytime palette with a black background.
Definition: encxcom.idl:41
@ PalNightUnfiltered
Palette for night viewing through a neutral filter.
Definition: encxcom.idl:44
UniversalGridType
Definition: encxcom.idl:203
@ Grid_UTM
Universal Transverse Mercator.
Definition: encxcom.idl:204
@ Grid_MGRS
Military Grid Reference System.
Definition: encxcom.idl:205
LatLonFormat
Use this enum in GeoPointFormatter to change the lat-lon format returned by GeoPoint....
Definition: encxcom.idl:122
@ D_MM_MMMM
Degrees, minutes to 4 decimal places.
Definition: encxcom.idl:126
@ D_MM_MMM
Degrees, minutes to 3 decimal places.
Definition: encxcom.idl:125
@ D_MM_SS_SS
Degrees, minutes, seconds to 2 decimal places.
Definition: encxcom.idl:124
@ D_MM_SS_S
Degrees, minutes, seconds to 1 decimal place.
Definition: encxcom.idl:123
@ D_DDDDDD
Degrees to 6 decimal places.
Definition: encxcom.idl:128
@ D_DDDDD
Degrees to 5 decimal places.
Definition: encxcom.idl:127
S57DisplayImprovements
Definition: encxcom.idl:165
@ S57DisplayImprovements_Max
CherSoft's best ENC chart display improvements (non-standard)
Definition: encxcom.idl:167
@ S57DisplayImprovements_Level1
ENC display improvements Q1 2012.
Definition: encxcom.idl:168
@ S57DisplayImprovements_Nothing
No non-standard decluttering.
Definition: encxcom.idl:166
S57Product
A number of 'products' use the S-57 vector chart standard. The most well known one is ENC (Electronic...
Definition: encxcom.idl:62
@ PD_Unknown
Unknown product.
Definition: encxcom.idl:63
@ PD_AMLV3_MMA
AML Version 3 - Marine Management Areas.
Definition: encxcom.idl:79
@ PD_AMLV3_PEA
AML Version 3 - Practice and Exercise Areas.
Definition: encxcom.idl:85
@ PD_PENC
Port ENC (PENC) vector data.
Definition: encxcom.idl:66
@ PD_IENC
Inland ENC (IENC) vector data.
Definition: encxcom.idl:65
@ PD_RAL
Routes, Areas and Limits (AML)
Definition: encxcom.idl:69
@ PD_AMLV3_SBO
AML Version 3 - Small Bottom Objects.
Definition: encxcom.idl:87
@ PD_AMLV3_QRT
AML Version 3 - Q - Routes.
Definition: encxcom.idl:86
@ PD_LBO
Large Bottom Object (AML)
Definition: encxcom.idl:70
@ PD_AMLV3_MFI
AML Version 3 - Military Flight Information.
Definition: encxcom.idl:84
@ PD_ENC
ENC vector data.
Definition: encxcom.idl:64
@ PD_AMLV3_FAI
AML Version 3 - Flight Aeronautical Information.
Definition: encxcom.idl:82
@ PD_SBO
Small Bottom Objects (AML)
Definition: encxcom.idl:73
@ PD_MFF
Marine Foundation and Facilities (AML)
Definition: encxcom.idl:68
@ PD_AMLV3_NCD
AML Version 3 - Nautical Chart Background Data.
Definition: encxcom.idl:76
@ PD_ESB
Environment, Seabed and Beach (AML)
Definition: encxcom.idl:72
@ PD_AMLV3_GEN
AML Version 3 - generic.
Definition: encxcom.idl:74
@ PD_AIO
UKHO Admiralty Information Overlay (AIO)
Definition: encxcom.idl:92
@ PD_AMLV3_SED
AML Version 3 - Sediment.
Definition: encxcom.idl:77
@ PD_AMLV3_LBO
AML Version 3 - Large Bottom Objects.
Definition: encxcom.idl:88
@ PD_AMLV3_TSB
AML Version 3 - Territorial Sea Boundaries.
Definition: encxcom.idl:81
@ PD_AMLV3_MNI
AML Version 3 - Military Nautical Information.
Definition: encxcom.idl:91
@ PD_AMLV3_CFI
AML Version 3 - Civil Flight Information.
Definition: encxcom.idl:83
@ PD_AMLV3_CLB
AML Version 3 - Contour Line Bathymetry.
Definition: encxcom.idl:78
@ PD_AMLV3_LND
AML Version 3 - Land Background Data.
Definition: encxcom.idl:75
@ PD_AMLV3_AMP
AML Version 3 - Amphibious Warfare Data.
Definition: encxcom.idl:89
@ PD_WVS
The World Shoreline supplied with ENCX is another product of the S-57 standard.
Definition: encxcom.idl:67
@ PD_AMLV3_MTD
AML Version 3 - Mine Tactical Data.
Definition: encxcom.idl:80
@ PD_BENC
Bathymetric ENC.
Definition: encxcom.idl:93
@ PD_CLB
Contour Line Bathymetry (AML)
Definition: encxcom.idl:71
@ PD_AMLV3_ICE
AML Version 3 - Ice Data.
Definition: encxcom.idl:90
GeoLineType
The shape of the path between two points on the Earth's surface.
Definition: encxcom.idl:55
@ GL_GreatCircle
The shortest route between two points on the WGS-84 spheroid.
Definition: encxcom.idl:56
@ GL_Rhumb
The line of constant bearing between two points on the WGS-84 spheroid.
Definition: encxcom.idl:57
S57CallBackDrawAction
Identifies the relationship between a drawing callback and the drawing of a particular layer.
Definition: encxcom.idl:145
@ CB_NoS57Layer
Don't draw S-57 layer
Definition: encxcom.idl:146
@ CB_BeforeAndAfterS57Layer
Both before and after S-57 layer draw.
Definition: encxcom.idl:149
@ CB_BeforeS57Layer
Before S-57 layer draw
Definition: encxcom.idl:147
@ CB_AfterS57Layer
After S-57 layer draw
Definition: encxcom.idl:148
S57FeatureGeometry
S-57 supports a number of 'geometries', there are basically Points, Lines and Areas.
Definition: encxcom.idl:133
@ FG_Line
An object that is mapped as a line (possibly containing many segments), such as a contour.
Definition: encxcom.idl:136
@ FG_Unknown
Should not normally occur.
Definition: encxcom.idl:139
@ FG_Sounding
A collection of depth soundings.
Definition: encxcom.idl:138
@ FG_None
E.g. a collection of other features, such as the anchors and buoys for a tanker mooring system.
Definition: encxcom.idl:134
@ FG_Point
An object that is mapped as a single point, such as a light (LIGHTS) or a buoy (BOYSPP).
Definition: encxcom.idl:135
@ FG_Area
An object that is mapped as an area, such as some land (LNDARE) or an area of constant sea depth (DEP...
Definition: encxcom.idl:137
PenStyle
Determines the style of pen to use for drawing grid lines.
Definition: encxcom.idl:188
@ PS_Solid
Draw a solid line.
Definition: encxcom.idl:189
@ PS_Dashed
Draw a dashed line.
Definition: encxcom.idl:190
HTMLAction
Definition: encxcom.idl:153
@ SHA_UpdatePagesAndGoHome
Update pages and go home.
Definition: encxcom.idl:161
@ SHA_GoForward
Go forward.
Definition: encxcom.idl:158
@ SHA_DoNothing
Do nothing.
Definition: encxcom.idl:154
@ SHA_GoBack
Go back.
Definition: encxcom.idl:157
@ SHA_MightBeUrl
Might be a URL.
Definition: encxcom.idl:155
@ SHA_GoHome
Go home.
Definition: encxcom.idl:156
@ SHA_UpdatePages
Update pages.
Definition: encxcom.idl:159
@ SHA_UpdatePagesAndReloadCurrentPage
Update pages and reload the current page.
Definition: encxcom.idl:160
S57Projection
Definition: encxcom.idl:172
@ S57Projection_Mercator
Mercator.
Definition: encxcom.idl:174
@ S57Projection_Cylindrical
Original ENCX S-57 projection for fastest drawing.
Definition: encxcom.idl:173
@ S57Projection_PolarStereographic
Polar Stereographic.
Definition: encxcom.idl:175
SBDetailedMode
Used to set the scale bar behaviour when the display scale is more detailed than 1:8,...
Definition: encxcom.idl:113
@ SDM_Off
Don't use detailed mode (default)
Definition: encxcom.idl:114
@ SDM_UseMetres
In detailed mode, set the scale bar length to 100 m (regardless of scale bar units).
Definition: encxcom.idl:116
@ SDM_Auto
In detailed mode, set the scale bar length to 0.1 M when scale bar units are nautical miles or 0....
Definition: encxcom.idl:115
DongleState
The state of dongle. The dongle may either be DFS file (a 'virtual dongle') or a hardware dongle.
Definition: encxcom.idl:27
@ DS_Exists
A dongle exists but is not licensing the product. This may be affected by the OEM key (or default) us...
Definition: encxcom.idl:29
@ DS_Active
Dongle found and working.
Definition: encxcom.idl:30
@ DS_NotFound
No dongle could be found (hardware dongles require drivers, software dongles require the DFS file to ...
Definition: encxcom.idl:28
S57DepthDisplayUnits
Used for the display of soundings and contour depths on S57 charts.
Definition: encxcom.idl:98
@ DDU_MetresECDIS
Display in ECDIS font and style.
Definition: encxcom.idl:101
@ DDU_Feet
Feet.
Definition: encxcom.idl:100
@ DDU_Metres
Metres and decimetres.
Definition: encxcom.idl:99
Events from DongleObserver.
Definition: encxcom.idl:3965
HRESULT OnDongleChangeEvt(void)
Occurs when the state of the dongle has changed.
Events from RasCatalogueObserver.
Definition: encxcom.idl:4067
HRESULT OnChanged()
Occurs when the contents of the raster chart folder has changed. Redraw everything.
Events from S57CatalogueObserver.
Definition: encxcom.idl:4132
Events from S57Draw.
Definition: encxcom.idl:4335
HRESULT OnDrawLayer(OLE_HANDLE hdc, enum S57CallBackDrawAction action, IS57ProductAndUsage *ProductAndUsage, BYTE Layer)
Occurs before or after an S-57 layer is drawn.
Properties and methods for ENCX::DisplayPalette.
Definition: encxcom.idl:364
DOUBLE Luminance
The brightness of drawing. Default 1.0. Anything less than about 0.01 is completely black....
PaletteType PalType
E.g. PalDay, PalDusk, PalNight.
DOUBLE Saturation
The density of colour. Default 1.0. Anything less than about 0.01 is greyscale. Anything more than ab...
A security device.
Definition: encxcom.idl:224
BSTR DeviceName
Obtain a name identifying the security device. Suitable for display to end-users.
DongleState State
Obtain the current status of the security device.
LONG SerialNumber
Serial number of the dongle.
Properties and methods for ENCX::DongleObserver.
Definition: encxcom.idl:254
HRESULT Unregister(void)
Ask to not be notified of dongle state changes.
HRESULT Register(IDongle *dongle)
Register to be notified of dongle state changes.
Properties and methods for ENCX::GeoArea.
Definition: encxcom.idl:471
GeoLineType LineType
The shape of the lines between positions in ::Points.
IGeoPoints Points
A line is assumed between consecutive positions and between the last and first positions.
BSTR RoundedCornersString
Space delimited string containing indexes of the corners that are rounded.
BSTR PointsString
A line is assumed between consecutive positions and between the last and first positions.
Abbreviated and full descriptions of a horizontal datum.
Definition: encxcom.idl:506
BSTR Code
Three character code, e.g. WGE for WGS84, plus optional one-character sub area.
BSTR ShortDescription
Abbreviated description, e.g. WGS84 or OSGB1936.
BSTR LongDescription
Full description, e.g. World Geodetic System 1984.
Properties and methods for ENCX::GeoLine.
Definition: encxcom.idl:554
GeoLineType LineType
The shape of the path to be used between the ends.
HRESULT SetPoint1([in] DOUBLE LatGeodeticDegrees, [in] DOUBLE LonDegrees)
Setting the position of one end of the line.
IGeoPoint Point1
One end of the line.
IGeoPoint Point2
The other end of the line.
HRESULT SetPoint2([in] DOUBLE LatGeodeticDegrees, [in] DOUBLE LonDegrees)
Setting the position of the other end of the line.
HRESULT CreateFromBearingAndLength([in] enum GeoLineType lineType, [in] IGeoPoint *start, [in] DOUBLE bearing, [in] DOUBLE lengthInMeters)
Construct line from length and bearing.
DOUBLE BearingEnd
Bearing at end of line.
DOUBLE LengthInMetres
Length in metres.
DOUBLE BearingStart
Bearing at start.
A collection of geopixes.
Definition: encxcom.idl:847
IGeoPix Item([in] VARIANT vtIndex)
A GeoPix represents a portion of chart visible on the screen.
Definition: encxcom.idl:751
VARIANT_BOOL UseSmallSymbology
Draw symbols smaller (for Overviews).
VARIANT_BOOL PointInView
Returns true iff the last IGeoPix::Point or IGeoPix::PointEx conversion was inside the view.
IGeoRect Extent
The geographical bounding rectangle for the viewport of this IGeoPix.
HRESULT ClipRegionDevicePoints([in] IPixelRect *rect, [in] OLE_HANDLE lHDC, [out, retval] OLE_HANDLE *lhRgn)
Obtains the area of intersection between input rectangle and the visible portion of the chart that th...
HRESULT Area([in] IGeoArea *geoArea, [out, retval] IPolyAreas **areas)
Geographic to Pixel area conversion.
HRESULT GeoPointFromPixelPoint([in] IPixelPoint *pixelPt, [out, retval] IGeoPoint **geoPt)
Obtain a geographical position from a pixel point.
LONG DisplayScale
The scale to show to the user. Based on a nominal pixel pitch for the type of view (typically 200 mic...
HRESULT PointEx([in] IGeoPoint *geoPt, [in] DOUBLE brgGeo, [out] DOUBLE *brgPixel, [out] DOUBLE *distOnePixel, [out, retval] IPixelPoint **pixelPt)
Geographic to Pixel point conversion.
HRESULT Point([in] IGeoPoint *geoPt, [out, retval] IPixelPoint **pixelPt)
Geographic to Pixel point conversion.
HRESULT ClipRegionLogicalPoints([in] IPixelRect *rect, [out, retval] OLE_HANDLE *lhRgn)
Obtains the area of intersection between the input rectangle and the visible portion of the chart tha...
HRESULT Line([in] IGeoLine *geoLine, [out, retval] IPolyLines **lines)
Geographic to Pixel line conversion.
DOUBLE DirectionOfUp
Degrees. Like a compass bearing. Range 0 >= x < 360.
HRESULT ExtentFromRect([in] IPixelRect *rect, [out, retval] IGeoRect **pVal)
The geographical bounding rectangle for rectangle defined in pixel coordinates clipped to the viewpor...
GeoPointFormatter.
Definition: encxcom.idl:280
VARIANT_BOOL UseUniversalGrid
Show the position using the UTM or MGRS universal grid, where available.
UniversalGridType UniversalGrid
The universal grid format to use.
VARIANT_BOOL UseNationalGrid
Show the position using a national grid, where available. When set, this has priority over UseUnivers...
LatLonFormat Format
The format to use for latitude and longitude values. This does not affect grid formats.
Properties and methods for ENCX::GeoPoint.
Definition: encxcom.idl:400
HRESULT ParseMGRS([in] BSTR newVal)
Attempt to parse MGRS string in format {zone band grid easting northing} e.g. "30 U XE 01468 26018".
DOUBLE Lat
Degrees, positive going north, zero on the equator.
BSTR LatLonString
Comma separated lat and lon.
HRESULT ParseLatLon([in] BSTR newVal)
Attempt to parse lat-long string, N|S , E|W, degrees, minutes, seconds.
DOUBLE Lon
Degrees, positive going east, zero on the Greenwich Meridian.
HRESULT ParseUTM([in] BSTR newVal)
Attempt to parse UTM string in format {central_meridian N|S easting northing} e.g....
HRESULT Copy([out, retval] IGeoPoint **pVal)
Get an identical copy of this object. Like the Clone() method but type safe.
BSTR FormattedPosition
Get the position as a string using GeoPointFormatter settings.
Properties and methods for ENCX::GeoPoints.
Definition: encxcom.idl:444
HRESULT Remove([in] LONG nIndex)
IGeoPoint Item([in] VARIANT vtIndex)
HRESULT AddLatLon([in] DOUBLE Lat, [in] DOUBLE Lon)
HRESULT Clear()
HRESULT Add([in] IGeoPoint *geoPoint)
IUnknown _NewEnum
HRESULT Copy([out, retval] IGeoPoints **pVal)
Get an identical copy of this object. Like the Clone() method but type safe.
Properties and methods for ENCX::GeoRect.
Definition: encxcom.idl:527
DOUBLE LonE
DOUBLE LatN
DOUBLE LatS
DOUBLE LonW
Properties and methods for ENCX::GridDisplaySettings.
Definition: encxcom.idl:3252
IGridPen GridPen1
Primary grid pen.
DWORD LabelColour
Label colour.
IGridPen GridPen3
Tertiary grid pen.
HRESULT Copy([out, retval] IGridDisplaySettings **pVal)
Get an identical copy of this object. Like the Clone() method but type safe.
IGridPen GridPen2
Secondary grid pen.
VARIANT_BOOL ShowLabels
Show or hide labels.
VARIANT_BOOL Show
Show or hide the grid.
Properties and methods for ENCX::GridPen.
Definition: encxcom.idl:3214
PenStyle Style
Pen style of grid line.
FLOAT Width
Width of grid line.
HRESULT Copy([out, retval] IGridPen **pVal)
Get an identical copy of this object. Like the Clone() method but type safe.
VARIANT_BOOL Show
Show or hide the grid line.
DWORD Colour
Grid line colour.
Properties and methods for ENCX::HTMLGenerator.
Definition: encxcom.idl:3863
HRESULT ProcessEvent([in] BSTR sEvent, [out, retval] enum HTMLAction *action)
Handle an event from a web browser that is displaying the HTML.
HRESULT S57PropertiesAtPoint([in] IS57Draw *s57draw, [in] IPixelPoint *pixelPt)
Set the point on the chart and the draw object that HTML generated by will refer to.
HRESULT HTML([in] BSTR sUrl, [out, retval] BSTR *pHtml)
Get the HTML.
A way to convert a geographical position between a local horizontal datum and WGS84.
Definition: encxcom.idl:866
VARIANT_BOOL HasLocalDatum
Returns true if the chart has a local datum which is not WGS84.
BSTR LocalDatumLongName
The local datum name in either long or short form. See HCRF 2.0 A.4 HORIZONTAL DATUM CODES.
HRESULT WGS84ToLocal([out] DOUBLE *LatLocal, [out] DOUBLE *LonLocal, [in] DOUBLE LatWGS84, [in] DOUBLE LonWGS84, [out, retval] VARIANT_BOOL *bRes)
Convert a geographical position on WGS84 to the local datum.
BSTR LocalDatumShortName
The local datum name in either long or short form. See HCRF 2.0 A.4 HORIZONTAL DATUM CODES.
DOUBLE ErrorDistanceMetres
The accuracy of the transformation. Units are metres.
HRESULT LocalToWGS84([out] DOUBLE *LatWGS84, [out] DOUBLE *LonWGS84, [in] DOUBLE LatLocal, [in] DOUBLE LonLocal, [out, retval] VARIANT_BOOL *bRes)
Convert a geographical position on the local datum to WGS84.
Properties and methods for ENCX::Library.
Definition: encxcom.idl:310
HRESULT DoIdle([out, retval] VARIANT_BOOL *bRes)
Call while the application is idle and while DoIdle() keeps returning true.
HRESULT Construct([in] BSTR OEMKey, [in] BSTR DFSFileName)
Initialise the ENCX library.
BSTR DFSInstallationId
Get the Installation ID string which is used to obtain a Dongle Free Security (DFS) file from CherSof...
IDongle Dongle
Get the Dongle object. This object can be queried about the state of the dongle.
BSTR DFSFileName
The full pathname of the DFS filename.
BSTR Version
Get the version of the library.
VARIANT_BOOL ValidOEMKey
True if the OEM key supplied when the object was initialized is a valid key.
IGeoPointFormatter GeoPointFormatter
VARIANT_BOOL ValidDFSFile
Is the DFS file valid (an absence of file is considered invalid)
Properties and methods for ENCX::PixelPoint.
Definition: encxcom.idl:599
FLOAT X
Horizontal, increasing from left to right.
FLOAT Y
Vertical, increasing from top to bottom.
A collection of pixel points.
Definition: encxcom.idl:687
IPixelPoint Item([in] VARIANT vtIndex)
IUnknown _NewEnum
Properties and methods for ENCX::PixelRect.
Definition: encxcom.idl:651
LONG Height
Height. Vertical.
LONG Top
Top edge. Vertical, increasing from top to bottom.
LONG Width
Width. Horizontal.
LONG Left
Left edge. Horizontal, increasing from left to right.
Properties and methods for ENCX::PixelSize.
Definition: encxcom.idl:625
LONG Height
Height. Vertical.
LONG Width
Width. Horizontal.
A collection of rings of pixel points. Returned by IGeoPix::Area.
Definition: encxcom.idl:723
IUnknown _NewEnum
IPixelPoints Item([in] VARIANT vtIndex)
A collection of chains of pixel points. Returned by IGeoPix::Line.
Definition: encxcom.idl:706
IPixelPoints Item([in] VARIANT vtIndex)
IUnknown _NewEnum
Properties and methods for ENCX::RasCatalogueObserver.
Definition: encxcom.idl:1254
HRESULT Unregister(void)
Always unregister before the derived class is destroyed.
HRESULT Register([in] IRasManager *rasManager)
Call this when ready to receive change notifications.
Details of a raster chart.
Definition: encxcom.idl:1141
DATE LastChanged
When the last update was applied to this chart.
DATE EditionDate
When this edition of the chart was created.
IRasPanelIdentifiers PanelIdentifiers
Obtain a list of all the panels in the chart.
BSTR Producer1
Description of the country that produced the original chart. E.g. United Kingdom.
IRasDiscIdentity InstallationCD
The CD from which the chart was / can be installed.
IRasNoticeToMarinersNumber LatestNoticeToMarinersNumber
The Notices to Mariners number of the latest update installed.
BSTR NativeFormatShortDescription
The short description of the original format of the chart. E.g ARCS.
IRasNoticesToMariners NoticesToMariners
Obtain the Temporary and Preliminary Notices to Mariners corresponding to the latest update installed...
DATE RasterChartIssueDate
BSTR Number
The identity of the chart. Never blank. E.g. 2182C.
BSTR Producer2
Description of the second country that produced the original chart. Often blank.
VARIANT_BOOL IsComplete
Returns true iff the chart is fully installed.
BSTR Description
A meaningful name for the whole chart.
IRasPanelInfo PanelInfo([in] IRasPanelIdentifier panelId)
Obtain the details of a specified panel.
BSTR CountryOfOrigin
Description of the country that produced the original chart.
VARIANT_BOOL IsWithdrawn
Returns true if the chart's supplier has withdrawn the chart.
IRasDiscIdentity MissingUpdateCD
The CD from which the chart needs to be updated.
VARIANT_BOOL RequiresLicence
All ARCS charts require a license.
BSTR InternationalNumber
The internationally agreed identity of the chart. Often blank.
IRasDiscIdentity MissingReInstallationCD
The CD from which the chart needs to be re-installed.
DATE LatestCorrectionDate
When the last update that has been applied was issued by the data producer.
BSTR NativeFormatLongDescription
The description of the original format of the chart. E.g Admiralty Raster Chart Service.
The identity of a specific panel of a specific chart.
Definition: encxcom.idl:1039
HRESULT Construct([in] BSTR chartNumber, [in] IRasPanelIdentifier *panelID)
Initialize from a specific chart and panel.
BSTR ChartIdentifier
The chart.
IRasPanelIdentifier Panel
The panel within the chart.
A collection of raster chart panel identifiers.
Definition: encxcom.idl:1063
IRasChartPanelIdentifier Item([in] VARIANT vtIndex)
A collection of raster charts.
Definition: encxcom.idl:910
BSTR Item([in] VARIANT vtIndex)
IUnknown _NewEnum
A means of identifying a chart CD.
Definition: encxcom.idl:928
DATE IssueDate
The date the CD was released.
BSTR Description
The name of the CD. E.g. WK23_04.
Properties and methods for ENCX::RasDraw.
Definition: encxcom.idl:1323
BSTR WarningMessage
This message should be brought to the operator's attention when the chart is opened.
HRESULT PanelAtPoint([in] IPixelPoint *ipPixelPt, [out, retval] IRasPanelIdentifier **rpid)
Obtain the identity of the panel at a specified pixel position.
HRESULT HorizontalDatum([in] IPixelPoint *ipPixelPt, [out, retval] IHorizontalDatum **hd)
Obtain the HorizontalDatum at a specified pixel position.
VARIANT_BOOL IndicateUpdates
Highlight the updated areas on the chart. Off by default.
VARIANT_BOOL HasUpdates
True iff there are currently corrections on the chart.
HRESULT SetRect([in] IPixelRect *rect)
The area of the chart to be drawn. Pixel position (0,0) is always at the top left corner of the chart...
BSTR ChartIdentifier
The chart's number. Not necessarily numeric. E.g. "109", "2182C", "AUS1234".
VARIANT_BOOL DisplayUpdates
Draw the chart using the available updates. On by default.
HRESULT PanelNotes([in] IRasPanelIdentifier *panelId, [out, retval] IRasPanelNotes **pVal)
Obtain a collection of notes associated with the specified panel.
DOUBLE PixelSizeMetres
Returns the nominal size of a pixel.
ULONG Magnify
Magnification of raster image - 100% is normal. Range is from 25% to 4000% in 25% intervals.
BSTR UpdateMessage
This message should be brought to the operator's attention when the chart is opened.
IGeoPixCollection VisibleGeoPix
Obtain a snapshot of all the geopixes that are inside Rect(). If you call this property twice you wil...
IPixelSize ChartSize
Return the size of the whole chart in pixels, allowing for it being either full-size or overview.
HRESULT GetRect([out, retval] IPixelRect **rect)
The area of the chart to be drawn. Pixel position (0,0) is always at the top left corner of the chart...
IDisplayPalette DisplayPalette
The colour scheme for the chart. Use to draw the chart with lower luminance for twilight and night vi...
HRESULT PanelGeoPix([in] IRasPanelIdentifier *panelID, [out, retval] IGeoPix **geoPix)
Obtain the GeoPix for the specified panel.
HRESULT GeoPix([in] IPixelPoint *ipPixelPt, [out, retval] IGeoPix **geoPix)
Obtain the GeoPix at a specified pixel position.
HRESULT OpenAtPositionOnPanel([in] IRasManager *rasManager, [in] IRasChartPanelIdentifier *chartAndPanel, [in] IGeoPoint *geoPt)
Set the view rectangle to display the geographical position specified on the panel specified....
VARIANT_BOOL DisplayFullSize
When true, the chart will be drawn at a much reduced size (typically 1/6th of normal size).
HRESULT Draw([in] OLE_HANDLE hDC)
Draw the Rect() portion of the chart to the specified device context.
BSTR PermanentMessage
This message should be displayed on top of the chart at all times.
HRESULT OpenChart([in] IRasManager *rasmanager, [in] BSTR ChartIdentifier)
Use a specific chart.
Properties and methods for ENCX::RasManager.
Definition: encxcom.idl:1208
HRESULT ChartInfo([in] BSTR ChartIdentifier, [out, retval] IRasChartInfo **pVal)
Obtain the details of a specified chart.
HRESULT PanelInfo([in] IRasChartPanelIdentifier *PanelID, [out, retval] IRasPanelInfo **pVal)
Obtain the details of a specified panel on a specified chart.
HRESULT IsValidRasFolder([in] BSTR sPath, [out, retval] VARIANT_BOOL *bRes)
Is the path pointing to a valid RENC. A RENC is the folder structure in which raster charts are insta...
DATE NoticesToMarinersLatestUpdate
HRESULT SetManualWGS84Shift([in] IRasChartPanelIdentifier *PanelId, [in] IGeoPoint *geoPoint, VARIANT_BOOL isSet)
Set the horizontal datum shift for WGS84 manually.
HRESULT PanelsAtPoint([in] DOUBLE dLatGeodeticDegrees, [in] DOUBLE dLonDegrees, [in] LONG ScaleMin, [in] LONG ScaleMax, [out, retval] IRasChartPanelIdentifiers **pVal)
HRESULT PanelsInGeoRect([in] IGeoRect *geoRect, [in] LONG ScaleMin, [in] LONG ScaleMax, [out, retval] IRasChartPanelIdentifiers **pVal)
HRESULT RunInstallApplicationARCS([in] BSTR pathToInstallationApp)
Invoke the CherSoft Windows application that installs and updates ARCS charts in the folder.
IRasCharts Charts
Obtain a collection of all the charts in the folder.
HRESULT CreateRasFolder([in] BSTR sPath)
Create a RENC. A RENC is the folder structure in which raster charts are installed.
HRESULT OpenRasFolder([in] ILibrary *piLibrary, [in] BSTR sPath)
Associate this manager with a specified folder.
HRESULT DisplayPinDialog([in] BSTR chartNumber, [out, retval] VARIANT_BOOL *bRes)
Deprecated - calling this method is no longer required.
IRasNoticesToMariners GeneralNoticesToMariners
A Notice to Mariners.
Definition: encxcom.idl:967
BSTR Text
The content of the notice.
IRasNoticeToMarinersNumber Number
The identity of the notice.
Identification for a notice to mariners.
Definition: encxcom.idl:947
LONG Number
The number of the notice within its Year. Sequential from 1.
LONG Year
The year in which the notice was issued. E.g. 2005.
HRESULT ToString([retval][out] BSTR *pVal)
Obtain a representation of the value as a string.
A collection of Notices to Mariners.
Definition: encxcom.idl:986
IRasNoticeToMariners Item([in] VARIANT vtIndex)
Properties and methods for ENCX::RasPanelIdentifier.
Definition: encxcom.idl:1003
A collection of raster panel identifiers.
Definition: encxcom.idl:1021
IRasPanelIdentifier Item([in] VARIANT vtIndex)
Details of a raster panel.
Definition: encxcom.idl:1085
BSTR ProjectionName
The description of the projection used by the chart. E.g. Mercator.
IGeoPoint ManualWGS84Shift
Returns the manual horizontal datum shift.
IGeoArea GeoArea
Obtain the geographical extent of the panel.
VARIANT_BOOL ManualWGS84ShiftCanBeModified
Returns true iff the horizontal datum shift can be modified using IRasManager.SetManualWGS84Shift().
BSTR HeightDatum
The description of the vertical datum for heights. E.g. Mean High Water Springs.
IGeoHorizontalDatumInfo HorizontalDatumInfo
Obtain details of the horizontal datum for this panel.
LONG Scale
The nominal scale of the chart. Suitable for display to the user, but not for precise calculations.
BSTR DepthUnits
The description of the units used for depths.
LONG SubPanelNumber
Obtain the subsidiary number identifying this panel in the original source data.
LONG PanelNumber
Obtain the number identifying this panel in the original source data.
BSTR DepthDatum
The description of the vertical datum for depths. E.g. Lowest Astronomical Tide.
BSTR HeightUnits
The description of the units used for heights.
HRESULT PointInPanel([in] DOUBLE dLatGeodeticDegrees, [in] DOUBLE dLonDegrees, [out, retval] VARIANT_BOOL *bRes)
Returns true iff the specified geographical position is inside the panel.
IPixelPoints PixelPoints
Obtain the pixel extent of the panel.
VARIANT_BOOL ManualWGS84ShiftIsSet
Returns true iff the horizontal datum shift has been modified programmatically.
BSTR Description
A meaningful name for the panel.
Details of an explanatory note on a raster panel.
Definition: encxcom.idl:1275
BSTR Type
Coarse categorisation of the note. E.g. Routeing or Sources.
BSTR Code
Fine catIdentification of the note. This is a subsidiary classification within Type().
IPixelRect Rect
The bounding box of the note on the chart. Pixel position (0,0) is always at the top left corner of t...
VARIANT_BOOL Display
Returns true if the note should be displayed to the user.
VARIANT_BOOL Obscures
Returns true if the note overlaps any hydrography.
A collection of notes for a raster panel.
Definition: encxcom.idl:1303
IRasPanelNote Item([in] VARIANT vtIndex)
IUnknown _NewEnum
Properties and methods for ENCX::RouteCheck.
Definition: encxcom.idl:3886
VARIANT_BOOL CheckLinesWithinSafetyDistance
Check line features within safety distance.
VARIANT_BOOL CheckAreasWithinSafetyDistance
Check area features within safety distance.
HRESULT Check([in] IGeoPoints *geoPoints, [in] enum GeoLineType lineType, [in] double safetyContourMetres, [in] double safetyDistanceMetres, [in] IS57Manager *manager, [out, retval] BSTR *xml)
Check route safety.
Classification of the properties associated with an S-57 feature.
Definition: encxcom.idl:1700
HRESULT IsInProduct([in] enum S57Product product, [out, retval] VARIANT_BOOL *result)
Whether this Attribute is used by the specified product.
S57Product Product
Deprecated. Use IsInProduct instead.
BSTR Acronym
The six letter alphanumeric abbreviation for this Attribute.
BSTR Name
The name of the Attribute.
An S-57 feature can contain many attributes. Each attribute has a type (IS57Attribute) and a value.
Definition: encxcom.idl:1724
IS57Attribute Attribute
The type of attribute.
BSTR Value
The value of the Attribute.
A collection of S-57 attribute values.
Definition: encxcom.idl:1743
IS57AttributeValue Item([in] VARIANT vtIndex)
Properties and methods for ENCX::S57CatalogueObserver.
Definition: encxcom.idl:3454
HRESULT Unregister(void)
Ask to not be notified of IS57Manager changes.
HRESULT Register([in] IS57Manager *s57Mgr)
Register to be notified of IS57Manager changes.
Properties and methods for ENCX::S57CellIdentifier.
Definition: encxcom.idl:1761
HRESULT Construct([in] enum S57Product product, [in] BSTR cellName)
Compose from parts.
S57Product Product
ENC or WVS.
BSTR CellName
An eight character alphanumeric string.
Properties and methods for ENCX::S57CellIdentifiers; a collection of S57CellIdentifier.
Definition: encxcom.idl:1786
HRESULT Remove([in] LONG nIndex)
HRESULT Add([in] IS57CellIdentifier *cellId)
IS57CellIdentifier Item([in] VARIANT vtIndex)
Details of a single S-57 cell.
Definition: encxcom.idl:2046
LONG LeastDetailedDisplayScaleToShow_Coverage
Whether the contents of a cell is displayed depends on the relationship between the IS57Draw::Display...
LONG IntendedUsage
Can be combined with CellIdentifier::Product to form a ProductIntendedUsage.
DATE PermitExpiryDate
When the licence expires for this cell.
LONG LeastDetailedDisplayScaleToShow_GroupOne
Whether the contents of a cell is displayed depends on the relationship between the IS57Draw::Display...
DATE LastChanged
When the cell was last modified in the SENC.
VARIANT_BOOL PermitIsSubscription
Returns true iff a permit is required for this cell.
BSTR SoundingDatum
Description of the vertical datum used for sea depths and drying heights.
LONG Edition
S-57 allows a cell to be completely replaces instead of being updated.
DATE IssueDate
When the cell was released.
BSTR Agency
Description of the S-57 data producer. 1:1 correspondence with the Agency code in IS57FeatureIdentifi...
BSTR LongFileName
Empty for most ENC suppliers, useful text from NOAA.
BSTR Country
Name of the country providing the cell.
LONG CompilationScale
The nominal scale. The cell should contain a reasonable amount of detail when drawn at this scale.
LONG LeastDetailedDisplayScaleToShow_All
Whether the contents of a cell is displayed depends on the relationship between the IS57Draw::Display...
LONG LatestUpdate
Cell updates are numbered sequentially. 000 indicates a base cell. 001 is the first update.
BSTR VerticalDatum
Description of the vertical datum used for land heights. See SoundingDatum for the vertical datum use...
IS57CellIdentifier CellIdentifier
Unique label for an S-57 cell.
IGeoRect Extent
The geographical bounding rectangle defined by two parallels and two meridians that encloses the feat...
Classification of the properties associated with an S-57 colour.
Definition: encxcom.idl:1886
HRESULT Construct([in] BSTR name)
Initialisation.
An S-57 Colour Identifier combined with the RGB values of the colour for each colour scheme (Day,...
Definition: encxcom.idl:1909
COLORREF DayRGB
The RGB value of the Colour for daylight viewing.
IS57Colour Colour
The type of colour.
COLORREF NightRGB
The RGB value of the Colour for night time viewing.
COLORREF TwilightRGB
The RGB value of the Colour for twilight viewing.
HRESULT Construct([in] IS57Colour *pColour, DWORD rgbDay, DWORD rgbTwilight, DWORD rgbNight)
Initialisation.
A collection of S-57 colours and associated RGB values.
Definition: encxcom.idl:1946
HRESULT Add([in] IS57ColourValue *colourValue)
HRESULT Remove([in] LONG nIndex)
IS57ColourValue Item([in] VARIANT vtIndex)
The combination of a geographical position and the depth at that position.
Definition: encxcom.idl:2104
DOUBLE Depth
The depth at that geographical position. Units are metres. Referenced to the sounding datum (IS57Cell...
IGeoPoint GeoPoint
The geographical position.
A collection of S-57 soundings (position and depth pairs).
Definition: encxcom.idl:2123
IS57DepthPoint Item([in] VARIANT vtIndex)
IUnknown _NewEnum
Properties and methods for ENCX::S57DisplaySettings.
Definition: encxcom.idl:2886
VARIANT_BOOL IgnoreScamin
When set to true ignore the SCAMIN property on any features so they are drawn.
VARIANT_BOOL SymbolisedAreaBoundaries
When true, the edges of some areas (e.g. anchorages) will be drawn with appropriate symbols (e....
DOUBLE SlightlyShallowContourMetres
Separates depth colours when NumberOfDepthZones is 8.
HRESULT MergeXML([in] BSTR xml)
Merge XML string into existing settings.
VARIANT_BOOL TwoColourShadingForDepthZones
When true, two colours are used for non-drying depths; otherwise 4 colours are used.
VARIANT_BOOL ShowOverlappingCellAreas
When set to true where cells with the same navigational purpose overlap, and DeclutterOverlapping is ...
LONG NumTextGroups
Object classes are organised into text groups. The drawing of each text group can be switched on and ...
S57DateMode DateMode
Change between system date, user date or ignore date when handling drawing of features with date depe...
LONG NumDepthZones
Controls the number of colours used for depths. Supersedes the TwoColourShadingForDepthZones property...
DOUBLE DeepContourMetres
Separates depth colours when TwoColourShadingForDepthZones is false.
S57DisplayImprovements ImprovementsLevel
Controls non-standard ENC display improvements. Associated with decluttering ENC displays.
VARIANT_BOOL ViewingGroup([in] LONG ID)
Object classes are organised into viewing groups. The drawing of each viewing group can be switched o...
VARIANT_BOOL OverscaleIndicator
Draw the overscale indicator.
DOUBLE SlightlyDeepContourMetres
Separates depth colours when NumberOfDepthZones is 8.
HRESULT SetScaminForObjectClass([in] IS57ObjectClass *cr, [in] LONG scamin)
Setting the SCAMIN value overrides any SCAMIN in individual features of that object class....
VARIANT_BOOL SimplifiedSymbols
When true, alternative symbols designed to be distinguishable at low resolutions will be used; otherw...
IS57CellIdentifiers CellFilter
Specific cells that can be drawn (excluding all others) or must not be drawn.
IS57ProductAndUsages Usages
The types of S-57 data that should be drawn.
DOUBLE VeryDeepContourMetres
Separates depth colours when NumberOfDepthZones is 8.
LONG NumViewingGroups
Object classes are organised into viewing groups. The drawing of each viewing group can be switched o...
LONG CompilationScaleZoomFactor
The factor which determines when a cell of a particular compilation scale is drawn.
DOUBLE ShallowContourMetres
Separates depth colours when TwoColourShadingForDepthZones is false.
S57DepthDisplayUnits DepthDisplayUnits
The display units for depths (contours and soundings).
DOUBLE SafetyContourMetres
The contour at this depth, or the next shallower depth, is emboldened.
VARIANT_BOOL CellFilterInclusive
Controls the interpretation of CellFilter().
HRESULT SetViewingGroupRange([in] LONG Start, [in] LONG End, [in] VARIANT_BOOL bShow)
Show or hide multiple viewing groups at once.
HRESULT ScaminForObjectClass([in] IS57ObjectClass *cr, [out, retval] LONG *scamin)
Obtaining the SCAMIN value for an object class. Returns 0 if there is no override value.
DOUBLE FontScaleFactor
Affects size of text. Range 0.4 to 4. Default 1.
VARIANT_BOOL TextGroup([in] LONG ID)
Object classes are organised into text groups. The drawing of each text group can be switched on and ...
VARIANT_BOOL FullLengthLightSectorLines
When true, the rays indicating the limits of a light sector will be extended to their true range (or ...
VARIANT_BOOL FeatureFilterInclusive
Controls the interpretation of FeatureFilter().
VARIANT_BOOL ShowIsolatedDangersInShallowWater
When set to true underwater or above water dangers are highlighted with the isolated danger symbol.
DATE Date
Date for chart display which affects seasonal S-57 features (which used PERSTA,PEREND,...
VARIANT_BOOL DeclutterOverlappingCells
When set to true where cells with the same navigational purpose overlap, only draw one of them.
IS57FeatureIdentifiers FeatureFilter
Specific features that can be drawn (excluding all others) or must not be drawn.
DOUBLE SafetyDepthMetres
Soundings deeper than this are displayed in a lighter colour. Units are metres.
DOUBLE VeryShallowContourMetres
Separates depth colours when NumberOfDepthZones is 8.
HRESULT Copy([out, retval] IS57DisplaySettings **pVal)
Get an identical copy of this object. Like the Clone() method but type safe.
BSTR XML
XML string representing settings.
VARIANT_BOOL HighlightDateDependent
When set to true, draw symbol CHDATD01 with date dependent objects.
Properties and methods for ENCX::S57Draw.
Definition: encxcom.idl:3681
S57Projection ProjectionType
Projection (Cylindrical, Mercator or PolarStereographic)
HRESULT AdjustAreaSymbolOffsets([in] LONG cx, [in] LONG cy)
Call with the offset of each scrolling action.
HRESULT CalculateNewDisplayScale([out] VARIANT_BOOL *pbAllowed, [out] LONG *pnScaleOut, [in] LONG nScaleOld, [in] LONG nChange, [in] LONG nSmallestChangeAllowed)
Obtain the sensible next scale in the specified direction.
HRESULT SetDirectionOfUp([in] DOUBLE degrees, [in] IPixelPoint *ipPixelPt, [out, retval] VARIANT_BOOL *pVal)
The geographical orientation of the drawing surface.
HRESULT HighlightSounding([in] IS57FeatureIdentifier *featureId, [in] double depthMetres, [in] VARIANT_BOOL bClear)
Highlight the sounding (true to clear existing highlights, false to add the sounding to the ones alre...
HRESULT VPFCoveragesAtPoint([in] IPixelPoint *pixelPt, [out, retval] BSTR *pXML)
Return XML describing the VPF coverages at a specified point.
DOUBLE DirectionOfUp
The geographical orientation of the drawing surface.
DOUBLE PixelSizeMetres
The nominal size of a pixel.
SBDetailedMode ScalebarDetailedMode
Get scroll bar behaviour mode when display scale is less than 1:8,000.
HRESULT SetPositionAndScaleExact([in] IGeoRect *geoRect, [out, retval] VARIANT_BOOL *bRes)
Set the geographical position and scale so that the specified rectangle exactly. The corners of the d...
IS57DisplaySettings DisplaySettings
The display settings control the symbolisation (drawing style) and what types of object are drawn or ...
HRESULT SetSize([in] IPixelSize *sz)
The area inside the rectangle (0,0) to (Size.Width,Size.Height) will be drawn.
VARIANT_BOOL DrawGrid
Set to true to draw a simple geodetic grid on top of S-57 data (deprecated - use GridDisplaySettings ...
LONG DisplayScale
The nominal scale of the chart. Suitable for display to the user, but not for precise calculations.
IGeoPix GeoPix
Obtain the geopix.
IGeoPoint PositionOfCentre
Obtain the geographical position of the centre of the drawing surface.
IGridDisplaySettings GridDisplaySettings
The display settings for the grid.
HRESULT SetVPFManager([in] IVPFManager *pMgr)
Connect to a VPF chart folder. All the VPF data to be drawn on the device context will be obtained fr...
HRESULT Draw([in] OLE_HANDLE lHDC)
Draw the chart to the specified device context.
ScaleBarUnits Scalebar
The units for the scalebar.
IGeoRect GeoExtent
The geographical rectangle of the drawing surface.
HRESULT VPFFeaturesAtPoint([in] IPixelPoint *pixelPt, [out, retval] BSTR *pXML)
Return XML describing the VPF features at a specified point.
HRESULT SetPosition([in] IGeoPoint *geoPt, [in] IPixelPoint *pixelPt, [out, retval] VARIANT_BOOL *bRes)
Set the geographical position at the specified pixel position on the drawing surface.
HRESULT DepthAtPoint([in] IPixelPoint *pixelPt, [out] DOUBLE *depthInMetres, [out, retval] VARIANT_BOOL *succeeded)
Get the depth at a pixel position within the view.
DWORD BackgroundColour
Get background colour.
IDisplayPalette DisplayPalette
The colour scheme for the chart. Use to draw the chart with lower luminance for twilight and night vi...
HRESULT SetPositionAndScale([in] IGeoRect *geoRect, [out, retval] VARIANT_BOOL *bRes)
Set the geographical position and scale so that the specified rectangle just fits on the drawing surf...
HRESULT GetSize([out, retval] IPixelSize **sz)
The area inside the rectangle (0,0) to (Size.Width,Size.Height) will be drawn.
IWVSDisplaySettings WVSDisplaySettings
The display settings for single file WVS.
VARIANT_BOOL ShowPreviousCells
Draw the S-57 cells using the previous updates. Off by default.
HRESULT SetManager([in] IS57Manager *pMgr)
Connect to a SENC. All the S-57 data to be drawn on the device context will be obtained from pMgr.
HRESULT SetDisplayScale([in] LONG nDisplayScale, [in] IPixelPoint *ipPixelPt)
Set the nominal scale of the chart. Suitable for display to the user, but not for precise calculation...
HRESULT SetDrawLayerCallback([in] enum S57CallBackDrawAction callBackDrawAction, [in] IS57ProductAndUsage *iproductAndUsage, [in] BYTE Layer)
Insert a callback into the drawing sequence.
HRESULT HighlightFeature([in] IS57FeatureIdentifier *featureId, [in] VARIANT_BOOL bClear)
Highlight the feature (true to clear existing highlights, false to add the feature to the ones alread...
IVPFDisplaySettings VPFDisplaySettings
The VPF display settings to control drawing.
HRESULT FeaturesAtPoint([in] IPixelPoint *pixelPt, [out, retval] IS57DrawnFeatures **pVal)
How a feature is (or would be) drawn. Obtained when hit-testing a S57Draw object.
Definition: encxcom.idl:2623
IS57FeatureIdentifier FeatureID
The identity of the feature.
LONG DisplayPriorityPoint
The Z order of the object for points. 0 (lowest) to 9 (highest) within the feature's ProductIntendedU...
IS57DrawnFeatures Slaves
Child objects (if any) and how they are drawn.
VARIANT_BOOL Visible
Whether the object is actually drawn. Some objects exist but are not symbolised (e....
LONG DisplayPriorityArea
The Z order of the object for areas. 0 (lowest) to 9 (highest) within the feature's ProductIntendedUs...
LONG DisplayPriorityLine
The Z order of the object for lines. 0 (lowest) to 9 (highest) within the feature's ProductIntendedUs...
A collection of features returned by hit-testing an S57Draw object.
Definition: encxcom.idl:2651
IS57DrawnFeature Item([in] VARIANT vtIndex)
A geographical area - a closed region on the surface of the earth.
Definition: encxcom.idl:2141
IGeoPoints Points
A snapshot of the Geographic Points that make up the face.
A collection of S-57 faces.
Definition: encxcom.idl:2158
IS57Face Item([in] VARIANT vtIndex)
IUnknown _NewEnum
Information about a feature of 'Area' geometry.
Definition: encxcom.idl:2542
IS57Faces Faces
The geometry of the feature.
IS57FeatureInfo FeatureInfo
The basic information as for any type of feature.
Properties and methods for ENCX::S57FeatureIdentifier.
Definition: encxcom.idl:2451
SHORT FIDS
The combination of FIDN and FIDS (usually) uniquely identifies an S-57 feature within a particular S-...
IS57CellIdentifier CellIdentifier
The same feature can occur in multiple cells (e.g. if a line or area straddles a cell boundary).
LONG Index
In some cells, the same identifier is used for multiple features. Index can be used to differentiate ...
HRESULT ConstructEx([in] SHORT Agency, [in] LONG FIDN, [in] SHORT FIDS, [in] IS57CellIdentifier *piCellID, [in] LONG index)
Compose from parts including index.
LONG FIDN
The combination of FIDN and FIDS (usually) uniquely identifies an S-57 feature within a particular S-...
HRESULT ToString([out, retval] BSTR *pVal)
Obtain a string representation of the identifier.
SHORT Agency
Per provider identifier of a particular feature in a particular cell. 1:1 correspondence with the Age...
HRESULT ToStringEx([out, retval] BSTR *pVal)
Obtain a string representation of the identifier.
HRESULT FromString([in] BSTR val)
Construct from string.
HRESULT Construct([in] SHORT Agency, [in] LONG FIDN, [in] SHORT FIDS, [in] IS57CellIdentifier *piCellID)
Compose from parts.
A collection of S-57 feature identifiers.
Definition: encxcom.idl:2495
HRESULT Remove([in] LONG nIndex)
HRESULT Add([in] IS57FeatureIdentifier *featureId)
IS57FeatureIdentifier Item([in] VARIANT vtIndex)
Generic information. Can be used with any feature.
Definition: encxcom.idl:2520
IS57AttributeValues Attributes
Obtain the collection of attributes (and their values) for this feature.
IS57FeatureIdentifier FeatureID
Globally unique identification of the feature.
IS57ObjectClass ObjectClass
Classification of features. E.g. DEPARE.
IS57FeatureIdentifiers Slaves
Obtain the collection of subsidiary features for this feature.
Information about a feature of 'Line' geometry.
Definition: encxcom.idl:2560
IS57FeatureInfo FeatureInfo
The basic information as for any type of feature.
IGeoPoints Points
The geometry of the feature.
Information about a feature of 'Point' geometry.
Definition: encxcom.idl:2581
IS57FeatureInfo FeatureInfo
The basic information as for any type of feature.
IGeoPoint Point
The geometry of the feature.
Properties and methods for ENCX::S57FeatureQuery.
Definition: encxcom.idl:3422
HRESULT SetAreaFilter([in] IGeoRect *rect)
Constrain to a geographical area. Default is the whole world.
IS57FeatureIdentifiers Results
Obtain the collection of features that satisfy the constraints.
HRESULT SetObjectFilter([in] IS57ObjectClassCollection *ObjectClassCollection, [in] VARIANT_BOOL bInclude)
Constrain to specific types of object.
HRESULT Construct([in] IS57Manager *manager, [in] IS57CellIdentifier *cellid)
Specify the SENC the S-57 cell to be queried.
HRESULT SetFeatureFilter([in] IS57FeatureIdentifiers *featureIds, [in] VARIANT_BOOL bInclude)
Constrain to specific features.
Information about a collection of soundings.
Definition: encxcom.idl:2600
IS57DepthPoints Depths
The geometry of the feature.
IS57FeatureInfo FeatureInfo
The basic information as for any type of feature.
Properties and methods for ENCX::S57Manager.
Definition: encxcom.idl:3343
HRESULT FeatureInfo([in] IS57FeatureIdentifier *pifid, [out, retval] IS57FeatureInfo **pVal)
Obtain the general details for a specified S-57 feature.
HRESULT RunInstallApplication([in] BSTR pathToApplication)
Invoke the CherSoft Windows application that installs and updates ENC cells in the SENC.
HRESULT IsValidSencFolder([in] BSTR sPath, [out, retval] VARIANT_BOOL *bRes)
Is the path pointing to a valid SENC. A SENC is the folder structure in which ENC chart data is insta...
HRESULT Cells([in] IS57ProductAndUsages *ProductAndUsages, [in] IGeoRect *cr, [out, retval] IS57CellIdentifiers **pVal)
Obtain the collection of all the cells in this SENC.
IS57ProductAndUsages InstalledProducts
Obtain the collection of S-57 products currently present in this SENC.
HRESULT FeatureInfoSounding([in] IS57FeatureIdentifier *pifid, [out, retval] IS57FeatureSounding **pVal)
Obtain the general details and spatial details (one or more point geographical positions) for a speci...
HRESULT OpenSenc([in] ILibrary *EncXLibrary, [in] BSTR sSencFolder)
Associate this manager with a specified folder.
HRESULT UserPermit([out, retval] BSTR *pUserPermit)
The ENC user permit needed to buy commercial ENC chart data.
HRESULT Geometry([in] IS57FeatureIdentifier *pifid, [out, retval] enum S57FeatureGeometry *pVal)
Obtain the geometry of a specified S-57 feature.
HRESULT CellInfo([in] IS57CellIdentifier *piCellID, [out, retval] IS57CellInfo **pVal)
Obtain the details for a specified S-57 cell.
IS57CellIdentifiers UnusedCells
Obtain a collection of the cells in the Senc that cannot be used. These cells need to be re-installed...
HRESULT FeatureInfoLine([in] IS57FeatureIdentifier *pifid, [out, retval] IS57FeatureLine **pVal)
Obtain the general details and spatial details (a chain of geographical positions) for a specified S-...
HRESULT FeatureInfoArea([in] IS57FeatureIdentifier *pifid, [out, retval] IS57FeatureArea **pVal)
Obtain the general details and spatial details (one or more rings of geographical positions) for a sp...
HRESULT CreateSencFolder([in] BSTR sPath)
Create a SENC. A SENC is the folder structure in which ENC chart data is installed.
HRESULT OpenSencAndWVS([in] ILibrary *EncXLibrary, [in] BSTR sSencFolder, [in] BSTR sWVSFileOrFolder)
Open ENC SENC and World Vector Shoreline .cvcf file or WVS SENC folder.
HRESULT ObjectClass([in] IS57FeatureIdentifier *fid, [out, retval] IS57ObjectClass **pVal)
Obtain the type (ObjectClass in S-57 language) of a specified S-57 feature.
HRESULT FeatureInfoPoint([in] IS57FeatureIdentifier *pifid, [out, retval] IS57FeaturePoint **pVal)
Obtain the general details and spatial details (a single geographical position) for a specified S-57 ...
HRESULT CloseSenc(void)
Dissociate from the current folder.
HRESULT OpenSenc2([in] ILibrary *EncXLibrary, [in] IS57ManagerInitialisationData *p)
Associate this manager with a specified folder.
Properties and methods for ENCX::S57ManagerInitialisationData.
Definition: encxcom.idl:3300
BSTR SencPath
Associate the manager with a specified folder.
BSTR PresentationLibraryFileName
The file name and extension for the presentation library file.
VARIANT_BOOL ReadOnly
Read only SENCs will not be watched for changes and will be fully initialized to draw charts as soon ...
BSTR WVSPath
Associate the manager with a World Vector Shoreline .cvcf file or SENC folder.
IS57ColourValues ColourValues
Colour values that will override the default values.
A collection of S-57 Object Classes.
Definition: encxcom.idl:2427
IS57ObjectClass Item([in] VARIANT vtIndex)
HRESULT Add([in] IS57ObjectClass *objectClass)
HRESULT Remove([in] LONG nIndex)
Properties and methods for ENCX::S57ObjectClass.
Definition: encxcom.idl:2399
HRESULT IsInProduct([in] enum S57Product product, [out, retval] VARIANT_BOOL *result)
Whether this ObjectClass is used by the specified product.
S57Product Product
Deprecated. Use IsInProduct instead.
BSTR Acronym
The six letter alphanumeric abbreviation for this ObjectClass.
HRESULT Construct([in] BSTR acronym)
Initialisation.
BSTR Description
The name of the ObjectClass.
Properties and methods for ENCX::S57ProductAndUsage.
Definition: encxcom.idl:1971
S57Product Product
ENC, IENC or WVS.
BYTE IntendedUsage
For ENC and IENC, a navigational purpose. For WVS, 1.
A collection of S-57 product / intended usage pairs.
Definition: encxcom.idl:2019
HRESULT Remove([in] LONG nIndex)
HRESULT RestoreDefault()
HRESULT Add([in] IS57ProductAndUsage *ProductAndUsage)
IS57ProductAndUsage Item([in] VARIANT vtIndex)
Properties and methods for ENCX::VPFCatalogueObserver.
Definition: encxcom.idl:3661
HRESULT Register([in] IVPFManager *vpfMgr)
Register to be notified of chart folder changes. Call OpenVenc first.
HRESULT Unregister(void)
Ask to not be notified of chart folder changes.
Properties and methods for ENCX::VPFDisplaySettings.
Definition: encxcom.idl:3570
DOUBLE CompilationScaleZoomFactor
The factor which determines when a cell of a particular compilation scale is drawn.
DOUBLE ShallowContourMetres
Separates depth colours when TwoColourShadingForDepthZones is false.
IVPFFeatureSet FeatureSet
The types of features to draw.
VARIANT_BOOL ShallowPattern
ShallowPattern draw diamond shallow patterns in areas where the depth is less than or equal to Shallo...
DOUBLE SafetyContourMetres
The contour at this depth, or the next shallower depth, is emboldened.
DOUBLE DeepContourMetres
Separates depth colours when TwoColourShadingForDepthZones is false.
VARIANT_BOOL TwoColourShadingForDepthZones
When true, two colours are used for non-drying depths; otherwise 4 colours are used.
HRESULT Copy([out, retval] IVPFDisplaySettings **pVal)
Get an identical copy of this object. Like the Clone() method but type safe.
VARIANT_BOOL SimplifiedSymbols
When true, alternative symbols designed to be distinguishable at low resolutions will be used; otherw...
Properties and methods for ENCX::VPFFeatureSet.
Definition: encxcom.idl:3474
HRESULT Add([in] enum VPFFeatureType t)
HRESULT Remove([in] enum VPFFeatureType t)
HRESULT Contains([in] enum VPFFeatureType t, [out, retval] VARIANT_BOOL *pVal)
Properties and methods for ENCX::IVPFIteratorGuide_CoverageUse.
Definition: encxcom.idl:3493
Properties and methods for ENCX::VPFIteratorGuide_DatabaseUse.
Definition: encxcom.idl:3532
IVPFIteratorGuide_LibraryUse Item([in] VARIANT vtIndex)
Properties and methods for ENCX::IVPFIteratorGuide_LibraryUse.
Definition: encxcom.idl:3511
IVPFIteratorGuide_CoverageUse Item([in] VARIANT vtIndex)
IGeoRect Extent
The geographical bounding rectangle defined by two parallels and two meridians that encloses the libr...
Properties and methods for ENCX::VPFIteratorGuide.
Definition: encxcom.idl:3551
IVPFIteratorGuide_DatabaseUse Item([in] VARIANT vtIndex)
Properties and methods for ENCX::VPFManager.
Definition: encxcom.idl:3634
HRESULT OpenVenc([in] ILibrary *EncXLibrary, [in] BSTR chartFolder)
Associate this manager with a specified chart folder.
IVPFIteratorGuide IteratorGuide
The collection of Library/Database/Coverage in the chart folder.
HRESULT CloseVenc(void)
Dissociate from the current folder.
HRESULT RunInstallApplication([in] BSTR pathToApplication)
Invoke the CherSoft Windows application to install/update files in the VPF chart folder.
Properties and methods for ENCX::WVSDisplaySettings. These settings only affect single-file WVS drawi...
Definition: encxcom.idl:3137
FLOAT LandOutlineWidth
Width of the land outline.
DWORD LandOutlineColour
Colour of the land outline.
DWORD AntarcticaOutlineColour
Colour of Antarctica outline.
HRESULT Copy([out, retval] IWVSDisplaySettings **pVal)
Get an identical copy of this object. Like the Clone() method but type safe.
DWORD BorderColour
Colour of the political borders.
DWORD LandColour
Fill colour of the land.
FLOAT BorderWidth
Width of the political borders.
DWORD AntarcticaColour
Fill colour of Antarctica.
DWORD LakeColour
Colour of the lakes.
FLOAT RiverWidth
Width of the rivers.
VARIANT_BOOL Show
Show or hide WVS.
DWORD RiverColour
Colour of the rivers.
FLOAT LakeOutlineWidth
Width of the lake outline.
DWORD LakeOutlineColour
Colour of the lake outline.
An SDK for the display and use of marine navigational information supporting S-57/ENC and ARCS.
Definition: encxcom.idl:3915