#ifndef __bbstdCast_h_INCLUDED__ #define __bbstdCast_h_INCLUDED__ #include "bbtkAtomicBlackBox.h" namespace bbstd { //================================================================= // UserBlackBox declaration template class Cast : public bbtk::AtomicBlackBox { BBTK_TEMPLATE2_BLACK_BOX_INTERFACE(Cast,bbtk::AtomicBlackBox,T,U); BBTK_DECLARE_INPUT(In,T); BBTK_DECLARE_OUTPUT(Out,U); BBTK_PROCESS(DoIt); void DoIt() { bbtkDebugMessage("Data",5,"bbstd::Cast In = " <() <<">"<(bbGetInputIn()) ); bbtkDebugMessage("Data",5,"bbstd::Cast Out = " <<(U)bbGetInputIn()<<" <"<() <<">"<()+"To"+bbtk::HumanTypeName()); BBTK_AUTHOR("laurent.guigues@creatis.insa-lyon.fr"); BBTK_DESCRIPTION("Static cast from "+bbtk::HumanTypeName()+" (" +bbtk::TypeName()+") to "+bbtk::HumanTypeName() +" ("+bbtk::TypeName()+")"); BBTK_DEFAULT_ADAPTOR(); BBTK_TEMPLATE2_INPUT(Cast,In,"Input",T1); BBTK_TEMPLATE2_OUTPUT(Cast,Out,"Output",T2); BBTK_END_DESCRIBE_TEMPLATE2_BLACK_BOX(Cast); //================================================================= } // namespace bbstd #endif // __bbstdCast_h_INCLUDED__