Home ::  About  :: Contact
  • Main Page
  • Namespaces
  • Classes
  • Files

_encxcom_encx.idl

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

Copyright © 2012 CherSoft Ltd, All rights reserved.

SDK Reference
:: Namespace List
:: Class Hierarchy
:: Class List
:: File List
:: Class Members
:: File Members
Articles and Examples
FAQ