xref: /aoo4110/main/starmath/source/smdetect.hxx (revision b1cdbd2c)
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 
24 #ifndef _SM_TYPEDETECT_HXX
25 #define _SM_TYPEDETECT_HXX
26 
27 #include <rtl/ustring.hxx>
28 #include <tools/debug.hxx>
29 #include <com/sun/star/document/XExtendedFilterDetection.hpp>
30 #include <com/sun/star/uno/Exception.hpp>
31 #include <com/sun/star/uno/Reference.h>
32 #include <cppuhelper/implbase2.hxx>
33 
34 #include <com/sun/star/lang/XServiceInfo.hpp>
35 #include <com/sun/star/lang/XSingleServiceFactory.hpp>
36 #include <cppuhelper/factory.hxx>
37 #include <tools/link.hxx>
38 #include <tools/string.hxx>
39 
40 class SfxObjectFactory;
41 class SfxFilterMatcher;
42 class LoadEnvironment_Impl;
43 class SfxMedium;
44 
45 namespace com
46 {
47     namespace sun
48     {
49         namespace star
50         {
51             namespace uno
52             {
53                 class Any;
54             }
55             namespace lang
56             {
57                 class XMultiServiceFactory;
58             }
59             namespace frame
60             {
61                 class XFrame;
62             }
63             namespace beans
64             {
65                 struct PropertyValue;
66             }
67         }
68     }
69 }
70 
71 #include <sfx2/sfxuno.hxx>
72 
73 #define REFERENCE ::com::sun::star::uno::Reference
74 #define SEQUENCE ::com::sun::star::uno::Sequence
75 #define RUNTIME_EXCEPTION ::com::sun::star::uno::RuntimeException
76 
77 class SmFilterDetect : public ::cppu::WeakImplHelper2< ::com::sun::star::document::XExtendedFilterDetection, ::com::sun::star::lang::XServiceInfo >
78 {
79 public:
80                             SmFilterDetect( const REFERENCE < ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
81     virtual                 ~SmFilterDetect();
82 
83     SFX_DECL_XSERVICEINFO
84 
85 	//----------------------------------------------------------------------------------
86     // XExtendedFilterDetect
87 	//----------------------------------------------------------------------------------
88     virtual ::rtl::OUString SAL_CALL detect( SEQUENCE< ::com::sun::star::beans::PropertyValue >& lDescriptor ) throw( RUNTIME_EXCEPTION );
89 };
90 
91 #endif
92