From d6507c99510316d2b3d2fe6f6198cfc8e297734e Mon Sep 17 00:00:00 2001 From: FinnWilliamsArm Date: Mon, 19 Aug 2019 17:17:19 +0100 Subject: IVGCVSW-3564 Add optional InputLayerBindingID argument to ImageCSVFileGenerator Signed-off-by: FinnWilliamsArm Change-Id: Ibf2b5ce5e50d72d661a7c720c1f3bb1c0d811700 --- .../ImageCSVFileGenerator.cpp | 24 ++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/tests/ImageCSVFileGenerator/ImageCSVFileGenerator.cpp b/tests/ImageCSVFileGenerator/ImageCSVFileGenerator.cpp index 1a14ebab07..706a0c0c7a 100644 --- a/tests/ImageCSVFileGenerator/ImageCSVFileGenerator.cpp +++ b/tests/ImageCSVFileGenerator/ImageCSVFileGenerator.cpp @@ -80,6 +80,17 @@ public: return true; } + bool ValidateBindingId(const std::string& id) + { + if (!std::all_of(id.begin(), id.end(), ::isdigit)) + { + std::cerr << "Invalid input binding Id" << std::endl; + return false; + } + + return true; + } + bool ProcessCommandLine(int argc, char* argv[]) { namespace po = boost::program_options; @@ -92,7 +103,9 @@ public: ("indir,i", po::value(&m_InputDirectory)->required(), "Directory that .raw files are stored in") ("outfile,o", po::value(&m_OutputFileName)->required(), - "Output CSV file path"); + "Output CSV file path") + ("layer-binding-id,l", po::value(&m_InputBindingId)->default_value("0"), + "Input layer binding Id, Defaults to 0"); } catch (const std::exception& e) { @@ -131,15 +144,22 @@ public: return false; } + if(!ValidateBindingId(m_InputBindingId)) + { + return false; + } + return true; } std::string GetInputDirectory() {return m_InputDirectory;} std::string GetOutputFileName() {return m_OutputFileName;} + std::string GetInputBindingId() {return m_InputBindingId;} private: std::string m_InputDirectory; std::string m_OutputFileName; + std::string m_InputBindingId; }; } // namespace anonymous @@ -155,10 +175,10 @@ int main(int argc, char* argv[]) namespace fs = boost::filesystem; const std::string fileFormat(".raw"); - const std::string bindingId("0"); const std::string rawDirectory(cmdline.GetInputDirectory()); const std::string outputPath(cmdline.GetOutputFileName()); + const std::string bindingId(cmdline.GetInputBindingId()); std::vector rawFiles; for (auto& entry : boost::make_iterator_range(fs::directory_iterator(rawDirectory), {})) -- cgit v1.2.1