]> Creatis software - bbtk.git/blob - kernel/appli/bbCreateBlackBox/xml-templates/std-template.xml
Feature #1774
[bbtk.git] / kernel / appli / bbCreateBlackBox / xml-templates / std-template.xml
1 <!--
2 # ---------------------------------------------------------------------
3 #
4 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
5 #                        pour la SantÈ)
6 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
7 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
8 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
9 #
10 #  This software is governed by the CeCILL-B license under French law and
11 #  abiding by the rules of distribution of free software. You can  use,
12 #  modify and/ or redistribute the software under the terms of the CeCILL-B
13 #  license as circulated by CEA, CNRS and INRIA at the following URL
14 #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
15 #  or in the file LICENSE.txt.
16 #
17 #  As a counterpart to the access to the source code and  rights to copy,
18 #  modify and redistribute granted by the license, users are provided only
19 #  with a limited warranty  and the software's author,  the holder of the
20 #  economic rights,  and the successive licensors  have only  limited
21 #  liability.
22 #
23 #  The fact that you are presently reading this means that you have had
24 #  knowledge of the CeCILL-B license and that you accept its terms.
25 # ------------------------------------------------------------------------ */
26 -->
27
28 <!--==========================================================================
29    STARTS THE DESCRIPTION OF THE BLACK BOX -->
30 <blackbox name="__BLACKBOXNAME__">
31 <!--=======================================================================-->
32
33   <!--========================================================================
34     THE BOX DOCUMENTATION -->
35
36   <author>__AUTHOR__</author>
37   <description>__DESCRIPTION__</description>
38   <category>__CATEGORY__</category>
39   <!--=====================================================================-->
40
41   <!--========================================================================
42     #include directives to be put in the .h generated
43     There must be one tag per file to include
44     Here we include the standard header iostream.h -->
45   <include><PRE>iostream</PRE></include>
46   <!--=====================================================================-->
47
48   <!--========================================================================
49     INPUTS/OUTPUTS DECLARATION -->
50   <!-- Declares an input with name 'In', type 'double' 
51       and description 'First input' -->
52
53   <input name="In" type="double" description="First input"/>
54   
55   <!-- Declares an output with name 'Out', type 'double' 
56       and description 'First output' -->
57   <output name="Out" type="double" description="First output"/>
58   <!--=====================================================================-->
59
60   <process>
61   <PRE>
62 // THE MAIN PROCESSING METHOD BODY
63 //   Here we simply set the input 'In' value to the output 'Out'
64 //   And print out the output value
65 // INPUT/OUTPUT ACCESSORS ARE OF THE FORM :
66 //    void bbSet{Input|Output}NAME(const TYPE&)
67 //    const TYPE& bbGet{Input|Output}NAME() const 
68 //    Where :
69 //    * NAME is the name of the input/output
70 //      (the one provided in the attribute 'name' of the tag 'input')
71 //    * TYPE is the C++ type of the input/output
72 //      (the one provided in the attribute 'type' of the tag 'input')
73     bbSetOutputOut( bbGetInputIn() );
74     std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
75   </PRE>
76   </process>
77   <!--=====================================================================-->
78
79    <defaultValues>
80   <PRE>
81 //  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
82 //    Here we initialize the input 'In' to 0
83    bbSetInputIn(0);
84   </PRE>
85   </defaultValues>
86
87
88
89   <initializeProcessing>
90   <PRE>
91 //  THE INITIALIZATION METHOD BODY :
92 //    Here does nothing 
93 //    but this is where you should allocate the internal/output pointers 
94 //    if any 
95
96   </PRE>
97   </initializeProcessing>
98
99   <finalizeProcessing>
100   <PRE>
101 //  THE FINALIZATION METHOD BODY :
102 //    Here does nothing 
103 //    but this is where you should desallocate the internal/output pointers 
104 //    if any
105   </PRE>
106   </finalizeProcessing>
107  <!--=====================================================================-->
108
109 <!--=======================================================================-->
110 <!-- END OF BLACK BOX DESCRIPTION -->
111 </blackbox>
112 <!--=======================================================================-->