sbWindowsFormatterClassFactory.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set sw=2 :miv */
3 /*
4  *=BEGIN SONGBIRD GPL
5  *
6  * This file is part of the Songbird web player.
7  *
8  * Copyright(c) 2005-2009 POTI, Inc.
9  * http://www.songbirdnest.com
10  *
11  * This file may be licensed under the terms of of the
12  * GNU General Public License Version 2 (the ``GPL'').
13  *
14  * Software distributed under the License is distributed
15  * on an ``AS IS'' basis, WITHOUT WARRANTY OF ANY KIND, either
16  * express or implied. See the GPL for the specific language
17  * governing rights and limitations.
18  *
19  * You should have received a copy of the GPL along with this
20  * program. If not, go to http://www.gnu.org/licenses/gpl.html
21  * or write to the Free Software Foundation, Inc.,
22  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
23  *
24  *=END SONGBIRD GPL
25  */
26 
27 #ifndef __SB_WINDOWS_FORMATTER_CLASS_FACTORY_H__
28 #define __SB_WINDOWS_FORMATTER_CLASS_FACTORY_H__
29 
30 //------------------------------------------------------------------------------
31 //------------------------------------------------------------------------------
32 //
33 // Songbird Windows formatter class factory services defs.
34 //
35 //------------------------------------------------------------------------------
36 //------------------------------------------------------------------------------
37 
43 //------------------------------------------------------------------------------
44 //
45 // Songbird Windows formatter class factory imported services.
46 //
47 //------------------------------------------------------------------------------
48 
49 // Windows imports.
50 #include <objbase.h>
51 
52 
53 //------------------------------------------------------------------------------
54 //
55 // Songbird Windows formatter class factory classes.
56 //
57 //------------------------------------------------------------------------------
58 
64 class sbWindowsFormatterClassFactory : public IClassFactory
65 {
66  //----------------------------------------------------------------------------
67  //
68  // Public interface.
69  //
70  //----------------------------------------------------------------------------
71 
72 public:
73 
74  //
75  // IUnknown implementation.
76  //
77 
78  STDMETHOD_(ULONG, AddRef)();
79 
80  STDMETHOD_(ULONG, Release)();
81 
82  STDMETHOD(QueryInterface)(REFIID aIID,
83  void** aInterface);
84 
85 
86  //
87  // IClassFactory implementation.
88  //
89 
90  STDMETHOD(CreateInstance)(IUnknown* aOuter,
91  REFIID aIID,
92  void** aInstance);
93 
94  STDMETHOD(LockServer)(BOOL aLock);
95 
96 
97  //
98  // Public services.
99  //
100 
102 
104 
105 
106  //----------------------------------------------------------------------------
107  //
108  // Protected interface.
109  //
110  //----------------------------------------------------------------------------
111 
112 protected:
113 
114  //
115  // mRefCount Object reference count.
116  //
117 
118  ULONG mRefCount;
119 };
120 
121 
122 #endif // __SB_WINDOWS_FORMATTER_CLASS_FACTORY_H__
123 
STDMETHOD() QueryInterface(REFIID aIID, void **aInterface)
STDMETHOD() CreateInstance(IUnknown *aOuter, REFIID aIID, void **aInstance)