• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

dawagner / parameter-framework
0%
master: 78%

Build:
Build:
LAST BUILD BRANCH: integerparam-template
DEFAULT BRANCH: master
Repo Added 03 Apr 2015 10:15AM UTC
Files 130
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH rework-plugin-entrypoint-api
branch: rework-plugin-entrypoint-api
CHANGE BRANCH
x
Reset
  • rework-plugin-entrypoint-api
  • Disable_fix_point_test_if_no_python_bindings
  • Wconversion-enabler
  • access-elements-as-binary
  • add-get-set-elementXML-commands
  • add-missing-export-FormattedSubsystemObject
  • android-darwin
  • android-m
  • appveyor
  • appveyor-build-more-components
  • appveyor-visualstudio-2015
  • archive-export-version
  • better-libxml2-error-messages
  • c++11-ctors-and-dtors-features
  • change-utility-header-install-dir
  • check-duplicate-criterion-values
  • client-simulator
  • client-simulator-rework
  • cmake-misc-fixes
  • cmake-multiproject-fix
  • cmake-prefix-path-usage
  • component-arrays
  • convert-to-bytes
  • coveralls-test
  • criterion-overflow-check
  • criterion-rework-step-2
  • criterion-rework-step-3
  • criterion-unit-tests
  • david-tag
  • delme
  • disambiguate-make-unique
  • doc-add-missing-folders
  • fix-android-clang+darwin
  • fix-blackboard-api-inconsistency
  • fix-coveralls
  • fix-criterion-display
  • fix-double-negative-infinity
  • fix-dynamic-lib-utility-windows
  • fix-enum-parameter-casts
  • fix-enumparam-name-attribute
  • fix-floats-limits-tests
  • fix-getElementBytes
  • fix-log-on-list
  • fix-logger-private-member-leakage
  • fix-makeEncodable
  • fix-python-sample-crash
  • fix-setParameter-array
  • fix-skeleton-plugin-build
  • fix-uninitialized-members
  • fix-unused-results
  • fix_android_darwin
  • fix_illegal_integer_conversions
  • floating-point
  • for-seb
  • forward-libxml2-error-messages
  • freeze-catch-version
  • improve-build-experience
  • includes-cleanup
  • integerparam-template
  • jules-command-parser
  • jules-criterion-rework_rebased-next
  • make-command-interface-public
  • master
  • master-candidate
  • misc-doxygen-tweaks
  • missing-client-doxygen
  • more-compilation-help-in-readme
  • move-tmpfile-out-of-libparameter
  • new-c++-domain-generator
  • no-Werror-by-default
  • no-stlport
  • optional-Werror-and-release-build
  • poc-memory-profiling
  • port-add-Wconversion-flag
  • relax-windows-errors
  • remove-big-endian-subsystems
  • remove-binary-settings
  • remove-binary-settings-storage
  • remove-deprecated
  • remove-mappingdata-xmlsink-inheritance
  • remove-some-dead-code
  • remove-some-useless-util-methods
  • remove-unused-attribute
  • remove-utility-test-from-coverage
  • remove-utility-tostring-use-c++11
  • requirements
  • rework-getattribute
  • rework-parameter-handle
  • rework-plugin-entrypoint-api-WIP
  • selectively-export-symbols
  • simplify-empty-ctors-and-dtors
  • soaresm-cmake_clientSimulator
  • some-coveralls-fixes
  • test-skeleton-plugin
  • test-skeleton-plugin-WIP
  • tokenizer-control-merging-separators
  • travis-no-container-based
  • uncaught-exception
  • unify-access-contexts
  • unsigned-int-criterion-api
  • update-doxygen
  • v2.6.0+no-stlport
  • windows-fileversion-attribute
  • windows_port
  • wip
  • xml-generation-fixes-and-tests
  • xmlgeneration-bugfix
  • xmlgeneration-check-conflicting-elements
  • xmlgenerator-smoketest

pending completion
296

push

travis-ci

David Wagner
Rework the plugin entry-point API to be a well-known symbol name

The plugins' entry-point used to be a symbol which name was constructed based on
the library name but the Parameter Framework was trying to deduce it based on
how library files are usually named on Linux, i.e. prefixed with "lib", then the
soname, then ".so".

This is not always true on Linux and this is usually false on Windows.

Also, if the API of this symbol changes, there is no way to know at
compile-time.

Which is why this rework introduces a macro to be used by plugins. This macro
is the name of the entry-point symbol to be declared by plugins and will be
retrieved by the Parameter Framework.

A new header is added and exported to plugins: Plugin.h. This header declares
the entry-point and also declares it to be visible (a private entry-point
would be useless). Plugins should use this header in the file defining their
entry-point.

For now, we only support one API version at a time: if the API changes from V1
to V2, the plugins won't compile and the Parameter Framework won't recognize
previously-compiled plugins using V1. If we want backward-compatibility, we can
add it later by declaring both macros (V1 and V2) and trying to find the symbol
corresponding to V1 if the symbol corresponding to V2 can't be found.

The first name of the macro is: PARAMETER_FRAMEWORK_PLUGIN_ENTRYPOINT_V1

Implementation detail: the implementation is split between Plugin.h,
SubsystemLibrary and SystemClass: everything the plugin needs to know is put
under Plugin.h, what must be shared between the plugin and the core is under
Subsystemlibrary and the parts private to the core are under SystemClass - which
is the class responsible for loading the plugins.

Signed-off-by: David Wagner <david.wagner@intel.com>

0 of 0 relevant lines covered (NaN%)

0.0 hits per line

Relevant lines Covered
Build:
Build:
0 RELEVANT LINES 0 COVERED LINES
0.0 HITS PER LINE
Source Files on rework-plugin-entrypoint-api
Detailed source file information is not available for this build.

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
296 rework-plugin-entrypoint-api Rework the plugin entry-point API to be a well-known symbol name The plugins' entry-point used to be a symbol which name was constructed based on the library name but the Parameter Framework was trying to deduce it based on how library files are ... push 29 Sep 2015 02:06PM UTC David Wagner travis-ci pending completion  
295 rework-plugin-entrypoint-api Rework the plugin entry-point API to be a well-known symbol name The plugins' entry-point used to be a symbol which name was constructed based on the library name but the Parameter Framework was trying to deduce it based on how library files are ... push 29 Sep 2015 01:56PM UTC David Wagner travis-ci pending completion  
285 rework-plugin-entrypoint-api Rework the plugin entry-point API to be a well-known symbol name The plugins' entry-point used to be a symbol which name was constructed based on the library name but the Parameter Framework was trying to deduce it based on how library files are ... push 28 Sep 2015 04:32PM UTC dawagner travis-ci pending completion  
280 rework-plugin-entrypoint-api Rework the plugin entry-point API to be a well-known symbol name The plugins' entry-point used to be a symbol which name was constructed based on the library name but the Parameter Framework was trying to deduce it based on how library files are ... push 28 Sep 2015 12:26PM UTC dawagner travis-ci pending completion  
See All Builds (362)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc