diff options
Diffstat (limited to 'diff_ext_for_kdiff3/class_factory.h')
-rw-r--r-- | diff_ext_for_kdiff3/class_factory.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/diff_ext_for_kdiff3/class_factory.h b/diff_ext_for_kdiff3/class_factory.h new file mode 100644 index 0000000..da91979 --- /dev/null +++ b/diff_ext_for_kdiff3/class_factory.h @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2003, Sergey Zorin. All rights reserved. + * + * This software is distributable under the BSD license. See the terms + * of the BSD license in the LICENSE file provided with this software. + * + */ + +#ifndef __class_factory_h__ +#define __class_factory_h__ + +#include <shlobj.h> +#include <shlguid.h> + +class CLASS_FACTORY : public IClassFactory { + public: + CLASS_FACTORY(); + virtual ~CLASS_FACTORY(); + + //IUnknown members + STDMETHODIMP QueryInterface(REFIID, void**); + STDMETHODIMP_(ULONG) AddRef(); + STDMETHODIMP_(ULONG) Release(); + + //ICLASS_FACTORY members + STDMETHODIMP CreateInstance(IUnknown*, REFIID, void**); + STDMETHODIMP LockServer(BOOL); + + private: + ULONG _ref_count; +}; + +#endif //__class_factory_h__ |