home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / winui / shell / bandobjs / clsfact.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-12-11  |  1.5 KB  |  56 lines

  1. /**************************************************************************
  2.    THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  3.    ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  4.    THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  5.    PARTICULAR PURPOSE.
  6.  
  7.    Copyright 1997 - 1998 Microsoft Corporation.  All Rights Reserved.
  8. **************************************************************************/
  9.  
  10. /**************************************************************************
  11.  
  12.    File:          ClsFact.h
  13.    
  14.    Description:   CClassFactory definitions.
  15.  
  16. **************************************************************************/
  17.  
  18. #ifndef CLASSFACTORY_H
  19. #define CLASSFACTORY_H
  20.  
  21. #include <windows.h>
  22. #include "Globals.h"
  23. #include "DeskBand.h"
  24. #include "ExplrBar.h"
  25. #include "CommBand.h"
  26.  
  27. /**************************************************************************
  28.  
  29.    CClassFactory class definition
  30.  
  31. **************************************************************************/
  32.  
  33. class CClassFactory : public IClassFactory
  34. {
  35. protected:
  36.    DWORD m_ObjRefCount;
  37.  
  38. public:
  39.    CClassFactory(CLSID);
  40.    ~CClassFactory();
  41.  
  42.    //IUnknown methods
  43.    STDMETHODIMP QueryInterface(REFIID, LPVOID*);
  44.    STDMETHODIMP_(DWORD) AddRef();
  45.    STDMETHODIMP_(DWORD) Release();
  46.  
  47.    //IClassFactory methods
  48.    STDMETHODIMP CreateInstance(LPUNKNOWN, REFIID, LPVOID*);
  49.    STDMETHODIMP LockServer(BOOL);
  50.  
  51. private:
  52.    CLSID m_clsidObject;
  53. };
  54.  
  55. #endif   //CLASSFACTORY_H
  56.