// Dispatcher.idl : IDL source for Dispatcher.dll
//

// This file will be processed by the MIDL tool to
// produce the type library (Dispatcher.tlb) and marshalling code.

import "oaidl.idl";
import "ocidl.idl";

import "workNI.idl";
	[
		object,
#ifdef OFA
      uuid(242E5D88-8183-443c-9E27-16C64057B8C5),
#else
		uuid(59C98121-C29C-11D2-A1E0-00A0C9AFE114),
#endif
		dual,
		helpstring("IDCTDispatcher Interface"),
		pointer_default(unique)
	]
	interface IDCTDispatcher : IDispatch
	{
		[id(1), helpstring("method DispatchToServers")] HRESULT DispatchToServers([in,out]IUnknown ** ppWorkItem);
		[id(2), helpstring("method AllAgentsStarted")] HRESULT AllAgentsStarted([out]long* bAllAgentsStarted);
		[id(3), helpstring("method GetStartedAgentsInfo")] HRESULT GetStartedAgentsInfo([out]long* nNumFailedStartAgents, [out]SAFEARRAY(BSTR) *ppbstrStartedAgents, [out]SAFEARRAY(BSTR) *ppbstrJobidAgents, [out]SAFEARRAY(BSTR) *ppbstrStartFailedAgents, [out]SAFEARRAY(BSTR) *ppbstrFailureDesc);
	};
[
#ifdef OFA
   uuid(ED268F73-C7A5-467d-BC3C-2034781A3CB0),
#else
	uuid(4D51F752-E6C7-11d2-A1E4-00A0C9AFE114),
#endif
	version(1.0),
	helpstring("Dispatcher 1.0 Type Library")
]
library MCSDISPATCHERLib
{
	importlib("stdole32.tlb");
	importlib("stdole2.tlb");

	[
#ifdef OFA
      uuid(041A4E2E-A52C-4791-A550-78120E014081),
#else
		uuid(59C98122-C29C-11D2-A1E0-00A0C9AFE114),
#endif
		helpstring("DCTDispatcher Class")
	]
	coclass DCTDispatcher
	{
		[default] interface IDCTDispatcher;
      interface IWorkNode;
	};
	[
#ifdef OFA
      uuid(B6F9F4EE-3E37-4f07-878F-CABA0EEB6298),
#else
		uuid(59C98124-C29C-11D2-A1E0-00A0C9AFE114),
#endif
		helpstring("DCTInstaller Class")
	]
	coclass DCTInstaller
	{
		[default] interface IWorkNode;
	};
		
};