Any black box must be included in a \bbtk package,
that is in a particular shared library which can be loaded
dynamically by \bbtk (hence applications which use \bbtkns,
Any black box must be included in a \bbtk package,
that is in a particular shared library which can be loaded
dynamically by \bbtk (hence applications which use \bbtkns,
\bbStudions).
\begin{enumerate}
\item \textbf{Create a new package. }
Before defining any black box you
have to create a package, or more precisely
\bbStudions).
\begin{enumerate}
\item \textbf{Create a new package. }
Before defining any black box you
have to create a package, or more precisely
You will have to create your new package in a new location and
may be include/link against existing libraries.
\end{itemize}
You will have to create your new package in a new location and
may be include/link against existing libraries.
\end{itemize}
a \texttt{wxWindow} and must be able to return a pointer to it.
If your black box is not a widget black box
(that is : doesn't returns a pointer to a \emph{Widget}),
a \texttt{wxWindow} and must be able to return a pointer to it.
If your black box is not a widget black box
(that is : doesn't returns a pointer to a \emph{Widget}),
- it must inherit from \texttt{bbtk::AtomicBlackBox}.
+ it must inherit from \texttt{bbtk::AtomicBlackBox}.\\
+ It returns a \texttt{wxWidget} which can be embedded into the \texttt{wxWindow}.\\
+ In particular, modal dialogs which are created and destroyed at the end of the process method of the box
+ are NOT \texttt{WxBlackBoxes}/
- \item a standard one (\texttt{std-template})
- \item a VTK Polydata Algorithm based box (\texttt{VTK\_PolydataAlgorithm-template}),
- \item a VTK Image Algorithm based box (\texttt{VTK\_ImageaAlgorithm-template}),
- \item if it uses the wxWidget Library (\texttt{widget-template})
+ \item AtomicBlackBox : a basic one, with no special I/O (\texttt{std-template})
+ \item WxBackBox : ouputs a \texttt{wxWindow},
+ \item a VTK Polydata Algorithm Box descendant,
+ \item a VTK Image Algorithm Box descendant
+
<vtkparent>the vtk ImageAlgorithm class it inherits from</vtkparent>
<input name="..." type="double" special="vtk parameter" description="..."/>
<vtkparent>the vtk ImageAlgorithm class it inherits from</vtkparent>
<input name="..." type="double" special="vtk parameter" description="..."/>
<output name="..." type="double" special="vtk parameter" description="..."/>
<output name="..." type="vtkImageData*" special="vtk output" description="..."/>
\end{verbatim}
% ==========================================
<output name="..." type="double" special="vtk parameter" description="..."/>
<output name="..." type="vtkImageData*" special="vtk output" description="..."/>
\end{verbatim}
% ==========================================
<vtkparent>the vtk Polydata class it inherits from</vtkparent>
<input name="..." type="double" special="vtk parameter" description="..."/>
<vtkparent>the vtk Polydata class it inherits from</vtkparent>
<input name="..." type="double" special="vtk parameter" description="..."/>
<output name="..." type="double" special="vtk parameter" description="..."/>
<output name="..." type="vtkPolyData*" special="vtk output" description="..."/>
\end{verbatim}
<output name="..." type="double" special="vtk parameter" description="..."/>
<output name="..." type="vtkPolyData*" special="vtk output" description="..."/>
\end{verbatim}
% ==========================================
\subsubsection{\bbfy \texttt{xml} tags reference}
% ==========================================
% ==========================================
\subsubsection{\bbfy \texttt{xml} tags reference}
% ==========================================
& \texttt{special} & - & 0-1 & In: \{\texttt{``itk input'',
``vtk input'', ``itk parameter'', ``vtk parameter''}\} (see below).\\\hline
& \texttt{generic\_type} & c) & 0-1 & The ``generic'' type of the input (see text). \\\hline
& \texttt{special} & - & 0-1 & In: \{\texttt{``itk input'',
``vtk input'', ``itk parameter'', ``vtk parameter''}\} (see below).\\\hline
& \texttt{generic\_type} & c) & 0-1 & The ``generic'' type of the input (see text). \\\hline
-\texttt{<output>} & \texttt{name} & - & 1 & The name of the output \\\hline
+
+
+ \end{tabular}
+ \end{table}
+\begin{table}[!ht]
+\caption{\label{xml_tags2}
+\bbfy \texttt{xml} tags reference (part 2)}
+\small
+\begin{tabular}{|lcllm{6cm}|}
+\hline
+Tag & Attributes & Condition & Multiplicity & Description
+ \\ \hline
+ \texttt{<output>} & \texttt{name} & - & 1 & The name of the output \\\hline
& \texttt{type} & - & 1 & The type of the output \\\hline
& \texttt{special} & - & 0-1 & In: \{\texttt{``itk output'',
``vtk output''}\} (see below).\\\hline
& \texttt{generic\_type} & c) & 0-1 & The ``generic'' type of the output (see text).\\\hline
& \texttt{nature} & c) & 0-1 & The ``nature'' of the output (used for automatic GUI generation).\\\hline
& \texttt{type} & - & 1 & The type of the output \\\hline
& \texttt{special} & - & 0-1 & In: \{\texttt{``itk output'',
``vtk output''}\} (see below).\\\hline
& \texttt{generic\_type} & c) & 0-1 & The ``generic'' type of the output (see text).\\\hline
& \texttt{nature} & c) & 0-1 & The ``nature'' of the output (used for automatic GUI generation).\\\hline
\texttt{<process>} & - & - & 0-1 & The code of the processing method of the box. Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\texttt{<constructor>} & - & - & 0-1 & The code of the user Constructor of the box (may contains default initialisations). Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\texttt{<copyconstructor>} & - & - & 0-1 & The code of the user Copy Constructor of the box . Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\texttt{<destructor>} & - & - & 0-1 & The code of the user Destructor of the box. Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\end{tabular}
\end{table}
\texttt{<process>} & - & - & 0-1 & The code of the processing method of the box. Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\texttt{<constructor>} & - & - & 0-1 & The code of the user Constructor of the box (may contains default initialisations). Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\texttt{<copyconstructor>} & - & - & 0-1 & The code of the user Copy Constructor of the box . Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\texttt{<destructor>} & - & - & 0-1 & The code of the user Destructor of the box. Must be put between clear tags : \texttt{<PRE></PRE>} \\\hline
\end{tabular}
\end{table}
% ==========================================
\subsection{\CPP description of a box}
% ==========================================
% ==========================================
\subsection{\CPP description of a box}
% ==========================================