#ifndef _OTB_TRISKELE_OPTION_HPP #define _OTB_TRISKELE_OPTION_HPP #include #include #include #include "triskeleBase.hpp" #include "ArrayTree/GraphWalker.hpp" #include "IImage.hpp" #include "Appli/Selected.hpp" namespace otb { namespace triskele { using namespace ::triskele; using namespace otb::triskele::arrayTree; // ======================================== enum FeatureType { AP, MEAN, SD, AREA, MOI }; class Option { public: bool debugFlag; IImage inputImage; IImage outputImage; Point topLeft = NullPoint; Size size = NullSize; Selected selectedBand; size_t countingSortCeil = 2; vector areaThresholds; vector levelThresholds, sdThresholds, moiThresholds; unsigned int coreCount = boost::thread::hardware_concurrency (); bool maxTreeFlag = false, minTreeFlag = false, tosTreeFlag = false, alphaTreeFlag = false; bool border = false, oneBand = false; Connectivity connectivity = Connectivity::C4; FeatureType featureType = FeatureType::AP; Option (); Option (int argc, char** argv); void usage (string msg = "", bool hidden = false); void parse (int argc, char** argv); }; }//namespace triskele }//namespace otb #endif //_OTB_TRISKELE_OPTION_HPP