blob: 2f48c1c53dd8547ae51fa97db7ca2687dfbdf583 [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 ooo { namespace vba { DECLARE_FUNCTIONS( VBAMacroResolver ); } }
#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( ::ooo::vba::VBAMacroResolver ),
{ 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 );
}
// ============================================================================