diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2013-12-19 08:48:56 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2013-12-19 08:48:56 +0100 |
commit | ae3a0c8da50b36db395984637f5ad74d3b4887bc (patch) | |
tree | c4936b9fba1f24d412d41474ebef44a5f094dbc8 /ios | |
parent | Introduce osl::Module::release (diff) | |
download | core-ae3a0c8da50b36db395984637f5ad74d3b4887bc.tar.gz core-ae3a0c8da50b36db395984637f5ad74d3b4887bc.zip |
Add .component <implementation constructor="..." feature
...to directly call constructor functions of ComponentContext-based C++
implementations of (non-single-instance) UNO services. The case where these
calls would need to be bridged across different environments (e.g., from gcc3
to gcc3:affine) is not yet implemented.
bootstrap.component and expwrap.component are adapted accordingly as a proof-of-
concept (which had previously been adapted to use the prefix="direct" feature,
which may become unnecessary again in the end, depending on how to handle
single-instance services/singletons). More to follow.
Change-Id: I18682d75bcd29d3d427e31331b4ce8161dbb846d
Diffstat (limited to 'ios')
-rw-r--r-- | ios/experimental/LibreOffice/LibreOffice/lo.mm | 16 | ||||
-rw-r--r-- | ios/experimental/TiledLibreOffice/TiledLibreOffice/lo.mm | 16 | ||||
-rw-r--r-- | ios/qa/sc/filters-test.m | 4 | ||||
-rw-r--r-- | ios/shared/ios_sharedlo/cxx/mlo.mm | 16 |
4 files changed, 26 insertions, 26 deletions
diff --git a/ios/experimental/LibreOffice/LibreOffice/lo.mm b/ios/experimental/LibreOffice/LibreOffice/lo.mm index 5da9455f96a0..bce3874b33d3 100644 --- a/ios/experimental/LibreOffice/LibreOffice/lo.mm +++ b/ios/experimental/LibreOffice/LibreOffice/lo.mm @@ -17,11 +17,11 @@ #include <touch/touch.h> extern "C" -const lib_to_component_mapping * -lo_get_library_map(void) +const lib_to_factory_mapping * +lo_get_factory_map(void) { - static lib_to_component_mapping map[] = { - NON_APP_SPECIFIC_COMPONENT_MAP + static lib_to_factory_mapping map[] = { + NON_APP_SPECIFIC_FACTORY_MAP { "libanalysislo.a", analysis_component_getFactory }, { "libanimcorelo.a", animcore_component_getFactory }, { "libavmedialo.a", avmedia_component_getFactory }, @@ -82,11 +82,11 @@ lo_get_library_map(void) } extern "C" -const lib_to_component_mapping * -lo_get_implementation_map(void) +const lib_to_constructor_mapping * +lo_get_constructor_map(void) { - static lib_to_component_mapping map[] = { - NON_APP_SPECIFIC_DIRECT_COMPONENT_MAP + static lib_to_constructor_mapping map[] = { + NON_APP_SPECIFIC_CONSTRUCTOR_MAP { NULL, NULL } }; diff --git a/ios/experimental/TiledLibreOffice/TiledLibreOffice/lo.mm b/ios/experimental/TiledLibreOffice/TiledLibreOffice/lo.mm index 074e4723096c..b2bec61f70f3 100644 --- a/ios/experimental/TiledLibreOffice/TiledLibreOffice/lo.mm +++ b/ios/experimental/TiledLibreOffice/TiledLibreOffice/lo.mm @@ -17,11 +17,11 @@ #include <touch/touch.h> extern "C" -const lib_to_component_mapping * -lo_get_library_map(void) +const lib_to_factory_mapping * +lo_get_libmap(void) { - static lib_to_component_mapping map[] = { - NON_APP_SPECIFIC_COMPONENT_MAP + static lib_to_factory_mapping map[] = { + NON_APP_SPECIFIC_FACTORY_MAP { "libanalysislo.a", analysis_component_getFactory }, { "libanimcorelo.a", animcore_component_getFactory }, { "libavmedialo.a", avmedia_component_getFactory }, @@ -82,11 +82,11 @@ lo_get_library_map(void) } extern "C" -const lib_to_component_mapping * -lo_get_implementation_map(void) +const lib_to_constructor_mapping * +lo_get_constructor_map(void) { - static lib_to_component_mapping map[] = { - NON_APP_SPECIFIC_DIRECT_COMPONENT_MAP + static lib_to_constructor_mapping map[] = { + NON_APP_SPECIFIC_CONSTRUCTOR_MAP { NULL, NULL } }; diff --git a/ios/qa/sc/filters-test.m b/ios/qa/sc/filters-test.m index c1dade90025b..e732687c8df9 100644 --- a/ios/qa/sc/filters-test.m +++ b/ios/qa/sc/filters-test.m @@ -29,10 +29,10 @@ extern void * sc_component_getFactory( const char * pImplName, void * pServiceMa extern void * scfilt_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey ); extern void * unoxml_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey ); -const lib_to_component_mapping * +const lib_to_factory_mapping * lo_get_libmap(void) { - static lib_to_component_mapping map[] = { + static lib_to_factory_mapping map[] = { { "libanalysislo.a", analysis_component_getFactory }, { "libdatelo.a", date_component_getFactory }, { "libscfiltlo.a", scfilt_component_getFactory }, diff --git a/ios/shared/ios_sharedlo/cxx/mlo.mm b/ios/shared/ios_sharedlo/cxx/mlo.mm index 6dc4ad1a7bc6..a9a5effd2eb0 100644 --- a/ios/shared/ios_sharedlo/cxx/mlo.mm +++ b/ios/shared/ios_sharedlo/cxx/mlo.mm @@ -23,11 +23,11 @@ #define MAP_LIB_LO_1(LIB) { "lib" #LIB "lo.a", LIB##1_component_getFactory } extern "C" -const lib_to_component_mapping * -lo_get_library_map(void) +const lib_to_factory_mapping * +lo_get_factory_map(void) { - static lib_to_component_mapping map[] = { - NON_APP_SPECIFIC_COMPONENT_MAP + static lib_to_factory_mapping map[] = { + NON_APP_SPECIFIC_FACTORY_MAP //from IOS @@ -74,11 +74,11 @@ lo_get_library_map(void) } extern "C" -const lib_to_component_mapping * -lo_get_implementation_map(void) +const lib_to_constructor_mapping * +lo_get_constructor_map(void) { - static lib_to_component_mapping map[] = { - NON_APP_SPECIFIC_DIRECT_COMPONENT_MAP + static lib_to_constructor_mapping map[] = { + NON_APP_SPECIFIC_CONSTRUCTOR_MAP { NULL, NULL } }; |