]> Creatis software - bbtk.git/blob - packages/std/src/bbstdToString.h
f1be738a19c38fe678b6635f3673f16e4234d3a8
[bbtk.git] / packages / std / src / bbstdToString.h
1 #ifndef __bbstdToString_h_INCLUDED__
2 #define __bbstdToString_h_INCLUDED__
3
4 #include "bbtkAtomicBlackBox.h"
5
6 namespace bbstd 
7 {  
8   //=================================================================
9   // BlackBox declaration
10   template <class T>
11   class ToString : public bbtk::AtomicBlackBox
12   {  
13     BBTK_TEMPLATE_BLACK_BOX_INTERFACE(ToString,bbtk::AtomicBlackBox,T);
14     BBTK_DECLARE_INPUT(In,T);
15     BBTK_DECLARE_OUTPUT(Out,std::string);
16     BBTK_PROCESS(DoIt);
17     void DoIt(); 
18   };
19   //=================================================================
20
21   //=================================================================
22   // BlackBox description
23   BBTK_BEGIN_DESCRIBE_TEMPLATE_BLACK_BOX(ToString,bbtk::AtomicBlackBox);
24   BBTK_NAME(bbtk::HumanTypeName<T>()+"ToString");
25   BBTK_AUTHOR("laurent.guigues@creatis.insa-lyon.fr");
26   BBTK_DEFAULT_ADAPTOR();
27   BBTK_DESCRIPTION("Converts a "+bbtk::HumanTypeName<T>()+" ("
28                    +bbtk::TypeName<T>()+") into a string");
29   BBTK_TEMPLATE_INPUT(ToString, In,"Input",T);
30   BBTK_TEMPLATE_OUTPUT(ToString, Out,"Output",std::string);
31   BBTK_END_DESCRIBE_TEMPLATE_BLACK_BOX(ToString);
32   //=================================================================
33   
34 } // namespace bbstd 
35
36 #endif // __bbstdToString_h_INCLUDED__
37