19f4ab948SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 39f4ab948SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 49f4ab948SAndrew Rist * or more contributor license agreements. See the NOTICE file 59f4ab948SAndrew Rist * distributed with this work for additional information 69f4ab948SAndrew Rist * regarding copyright ownership. The ASF licenses this file 79f4ab948SAndrew Rist * to you under the Apache License, Version 2.0 (the 89f4ab948SAndrew Rist * "License"); you may not use this file except in compliance 99f4ab948SAndrew Rist * with the License. You may obtain a copy of the License at 10cdf0e10cSrcweir * 119f4ab948SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12cdf0e10cSrcweir * 139f4ab948SAndrew Rist * Unless required by applicable law or agreed to in writing, 149f4ab948SAndrew Rist * software distributed under the License is distributed on an 159f4ab948SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 169f4ab948SAndrew Rist * KIND, either express or implied. See the License for the 179f4ab948SAndrew Rist * specific language governing permissions and limitations 189f4ab948SAndrew Rist * under the License. 19cdf0e10cSrcweir * 209f4ab948SAndrew Rist *************************************************************/ 219f4ab948SAndrew Rist 229f4ab948SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir #include <osl/diagnose.h> 25cdf0e10cSrcweir #include <cppuhelper/factory.hxx> 26cdf0e10cSrcweir #include <cppuhelper/implementationentry.hxx> 27cdf0e10cSrcweir 28cdf0e10cSrcweir #include <com/sun/star/registry/XRegistryKey.hpp> 29cdf0e10cSrcweir 30cdf0e10cSrcweir using namespace ::rtl; 31cdf0e10cSrcweir using namespace ::cppu; 32cdf0e10cSrcweir using namespace ::com::sun::star::uno; 33cdf0e10cSrcweir using namespace ::com::sun::star::lang; 34cdf0e10cSrcweir using namespace ::com::sun::star::registry; 35cdf0e10cSrcweir 36cdf0e10cSrcweir #include "factreg.hxx" 37cdf0e10cSrcweir 38cdf0e10cSrcweir namespace animcore 39cdf0e10cSrcweir { 40cdf0e10cSrcweir rtl_StandardModuleCount g_moduleCount = MODULE_COUNT_INIT; 41cdf0e10cSrcweir } 42cdf0e10cSrcweir 43cdf0e10cSrcweir using namespace animcore; 44cdf0e10cSrcweir 45cdf0e10cSrcweir #define IMPLEMENTATION_ENTRY(N)\ 46cdf0e10cSrcweir {\ 47cdf0e10cSrcweir createInstance_##N, getImplementationName_##N ,\ 48cdf0e10cSrcweir getSupportedServiceNames_##N, createSingleComponentFactory ,\ 49cdf0e10cSrcweir &g_moduleCount.modCnt , 0\ 50cdf0e10cSrcweir }\ 51cdf0e10cSrcweir 52cdf0e10cSrcweir static struct ImplementationEntry g_entries[] = 53cdf0e10cSrcweir { 54cdf0e10cSrcweir IMPLEMENTATION_ENTRY( PAR ), 55cdf0e10cSrcweir IMPLEMENTATION_ENTRY( SEQ ), 56cdf0e10cSrcweir IMPLEMENTATION_ENTRY( ITERATE ), 57cdf0e10cSrcweir IMPLEMENTATION_ENTRY( ANIMATE ), 58cdf0e10cSrcweir IMPLEMENTATION_ENTRY( SET ), 59cdf0e10cSrcweir IMPLEMENTATION_ENTRY( ANIMATECOLOR ), 60cdf0e10cSrcweir IMPLEMENTATION_ENTRY( ANIMATEMOTION ), 61cdf0e10cSrcweir IMPLEMENTATION_ENTRY( ANIMATETRANSFORM ), 62cdf0e10cSrcweir IMPLEMENTATION_ENTRY( TRANSITIONFILTER ), 63cdf0e10cSrcweir IMPLEMENTATION_ENTRY( AUDIO ), 64cdf0e10cSrcweir IMPLEMENTATION_ENTRY( COMMAND ), 65cdf0e10cSrcweir IMPLEMENTATION_ENTRY( TargetPropertiesCreator ), 66cdf0e10cSrcweir { 0, 0, 0, 0, 0, 0 } 67cdf0e10cSrcweir }; 68cdf0e10cSrcweir 69cdf0e10cSrcweir extern "C" 70cdf0e10cSrcweir { 71cdf0e10cSrcweir 72*2016fac5Sdamjan SAL_DLLPUBLIC_EXPORT sal_Bool SAL_CALL component_canUnload( TimeValue *pTime ) 73cdf0e10cSrcweir { 74cdf0e10cSrcweir return g_moduleCount.canUnload( &g_moduleCount , pTime ); 75cdf0e10cSrcweir } 76cdf0e10cSrcweir 77cdf0e10cSrcweir //================================================================================================== 78*2016fac5Sdamjan SAL_DLLPUBLIC_EXPORT void SAL_CALL component_getImplementationEnvironment( 79cdf0e10cSrcweir const sal_Char ** ppEnvTypeName, uno_Environment ** ) 80cdf0e10cSrcweir { 81cdf0e10cSrcweir *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; 82cdf0e10cSrcweir } 83cdf0e10cSrcweir //================================================================================================== 84*2016fac5Sdamjan SAL_DLLPUBLIC_EXPORT void * SAL_CALL component_getFactory( 85cdf0e10cSrcweir const sal_Char * pImplName, void * pServiceManager, void * pRegistryKey ) 86cdf0e10cSrcweir { 87cdf0e10cSrcweir return component_getFactoryHelper( pImplName, pServiceManager, pRegistryKey , g_entries ); 88cdf0e10cSrcweir } 89cdf0e10cSrcweir 90cdf0e10cSrcweir } 91