wiki:GROUP_WRAPPERS_R0

Version 3 (modified by nenko, 16 years ago) (diff)

--

Error: Macro BackLinksMenu(None) failed
compressed data is corrupt

Error: Macro TicketQuery(summary=GROUP_WRAPPERS_R0, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|) failed
current transaction is aborted, commands ignored until end of transaction block

Analysis

Will write native wrappers of portable libraries that can be used in Sophie2 for exotic purposes (media, embedded browser, flash player, etc.). By native wrappers I mean C++ programs that will read commands (sequences of integers) from their standard input and send responses (sequences of integers) to their standard output. These C++ programs should be built for every platform we support and will be invoked with Java code. These C++ wrappers will share code - common commands and responses and a simple program that handles them. This common code should be written once and reused, not copy-pasted in every specific wrapper.

Overview

In the first revision common commands/responses and simple program that uses them should be written.

Task requirements

  • Write commands that are common for all C++ wrappers
  • Write a makefile for building them (should be portable)
  • Write a simple program that handles commands and respones

Task result

Task result should be source code, makefile

Implementation idea

Make a hierarchy or commands and responses. Also the C++ program that handles them should in separate class in order to reuse it.

How to demo

Write Java demo that sends commands to the C++ wrapper and log the communication

Design

Class diagram for C++ part:

source:/branches/private/nenko/experimental/sophie2-platform/doc/uml-design-diagrams/natives/javaMessagesCpp.png

Class diagram for Java part:

source:/branches/private/nenko/experimental/sophie2-platform/doc/uml-design-diagrams/natives/javaNativeWrapper.png

Implementation

(Describe and link the implementation results here (from the wiki or the repository).)

Testing

(Place the testing results here.)

Comments

(Write comments for this or later revisions here.)