\item {\bf\emph{wxvtk}} : widget boxes based on the \vtk library (2D and 3D vizualization and
interaction).
\item {\bf\emph{itkvtk}} : special boxes (adaptors) to convert \itk structures into \vtk structures and conversally.
- \item {\bf\emph{creaReaders}} : Provides hight level widgets to read images, including DICOM.
+ %\item {\bf\emph{creaReaders}} : Provides hight level widgets to read images, including DICOM.
\item {\bf\emph{toolsbbtk}} : Tools for bbtk administration and package development..
\end{itemize}
\item A {\bf\emph{Developement environment}}, called \bbStudio, which provides
\vtk & : prints help on the package \texttt{package-name} and its boxes (with brief description). The package must have been previously loaded\\ \hline
\texttt{wxvtk} & : widget boxes based on the \vtk library.\\ \hline
\texttt{itkvtk} & : adaptors to convert \itk structures into \vtk structures and conversally.\\ \hline
-\texttt{creaReaders} & : provides high level widgets to read images including DICOM.\\ \hline
+%\texttt{creaReaders} & : provides high level widgets to read images including DICOM.\\ \hline
\texttt{toolsbbtk} & : Tools for bbtk administration and package development.\\ \hline
\end{tabular}
\label{bbi-more-on-complex-black-boxes}
Creation of complex widgets (containers, contained...)
+You can include script files in other script files,
+like in the following example :
+
+
+\begin{verbatim}
+# Defines the Add4 black box which adds 4 doubles
+include Add3
+define Add4
+ author "myself"
+ description "adds 4 doubles"
+ new Add3 a
+ new Add b
+ connect a.Out b.In1
+ input In1 a.In1 "first double to add"
+ input In2 a.In2 "second double to add"
+ input In3 a.In3 "third double to add"
+ input In4 b.In2 "fourth double to add"
+ output Out b.Out "output"
+endefine
+\end{verbatim}
+
+The inner boxes have they own entries (In1, In2, In3 for box a, In1, In2 for box b )\\
+Only the inputs In1, In2, In3 of box a and the input In2 of box b is of interest for the end user, but he dosn't want to have to
+care neither about the inner boxes name, nor about the names of their Inputs.\\
+The writer of the complex box has the ability to give these inputs a meaningfull name !
+\begin{verbatim}
+ input In3 a.In3 "third double to add"
+ input In4 b.In2 "fourth double to add"
+\end{verbatim}
+
%\subsubsection{Advanced issues}
%\paragraph{Reducing the number of inputs of a box}
For some strange reasons (?!?), you may be warned that an error occured while documentation generation.\\
Take it easy, \texttt{make} again!\\
-The dynamic libraries (\texttt{.dll} or {.so} ans the executable programs will be created in the \testtt{bin}
+The dynamic libraries (\texttt{.dll} or \texttt{.so} and the executable programs will be created in the \testtt{bin}
directory of the built tree.
\item choose to install or not your own version.
\label{Package_Browser}
% ==========================================
+
+You can run it using the tool bar of the 'Command' part.
+
+See figure \ref{Package_Browser}.
+
\begin{figure}[!ht]
\caption{\label{Package_Browser}The Package Browser}
\begin{center}
\end{center}
\end{figure}
+It allows you to query informations about what you can find in the packages (boxes and applications), using several criterions
+(warning : it's case sensitive)
+\begin {itemize}
+\item Pakages
+All the boxes and applications held in a given package (e.g. \texttt{wxvtk}, \texttt{std}, ...)
+\item Name
+You can query on a subpart of the name of a box or an application (e.g. \texttt{DICOM})
+\item Description
+You can query on a substring of the description of a box or an application (e.g. \texttt{DICOM})
+\item Category
+You can query on a sub part of the category name of a box or an application (e.g. \texttt{3D})
+\item Input Type
+You can query all the boxes or applications that have at least one Input entry of the given type (e.g. \texttt{int})
+\item Output Type
+You can query all the boxes or applications that have at least one Output entry of the given type (e.g. \texttt{int})
+\item Input Nature
+You can query all the boxes or applications that have at least one Input entry of the given nature (e.g. \texttt{signal})
+\item Output Nature
+You can query all the boxes or applications that have at least one Output entry of the given nature (e.g.
+\texttt{signal},\texttt{file name})
+\end {itemize}
+
+
+All these criterions are \emph{Added} while the query process.\\
+You can get the whole description of a given box or application clicking on its name.
+
+
% ==========================================
\vspace{0.5cm}\hrule \\
\section{Using third party Package}
\label{Third_Party_Package}
% ==========================================
+You will have to update the \emph{bbtk\_config.xml} file.\\
+To know where it is stored, just click on \texttt{Config} button of the Command part tool bar.
+
+You'll get something like :
+
+\begin{verbatim}
+=============
+ Configuration
+ =============
+ bbtk_config.xml : [/home/jpr/Creatis/bbtk/binLIN/bin/bbtk_config.xml]
+ Documentation Path : [/home/jpr/Creatis/bbtk/binLIN/bin/../share/bbtk/doc]
+ Data Path : [/home/jpr/Creatis/bbtk/binLIN/bin/../share/bbtk/data]
+ Temp Directory : [/home/jpr/Creatis/bbtk/binLIN]
+ File Separator : [/]
+ BBS Paths
+ --- [.]
+ --- [/home/jpr/Creatis/bbtk/binLIN/bin/../share/bbtk/bbs]
+ --- [/home/jpr/Creatis/bbtk/binLIN/share/bbtk/bbs]
+ PACKAGE Paths :
+ --- [.]
+ --- [/home/jpr/Creatis/bbtk/binLIN/bin]
+ --- [/home/jpr/Creatis/bbtk/binLIN/bin/../lib]
+ --- [/home/jpr/Creatis/bbtk/binLIN/bin]
+ --- [/home/jpr/Creatis/bbtk/binLIN/bin\Debug]
+ --- [/home/jpr/Creatis/bbtk/binLIN/bin\Release]
+\end{verbatim}
+(depending on whom you are, and whether \texttt{bbStudio} is installed or not.)\\
+
+Just use your favourite text editor to add :
+\begin{itemize}
+\item
+ at the end of the \texttt{BBS Paths} part
+ the name of the directory that contains the \texttt{.bbs} sripts of the package you
+want to use,
+\item at the end of the \texttt{PACKAGE Paths} part
+ the name of the directory that contains the dynamic libraries (\texttt{.dll} or \texttt{.so}) of the package you
+want to use.
+\end{itemize}
% ==========================================
\vspace{0.5cm}\hrule \\
\section{Using black boxes in \CPP programs}