// smileCOM.idl : IDL source for smileCOM // // This file will be processed by the MIDL tool to // produce the type library (smileCOM.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; [ object, uuid(F8B4EB12-24E4-4F40-8ABA-169BFEDD2BB3), dual, nonextensible, pointer_default(unique) ] interface ISmileNetwork : IDispatch{ [id(1)] HRESULT ReadFile([in] BSTR filename); [id(2)] HRESULT UpdateBeliefs(); [id(3)] HRESULT GetAllNodeIds([out, retval] SAFEARRAY(VARIANT)* nodes); [id(4)] HRESULT GetNodeName([in] BSTR nodeId, [out, retval] BSTR* nodeName); [id(5)] HRESULT GetNodeType([in] BSTR nodeId, [out, retval] BSTR* nodeType); [id(6)] HRESULT ClearAllEvidence(); [id(7)] HRESULT ClearAllTargets(); [id(8)] HRESULT SetEvidence([in] BSTR nodeId, [in] VARIANT evidence); [id(9)] HRESULT GetEvidence([in] BSTR nodeId, [out, retval] VARIANT* evidence); [id(10)] HRESULT IsEvidence([in] BSTR nodeId, [out, retval] VARIANT_BOOL* evidence); [id(11)] HRESULT ClearEvidence([in] BSTR nodeId); [id(12)] HRESULT IsTarget([in] BSTR nodeId, [out, retval] VARIANT_BOOL* target); [id(13)] HRESULT SetTarget([in] BSTR nodeId, [in] VARIANT_BOOL target); [id(14)] HRESULT GetOutcomeIds([in] BSTR nodeId, [out, retval] SAFEARRAY(VARIANT)* outcomes); [id(15)] HRESULT IsValueValid([in] BSTR nodeId, [out, retval] VARIANT_BOOL* valid); [id(16)] HRESULT IsValueDiscretized([in] BSTR nodeId, [out, retval] VARIANT_BOOL* discrete); [id(17)] HRESULT GetNodeValue([in] BSTR nodeId, [out, retval] SAFEARRAY(VARIANT)* value); [id(18)] HRESULT GetNodeMean([in] BSTR nodeId, [out, retval] DOUBLE* mean); [id(19)] HRESULT GetNodeStdDev([in] BSTR nodeId, [out, retval] DOUBLE* stddev); }; [ object, uuid(D534C23E-8690-4A9B-AB95-094F4E7F086D), dual, nonextensible, pointer_default(unique) ] interface ISmileLicense : IDispatch{ [id(1)] HRESULT Initialize([in] BSTR p, [in] SAFEARRAY(VARIANT) q); }; [ uuid(B19F9F4B-E2E0-4113-B5F7-9308D31124B4), version(1.0), ] library smileCOMLib { importlib("stdole2.tlb"); [ uuid(15F8EAE0-FB76-4EE2-8EA3-4C4A0F6E1EE2) ] coclass SmileNetwork { [default] interface ISmileNetwork; }; [ uuid(67976C79-7F91-471C-9530-A436D4C4A578) ] coclass SmileLicense { [default] interface ISmileLicense; }; };