]> Creatis software - bbtk.git/blobdiff - packages/itk/src/bbitkImageToString.cxx
*** empty log message ***
[bbtk.git] / packages / itk / src / bbitkImageToString.cxx
diff --git a/packages/itk/src/bbitkImageToString.cxx b/packages/itk/src/bbitkImageToString.cxx
new file mode 100644 (file)
index 0000000..23c30c4
--- /dev/null
@@ -0,0 +1,45 @@
+#ifdef _USE_ITK_
+
+#include "bbstdToString.h"
+#include "bbitkImage.h"
+#include "bbitkPackage.h"
+#include <sstream>
+
+namespace bbstd
+{
+  
+  
+  //====================================================================
+  BBTK_USER_BLACK_BOX_TEMPLATE_IMPLEMENTATION(ToString,
+                                             bbtk::UserBlackBox);
+  //====================================================================
+  
+  //====================================================================
+  template <> void ToString<bbtk::any<bbitk::ImagePointer> > ::DoIt()
+  {
+    std::ostringstream s;
+    itk::Object* o1 = bbGetInputIn().unsafe_get<itk::Object*>();
+    o1->Print(s);
+    
+    bbSetOutputOut( s.str() );
+  }
+  //====================================================================
+} // namespace bbstd
+
+
+using namespace bbstd;
+namespace bbitk 
+{
+  //  typedef bbstd::ToString ToString;
+  //====================================================================
+  // Add the specialized adaptors to the package
+  typedef bbitk::anyImagePointer anyItkImagePointer;
+  BBTK_ADD_TEMPLATE_BLACK_BOX_TO_PACKAGE(itk,ToString,
+                                        anyItkImagePointer);
+  //typedef const bbtk::itkImage* itkImageConstPointer;
+  //BBTK_ADD_TEMPLATE_BLACK_BOX_TO_PACKAGE(itkBase,ScalarToString,itkImageConstPointer);
+  
+}
+
+
+#endif //_USE_ITK_