X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fstd%2Fsrc%2FbbstdVectorToString.h;h=2bfa7c95f51fd7a8f95aa10467676265a0970299;hb=f707cd7054d48f29fa0e6e3b47fb152b0ea324e8;hp=3c28ff1583e05cce812b7a8e4653e4127484a697;hpb=e27f49d94042bf18dc5067807594325eea8b6d56;p=bbtk.git diff --git a/packages/std/src/bbstdVectorToString.h b/packages/std/src/bbstdVectorToString.h index 3c28ff1..2bfa7c9 100644 --- a/packages/std/src/bbstdVectorToString.h +++ b/packages/std/src/bbstdVectorToString.h @@ -1,32 +1,64 @@ +/* + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + + +/*========================================================================= + Program: bbtk + Module: $RCSfile: bbstdVectorToString.h,v $ + Language: C++ + Date: $Date: 2012/11/16 08:51:32 $ + Version: $Revision: 1.10 $ +=========================================================================*/ + #ifndef __bbstdVectorToString_INCLUDED_h__ #define __bbstdVectorToString_INCLUDED_h__ -#include "bbtkUserBlackBox.h" +#include "bbtkAtomicBlackBox.h" +#include "bbstd_EXPORT.h" namespace bbstd { - //================================================================= - // UserBlackBox declaration + // BlackBox declaration template - class VectorToString : public bbtk::UserBlackBox + class bbstd_EXPORT VectorToString : public bbtk::AtomicBlackBox { - BBTK_USER_BLACK_BOX_INTERFACE(VectorToString,bbtk::UserBlackBox); + BBTK_TEMPLATE_BLACK_BOX_INTERFACE(VectorToString,bbtk::AtomicBlackBox,T); BBTK_DECLARE_INPUT(In,std::vector); BBTK_DECLARE_INPUT(Separator,std::string); BBTK_DECLARE_OUTPUT(Out,std::string); BBTK_PROCESS(DoIt); void DoIt(); - virtual void bbUserConstructor(); }; //================================================================= - - - + //================================================================= - // UserBlackBox description - BBTK_BEGIN_DESCRIBE_TEMPLATE_BLACK_BOX(VectorToString); - BBTK_NAME(bbtk::TypeName >()+"ToString"); + // BlackBox description + BBTK_BEGIN_DESCRIBE_TEMPLATE_BLACK_BOX(VectorToString,bbtk::AtomicBlackBox); + BBTK_NAME(bbtk::HumanTypeName >()+"ToString"); BBTK_AUTHOR("laurent.guigues@creatis.insa-lyon.fr"); BBTK_DEFAULT_ADAPTOR(); BBTK_DESCRIPTION("Converts the content of the input vector ("+bbtk::TypeName >()+") to a string in which each item is separated by the value of the input 'Separator'"); @@ -36,34 +68,42 @@ namespace bbstd BBTK_TEMPLATE_OUTPUT(VectorToString, Out,"Output",std::string); BBTK_END_DESCRIBE_TEMPLATE_BLACK_BOX(VectorToString); //================================================================= - - - //================================================================= + //================================================================= template void VectorToString::DoIt() { std::string out; typename std::vector::const_iterator i; for (i=bbmInputIn.begin();i!=bbmInputIn.end();++i) - { - if (i!=bbmInputIn.begin()) out += bbGetInputSeparator(); - std::ostringstream s; - s << *i; - out += s.str(); - } + { + if (i!=bbmInputIn.begin()) + out += bbGetInputSeparator(); + std::ostringstream s; + s << *i; + out += s.str(); + } bbSetOutputOut(out); } //================================================================= - - //================================================================= + + //================================================================= template - void VectorToString::bbUserConstructor() + void VectorToString::bbUserSetDefaultValues() { bbSetInputSeparator(" "); } //================================================================= - + template + void VectorToString::bbUserInitializeProcessing() + { + } + //================================================================= + template + void VectorToString::bbUserFinalizeProcessing() + { + } + //================================================================= } // namespace bbstd #endif //__bbstdVectorToString_INCLUDED_h__