00001 #pragma once
00002
00003 #include "Intelligence.h"
00004
00005 class CIntelligenceFactory : public IClassFactory
00006 {
00007 private:
00008 ULONG lockCount;
00009 ULONG refCount;
00010 DWORD regToken;
00011
00012 public:
00013 static CIntelligence *intelligence;
00014
00015 CIntelligenceFactory();
00016 ~CIntelligenceFactory();
00017
00018 static HRESULT reg();
00019 static HRESULT unreg();
00020
00021
00022 STDMETHODIMP QueryInterface(REFIID, LPVOID*);
00023 STDMETHODIMP_ (ULONG) AddRef();
00024 STDMETHODIMP_ (ULONG) Release();
00025
00026
00027 STDMETHODIMP CreateInstance(LPUNKNOWN, REFIID, LPVOID*);
00028 STDMETHODIMP LockServer(BOOL);
00029
00030 STDMETHODIMP Register();
00031 STDMETHODIMP Unregister();
00032 STDMETHODIMP_ (BOOL) StartServer();
00033 STDMETHODIMP_ (VOID) StopServer();
00034 };