source: trunk/Utilities/MaxMindGeoLite/MaxMindGeoLite.idl @ 48

Last change on this file since 48 was 48, checked in by roman, 12 years ago
  • Property svn:keywords set to Id
File size: 2.3 KB
Line 
1////////////////////////////////////////////////////////////
2// Copyright (C) Roman Ryltsov, 2008-2012
3// Created by Roman Ryltsov roman@alax.info
4// 
5// $Id: MaxMindGeoLite.idl 48 2012-02-11 22:26:24Z roman $
6
7import "oaidl.idl";
8import "ocidl.idl";
9
10[
11        object,
12        uuid(3C3125E8-60D6-4703-B7B4-7A024CEA2F05),
13        dual,
14        oleautomation,
15        helpstring("ILocation Interface"),
16        pointer_default(unique)
17]
18interface ILocation : IDispatch
19{
20        [propget, id(1)] HRESULT Country([out, retval] BSTR* psCountry);
21        [propget, id(2)] HRESULT Region([out, retval] BSTR* psRegion);
22        [propget, id(3)] HRESULT City([out, retval] BSTR* psCity);
23        [propget, id(4)] HRESULT PostalCode([out, retval] BSTR* psPostalCode);
24        [propget, id(5)] HRESULT Latitude([out, retval] DOUBLE* pfLatitude);
25        [propget, id(6)] HRESULT Longitude([out, retval] DOUBLE* pfLongitude);
26        [propget, id(7)] HRESULT MetroCode([out, retval] BSTR* psMetroCode);
27        [propget, id(8)] HRESULT AreaCode([out, retval] BSTR* psAreaCode);
28};
29[
30        object,
31        uuid(B6E2FBEB-1AC2-424B-B2DA-FF6398ADCF0C),
32        dual,
33        oleautomation,
34        helpstring("ILocations Interface"),
35        pointer_default(unique)
36]
37interface ILocations : IDispatch
38{
39        [propget, id(DISPID_VALUE)] HRESULT Item([in] VARIANT vIndex, [out, retval] ILocation** ppLocation);
40};
41[
42        object,
43        uuid(34BF53BB-D4C8-4002-A0EC-5BA70FE7ACA3),
44        dual,
45        oleautomation,
46        helpstring("ILazyLocations Interface"),
47        pointer_default(unique)
48]
49interface ILazyLocations : ILocations
50{
51        [propget, id(1)] HRESULT Initialized([out, retval] VARIANT_BOOL* pbInitialized);
52};
53[
54        uuid(F80BC862-E43E-4809-ACFC-1A608209C860),
55        version(1.0),
56        helpstring("Alax.Info Geolocation Tools (using MaxMind GeoLite) 1.0 Type Library")
57]
58library AlaxInfoMaxMindGeoLite
59{
60        importlib("stdole2.tlb");
61        [
62                uuid(E4758497-363F-467D-BE04-C2222748C7E6),
63                noncreatable,
64                helpstring("Location Class")
65        ]
66        coclass Location
67        {
68                [default] interface ILocation;
69                //interface ISupportErrorInfo;
70        };
71        [
72                uuid(350EBCB9-942A-4D11-9192-54AA6230F7BF),
73                helpstring("Locations Class")
74        ]
75        coclass Locations
76        {
77                [default] interface ILocations;
78                //interface ISupportErrorInfo;
79        };
80        [
81                uuid(29752330-E1FB-43D0-ADBF-21AF77633259),
82                helpstring("LazyLocations Class")
83        ]
84        coclass LazyLocations
85        {
86                [default] interface ILocations;
87                interface ILazyLocations;
88                //interface ISupportErrorInfo;
89        };
90};
Note: See TracBrowser for help on using the repository browser.