1*9f4ab948SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*9f4ab948SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*9f4ab948SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*9f4ab948SAndrew Rist * distributed with this work for additional information 6*9f4ab948SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*9f4ab948SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*9f4ab948SAndrew Rist * "License"); you may not use this file except in compliance 9*9f4ab948SAndrew Rist * with the License. You may obtain a copy of the License at 10*9f4ab948SAndrew Rist * 11*9f4ab948SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*9f4ab948SAndrew Rist * 13*9f4ab948SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*9f4ab948SAndrew Rist * software distributed under the License is distributed on an 15*9f4ab948SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*9f4ab948SAndrew Rist * KIND, either express or implied. See the License for the 17*9f4ab948SAndrew Rist * specific language governing permissions and limitations 18*9f4ab948SAndrew Rist * under the License. 19*9f4ab948SAndrew Rist * 20*9f4ab948SAndrew Rist *************************************************************/ 21*9f4ab948SAndrew Rist 22*9f4ab948SAndrew 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 72cdf0e10cSrcweir sal_Bool SAL_CALL component_canUnload( TimeValue *pTime ) 73cdf0e10cSrcweir { 74cdf0e10cSrcweir return g_moduleCount.canUnload( &g_moduleCount , pTime ); 75cdf0e10cSrcweir } 76cdf0e10cSrcweir 77cdf0e10cSrcweir //================================================================================================== 78cdf0e10cSrcweir void SAL_CALL component_getImplementationEnvironment( 79cdf0e10cSrcweir const sal_Char ** ppEnvTypeName, uno_Environment ** ) 80cdf0e10cSrcweir { 81cdf0e10cSrcweir *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; 82cdf0e10cSrcweir } 83cdf0e10cSrcweir //================================================================================================== 84cdf0e10cSrcweir 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