results interfaces draft 6idl
// This is IDL for the Diagnostic Result component of the iSHOP Standards for the
// Integrated Automotive Service and Repair Shop.
// This is an Alpha Version Only and is Not Recommended or Offered For Implementation.
// This version is dated 3 October 2000.
//
import "oaidl.idl";
import "ocidl.idl";
// Forward declarations...
interface IiSHOPServerAdmin;
interface IiSHOPDiagnosticResult;
interface IiSHOPDiagnosticInfo;
interface IiSHOPViewResult;
[
uuid(6C6A6170-6D59-11d4-8131-00C04F02EB90),
version(1.0),
helpstring("Diagnostic Result 1.0 Type Library")
]
library IDIAGNOSTICRESULTLib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
// Interface IiSHOPDiagnosticResult...
[
object,
uuid(EC3DA6A1-71FC-11D4-B665-00C04F495EA4),
dual,
oleautomation,
helpstring("IiSHOPDiagnosticResult Interface"),
pointer_default(unique)
]
interface IiSHOPDiagnosticResult : IDispatch
{
[helpstring("method GetAdmin")] HRESULT GetAdmin([out] IiSHOPServerAdmin** ppServerAdmin);
[helpstring("method GetDiagnosticInfo")] HRESULT GetDiagnosticInfo([out] IiSHOPDiagnosticInfo** ppDiagnosticInfo);
[helpstring("method GetViewResult")] HRESULT GetViewResult([out] IiSHOPViewResult** ppViewResult);
};
// Interface IiSHOPDiagnosticInfo...
[
object,
uuid(B2FBD1B0-6969-11d4-8131-00C04F02EB90),
dual, // Adds V-table access.
oleautomation, // Only using standard OLE data types; also implied by "dual" attribute.
helpstring("IiSHOPDiagnosticInfo Interface"),
pointer_default(unique)
]
interface IiSHOPDiagnosticInfo : IDispatch // Derive from IDispatch to support "dual" interface type.
{
[propget, id(1), helpstring("property ProgID")] HRESULT ProgID([out, retval] BSTR *pbstrProgID);
[propget, id(2), helpstring("property DiagnosticDescription")] HRESULT DiagnosticDescription([out, retval] BSTR *pbstrDiagDescription);
[propput, id(2), helpstring("property DiagnosticDescription")] HRESULT DiagnosticDescription([in] BSTR bstrDiagDescription);
[propget, id(3), helpstring("property Timestamp")] HRESULT Timestamp([out, retval] DATE *pTimestamp);
[propget, id(4), helpstring("property DiagnosticType")] HRESULT DiagnosticType([out, retval] BSTR *pbstrDiagType);
[propget, id(5), helpstring("property EquipmentID")] HRESULT EquipmentID([out, retval] BSTR *pbstrEquipmentID);
[propget, id(6), helpstring("property EquipmentMfg")] HRESULT EquipmentMfg([out, retval] BSTR *pbstrEquipmentMfg);
[propget, id(7), helpstring("property ViewProgID")] HRESULT ViewProgID([out, retval] BSTR *pbstrViewProgID);
[propget, id(8), helpstring("property WorkOrderNumber")] HRESULT WorkOrderNumber([out, retval] long *plWorkOrderNumber);
};
// Interface IiSHOPViewResult...
[
object,
uuid(B2FBD1B1-6969-11d4-8131-00C04F02EB90),
dual,
oleautomation,
helpstring("IiSHOPViewResult Interface"),
pointer_default(unique)
]
interface IiSHOPViewResult : IDispatch
{
[helpstring("method AttachResult")] HRESULT AttachResult([in] IiSHOPDiagnosticResult* pUnknown);
[helpstring("method DetachResult")] HRESULT DetachResult();
[helpstring("method CopyToClipboard")] HRESULT CopyToClipboard();
[helpstring("method Print")] HRESULT Print( BSTR sValue );
[propget, id(1), helpstring("property SummaryInfoMode")] HRESULT SummaryInfoMode([out, retval] VARIANT_BOOL *pbSummaryInfoMode);
[propput, id(1), helpstring("property SummaryInfoMode")] HRESULT SummaryInfoMode([in] VARIANT_BOOL bSummaryInfoMode);
};
// Interface IiSHOPServerAdmin - should be moved to a common file.
[
object,
uuid(453AB295-2818-11D4-8724-005004051BEB),
dual,
oleautomation,
helpstring("IiSHOPServerAdmin Interface"),
pointer_default(unique)
]
interface IiSHOPServerAdmin : IDispatch
{
[propget, id(1), helpstring("property CompanyName")] HRESULT CompanyName([out, retval] BSTR *pbstrCompanyName);
[propget, id(2), helpstring("property DataVersion")] HRESULT DataVersion([out, retval] BSTR *pbstrDataVersion);
[propget, id(3), helpstring("property CopyrightData")] HRESULT CopyrightData([out, retval] BSTR *pbstrCopyrightData);
[propget, id(4), helpstring("property CopyrightSoftware")] HRESULT CopyrightSoftware([out, retval] BSTR *pbstrCopyrightSoftware);
[propget, id(5), helpstring("property LicenseLimit")] HRESULT LicenseLimit([out, retval] long *plLicenseLimit);
[propget, id(6), helpstring("property ServerExpiration")] HRESULT ServerExpiration([out, retval] DATE *pdateServerExpiration);
[propget, id(7), helpstring("property ServerExpirationEnforced")] HRESULT ServerExpirationEnforced([out, retval] VARIANT_BOOL *pbServerExpirationEnforced);
[propget, id(8), helpstring("property LicenseCount")] HRESULT LicenseCount([out, retval] long *plLicenseCount);
};
};