Skip to content
Snippets Groups Projects
Commit e490d72e authored by Julien Signoles's avatar Julien Signoles
Browse files

add some notes

parent 937054d9
No related branches found
No related tags found
No related merge requests found
================
TODO for Lithium
================
* Plugins dynamiques dans la partie avancée * Plugins dynamiques dans la partie avancée
[advanced plugin development] [advanced plugin development]
o ajouter une section Makefile.template o ajouter une section Makefile.template
o section "GUI": partie Makefile différente entre statique et dynamique o section "GUI": partie Makefile différente entre statique et dynamique
* Mettre une note quelque part comme quoi un plugin dynamique peut toujours * Nouvelle interface de project
être lié statiquement
* Mettre une note quelque part indiquant que la partie sur les plug-ins * Améliorer et mettre à jour la partie sur la GUI
dynamiques peut encore évoluer.
* Nouvelle interface de project ==================
TODO for Beryllium
==================
* Journalisation * Journalisation
...@@ -22,9 +26,6 @@ ...@@ -22,9 +26,6 @@
ajouté un lien vers Section "Journalisation" quand cette ajouté un lien vers Section "Journalisation" quand cette
dernière sera écrite. dernière sera écrite.
* Améliorer et mettre à jour la partie sur la GUI
* Documentation des sources: * Documentation des sources:
o tag "@plugin development guide": ajouter à la doc
o tag "@deprecated" o tag "@deprecated"
o tag "@since" o tag "@since"
...@@ -441,6 +441,15 @@ A plug-in developer should not modify any other part of \texttt{Makefile.in} or ...@@ -441,6 +441,15 @@ A plug-in developer should not modify any other part of \texttt{Makefile.in} or
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Makefile.template}\label{adv:dynamic-make}
\codeidxdef{Makefile.template}
\begin{target}dynamic plug-in developers.\end{target}
\todo{shortly for Lithium}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Testing}\label{adv:ptests}\index{Test|bfit} \section{Testing}\label{adv:ptests}\index{Test|bfit}
In this section, we present \ptests, a tool provided by \framac in order to In this section, we present \ptests, a tool provided by \framac in order to
......
...@@ -170,3 +170,7 @@ visibility purpose, they are also put outside their plug-in owners. That is the ...@@ -170,3 +170,7 @@ visibility purpose, they are also put outside their plug-in owners. That is the
\emph{raison d'\^etre} of plug-ins types. See \emph{raison d'\^etre} of plug-ins types. See
Section~\ref{adv:static-registration} for additional details. Section~\ref{adv:static-registration} for additional details.
Even if the \emph{raison d'\^etre} of a dynamic plug-in is to be dynamically
loaded by \framac, it is still possible to statically linked\index{Linking} it
with \framac and to use it as a static plug-in. For instance, exporting
datatypes is possible for a dynamic plug-in statically linked with \framac.
...@@ -16,6 +16,7 @@ release. First we list changes of the last release. ...@@ -16,6 +16,7 @@ release. First we list changes of the last release.
\item \textbf{Exporting Datatypes}: now embeded in new section \emph{Plug-in \item \textbf{Exporting Datatypes}: now embeded in new section \emph{Plug-in
Registration and Access} Registration and Access}
\item \textbf{Introduction}: improved \item \textbf{Introduction}: improved
\item \textbf{Makefile.template}: fully new section
\item \textbf{Plug-in Registration and Access}: fully new section \item \textbf{Plug-in Registration and Access}: fully new section
\item \textbf{Reference Manual}: compliant with dynamic plug-ins \item \textbf{Reference Manual}: compliant with dynamic plug-ins
\item \textbf{Software architecture}: integration of dynamic plug-ins \item \textbf{Software architecture}: integration of dynamic plug-ins
......
...@@ -43,8 +43,6 @@ Single ...@@ -43,8 +43,6 @@ Single
5580 3735 6030 3735 6030 4185 5580 4185 5580 3735 5580 3735 6030 3735 6030 4185 5580 4185 5580 3735
2 4 0 1 0 11 60 -1 20 0.000 0 0 7 0 0 5 2 4 0 1 0 11 60 -1 20 0.000 0 0 7 0 0 5
6480 4635 2295 4635 2295 2295 6480 2295 6480 4635 6480 4635 2295 4635 2295 2295 6480 2295 6480 4635
2 4 0 1 0 17 55 -1 20 0.000 0 0 7 0 0 5
6255 3195 4500 3195 4500 2745 6255 2745 6255 3195
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
2745 3735 3195 3735 3195 4185 2745 4185 2745 3735 2745 3735 3195 3735 3195 4185 2745 4185 2745 3735
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
...@@ -79,6 +77,8 @@ Single ...@@ -79,6 +77,8 @@ Single
2520 3555 1845 3555 2520 3555 1845 3555
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 2 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 2
2925 3330 2160 3330 2925 3330 2160 3330
2 4 0 1 0 29 55 -1 20 0.000 0 0 7 0 0 5
6255 3195 4500 3195 4500 2745 6255 2745 6255 3195
4 1 0 50 -1 0 10 0.0000 0 135 1020 4410 2565 Plugin directory\001 4 1 0 50 -1 0 10 0.0000 0 135 1020 4410 2565 Plugin directory\001
4 0 0 50 -1 0 12 0.0000 4 45 270 5310 3960 ...\001 4 0 0 50 -1 0 12 0.0000 4 45 270 5310 3960 ...\001
4 1 0 50 -1 0 10 0.0000 0 150 1395 5670 5445 (GUI extension point)\001 4 1 0 50 -1 0 10 0.0000 0 150 1395 5670 5445 (GUI extension point)\001
...@@ -95,4 +95,4 @@ Single ...@@ -95,4 +95,4 @@ Single
4 0 0 50 -1 0 10 0.0000 2 135 435 6570 3870 $\\star$\001 4 0 0 50 -1 0 10 0.0000 2 135 435 6570 3870 $\\star$\001
4 1 0 50 -1 0 10 0.0000 2 135 690 1395 3510 Db$^\\star$\001 4 1 0 50 -1 0 10 0.0000 2 135 690 1395 3510 Db$^\\star$\001
4 1 0 50 -1 0 10 0.0000 0 150 1440 3375 2970 Plugin implementation\001 4 1 0 50 -1 0 10 0.0000 0 150 1440 3375 2970 Plugin implementation\001
4 1 0 50 -1 0 8 0.0000 2 180 2880 5355 3015 (Empty) plugin interface$^\\star$\001 4 1 0 50 -1 0 8 0.0000 2 135 720 5355 3015 Makefile\001
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
...@@ -6,24 +6,20 @@ ...@@ -6,24 +6,20 @@
This chapter aims at helping a developer to write his first \framac plug-in. At This chapter aims at helping a developer to write his first \framac plug-in. At
the end of this tutorial, this developer should be able to extend \framac with the end of this tutorial, this developer should be able to extend \framac with
a simple analysis available to both the \framac command line and other plug-ins. a simple analysis available to both the \framac command line and other
This chapter was written to explain plug-ins. This chapter was written to explain step-by-step how to proceed
step-by-step how to proceed towards this goal. This tutorial towards this goal. This tutorial explains how to integrate a plug-in inside the
explains how to integrate a plug-in inside the \framac platform. \framac platform. It will get you started but does not tell the whole story.
It will get you started but does not tell the whole story. In particular, some very important aspects for the integration in the framework
In particular, some very important aspects for the integration
in the framework
are omitted here and are described in chapter~\ref{chap:advance}. are omitted here and are described in chapter~\ref{chap:advance}.
Section \ref{tut:dynamic} explains everything you need to know to write a Section \ref{tut:dynamic} explains everything you need to know to write a
dynamic plug-in\index{Plug-in!Dynamic}: writing a dynamic plug-in is the dynamic plug-in\index{Plug-in!Dynamic}: writing a dynamic plug-in is the new
preferred way to interface with \framac. preferred way to interface with \framac. Section \ref{tut:static} explains in
Section \ref{tut:static} explains in detail how to write a static detail how to write a static plug-in\index{Plug-in!Static}: this is slightly
plug-in\index{Plug-in!Static}: this is slightly more involved but allows a more involved but allows a deeper integration within the \framac
deeper integration within the \framac architecture\index{Architecture}. architecture\index{Architecture}. You should do this only if you intend to
You should contribute a large and general purpose plug-in to the community.
do this only if you intend to contribute a large and general purpose plug-in to
the community.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...@@ -33,6 +29,13 @@ the community. ...@@ -33,6 +29,13 @@ the community.
This section will teach you how to write the most basic dynamic plug-in This section will teach you how to write the most basic dynamic plug-in
and run it from the \framac toplevel. and run it from the \framac toplevel.
\begin{important}
Dynamic plug-ins are a new important feature of \framac ___VERSION___: the
way \framac manages them may change in future release. However, if you follow
the guideline given in this manual, it will be easy to switch from this
implementation of dynamic plug-ins to a future one.
\end{important}
\subsection{Setup} \subsection{Setup}
To follow this tutorial you have to fulfill the following requirements: To follow this tutorial you have to fulfill the following requirements:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment