1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 // Simple.h : Declaration of the CSimple
24 
25 #ifndef __SIMPLE_H_
26 #define __SIMPLE_H_
27 
28 #include "resource.h"       // main symbols
29 
30 /////////////////////////////////////////////////////////////////////////////
31 // CSimple
32 class ATL_NO_VTABLE CSimple :
33 	public CComObjectRootEx<CComSingleThreadModel>,
34 	public CComCoClass<CSimple, &CLSID_Simple>,
35 	public IDispatchImpl<ISimple, &IID_ISimple, &LIBID_XCALLBACK_IMPLLib>
36 {
37 public:
CSimple()38 	CSimple()
39 	{
40 	}
41 
42 DECLARE_REGISTRY_RESOURCEID(IDR_SIMPLE)
43 
44 DECLARE_PROTECT_FINAL_CONSTRUCT()
45 
46 BEGIN_COM_MAP(CSimple)
47 	COM_INTERFACE_ENTRY(ISimple)
48 	COM_INTERFACE_ENTRY(IDispatch)
49 END_COM_MAP()
50 
51 // ISimple
52 public:
53 
54 	STDMETHOD(get__implementedInterfaces)(/*[out, retval]*/ LPSAFEARRAY	*pVal);
55 	STDMETHOD(func3)(/*[in]*/ BSTR message);
56 	STDMETHOD(func2)(/*[in]*/ BSTR message);
57 	STDMETHOD(func)( BSTR message);
58 };
59 
60 #endif //__SIMPLE_H_
61 
62