+#ifndef __bbSlicerExtractSkeleton_h_INCLUDED__
+#define __bbSlicerExtractSkeleton_h_INCLUDED__
+
+#include "bbSlicer_EXPORT.h"
+#include "bbtkAtomicBlackBox.h"
+
+#include <vector>
+#include <cstdlib>
+#include <dlfcn.h>
+#include <sstream>
+#include <fstream>
+#include <iostream>
+
+#include <ModuleDescriptionUtilities.h>
+#include <ModuleDescriptionParser.h>
+#include <ModuleParameterGroup.h>
+#include <ModuleDescription.h>
+#include <ModuleParameter.h>
+
+#include "CreationTool.h"
+
+namespace bbSlicer {
+
+ class bbSlicer_EXPORT ExtractSkeleton
+ :
+ public bbtk::AtomicBlackBox {
+ BBTK_BLACK_BOX_INTERFACE ( ExtractSkeleton , bbtk::AtomicBlackBox ) ;
+
+ // GENERATED ARGS
+
+BBTK_DECLARE_INPUT ( InputImageFileName , std::string );
+BBTK_DECLARE_INPUT ( OutputImageFileName , std::string );
+BBTK_DECLARE_INPUT ( SkeletonType , std::string );
+BBTK_DECLARE_INPUT ( DontPruneBranches , bool );
+BBTK_DECLARE_INPUT ( NumberOfPoints , int );
+BBTK_DECLARE_INPUT ( OutputPointsFileName , std::string );
+
+ // EO GENERATED ARGS
+
+ BBTK_PROCESS ( Process ) ;
+ void Process ( ) ;
+ private:
+ void execute ( std::string lib , int _argc , char * _argv[] ) ;
+ } ;
+
+ BBTK_BEGIN_DESCRIBE_BLACK_BOX ( ExtractSkeleton , bbtk::AtomicBlackBox ) ;
+ BBTK_NAME ( "ExtractSkeleton" ) ;
+ BBTK_AUTHOR ( "Pierre Seroul, Martin Styner, Guido Gerig, and Stephen Aylward" ) ;
+ BBTK_DESCRIPTION ( "Extract the skeleton of a binary object. The skeleton can be limited to being a 1D curve or allowed to be a full 2D manifold. The branches of the skeleton can be pruned so that only the maximal center skeleton is returned." ) ;
+ BBTK_CATEGORY ( "Filtering" ) ;
+
+ // GENERATED DESCRPTION
+
+BBTK_INPUT(ExtractSkeleton , InputImageFileName , "InputImageFileName" , std::string, "");
+BBTK_INPUT(ExtractSkeleton , OutputImageFileName , "OutputImageFileName" , std::string, "");
+BBTK_INPUT(ExtractSkeleton , SkeletonType , "SkeletonType" , std::string, "");
+BBTK_INPUT(ExtractSkeleton , DontPruneBranches , "DontPruneBranches" , bool, "");
+BBTK_INPUT(ExtractSkeleton , NumberOfPoints , "NumberOfPoints" , int, "");
+BBTK_INPUT(ExtractSkeleton , OutputPointsFileName , "OutputPointsFileName" , std::string, "");
+
+ // EO GENERATED DESCRIPTION
+
+ BBTK_END_DESCRIBE_BLACK_BOX ( ExtractSkeleton ) ;
+}
+
+#endif // __bbSlicerExtractSkeleton_h_INCLUDED__
+
+