blob: c7cbd6eed6afbc5b48e1e0c37bc8c83d41aa1769 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#include <cppuhelper/implementationentry.hxx>
using ::rtl::OUString;
using namespace ::com::sun::star::uno;
// Declare static functions providing service information =====================
#define DECLARE_FUNCTIONS( className ) \
extern OUString SAL_CALL className##_getImplementationName() throw(); \
extern Sequence< OUString > SAL_CALL className##_getSupportedServiceNames() throw(); \
extern Reference< XInterface > SAL_CALL className##_createInstance( \
const Reference< XComponentContext >& rxContext ) throw (Exception)
namespace oox {
namespace core { DECLARE_FUNCTIONS( FastTokenHandler ); }
namespace core { DECLARE_FUNCTIONS( FilterDetect ); }
namespace docprop { DECLARE_FUNCTIONS( DocumentPropertiesImport ); }
namespace ole { DECLARE_FUNCTIONS( WordVbaProjectFilter ); }
namespace ppt { DECLARE_FUNCTIONS( PowerPointImport ); }
namespace shape { DECLARE_FUNCTIONS( ShapeContextHandler ); }
namespace xls { DECLARE_FUNCTIONS( BiffDetector ); }
namespace xls { DECLARE_FUNCTIONS( ExcelFilter ); }
namespace xls { DECLARE_FUNCTIONS( ExcelBiffFilter ); }
namespace xls { DECLARE_FUNCTIONS( ExcelVbaProjectFilter ); }
namespace xls { DECLARE_FUNCTIONS( OOXMLFormulaParser ); }
}
#undef DECLARE_FUNCTIONS
// ============================================================================
namespace {
#define IMPLEMENTATION_ENTRY( className ) \
{ &className##_createInstance, &className##_getImplementationName, &className##_getSupportedServiceNames, ::cppu::createSingleComponentFactory, 0, 0 }
static ::cppu::ImplementationEntry const spServices[] =
{
IMPLEMENTATION_ENTRY( ::oox::core::FastTokenHandler ),
IMPLEMENTATION_ENTRY( ::oox::core::FilterDetect ),
IMPLEMENTATION_ENTRY( ::oox::docprop::DocumentPropertiesImport ),
IMPLEMENTATION_ENTRY( ::oox::ole::WordVbaProjectFilter ),
IMPLEMENTATION_ENTRY( ::oox::ppt::PowerPointImport ),
IMPLEMENTATION_ENTRY( ::oox::shape::ShapeContextHandler ),
IMPLEMENTATION_ENTRY( ::oox::xls::BiffDetector ),
IMPLEMENTATION_ENTRY( ::oox::xls::ExcelFilter ),
IMPLEMENTATION_ENTRY( ::oox::xls::ExcelBiffFilter ),
IMPLEMENTATION_ENTRY( ::oox::xls::ExcelVbaProjectFilter ),
IMPLEMENTATION_ENTRY( ::oox::xls::OOXMLFormulaParser ),
{ 0, 0, 0, 0, 0, 0 }
};
#undef IMPLEMENTATION_ENTRY
} // namespace
// ----------------------------------------------------------------------------
extern "C" SAL_DLLPUBLIC_EXPORT void SAL_CALL component_getImplementationEnvironment(
const sal_Char** ppEnvironmentTypeName, uno_Environment** /*ppEnvironment*/ )
{
*ppEnvironmentTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory( const char* pImplName, void* pServiceManager, void* pRegistryKey )
{
return ::cppu::component_getFactoryHelper( pImplName, pServiceManager, pRegistryKey, spServices );
}
// ============================================================================