IVGCVSW-4487 Remove boost::filesystem

 * Replace filesystem::path
 * Replace filesystem::exists
 * Replace filesystem::is_directory
 * Replace filesystem::directory_iterator
 * Replace filesystem::filesystem_error exception
 * Replace filesystem::temp_directory_path
 * Replace filesystem::unique path
 * Replace filesystem::ofstream with std::ofstream
 * Replace filesystem::remove
 * Replace filesystem::is_regular_file
 * Replace boost::optional with armnn::Optional in touched files
 * Remove some superfluous includes
 * Update build guides, GlobalConfig.cmake and CMakeLists.txt
 * Remove redundant armnnUtils::Filesystem::Remove function.
 * Remove redundant armnnUtils::Filesystem::GetFileSize function.

Temporarily adding back Boost::filesystem to enable Boost::dll.

Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>

Change-Id: Ifa46d4a0097d2612ddacd8e9736c0b36e365fb11
diff --git a/src/armnnQuantizer/test/QuantizationDataSetTests.cpp b/src/armnnQuantizer/test/QuantizationDataSetTests.cpp
index 2b46aae..9e71f68 100644
--- a/src/armnnQuantizer/test/QuantizationDataSetTests.cpp
+++ b/src/armnnQuantizer/test/QuantizationDataSetTests.cpp
@@ -6,18 +6,14 @@
 #include <boost/test/unit_test.hpp>
 
 #include "../QuantizationDataSet.hpp"
+
+#include <armnn/Optional.hpp>
+#include <Filesystem.hpp>
 #include <iostream>
 #include <fstream>
 #include <vector>
 #include <map>
 
-#define BOOST_FILESYSTEM_NO_DEPRECATED
-
-#include <boost/filesystem/operations.hpp>
-#include <boost/filesystem/fstream.hpp>
-#include <boost/filesystem/path.hpp>
-#include <boost/optional/optional.hpp>
-
 
 using namespace armnnQuantizer;
 
@@ -36,20 +32,20 @@
 
     std::string CreateTempCsvFile(std::map<int, std::vector<float>> csvData)
     {
-        boost::filesystem::path fileDir = boost::filesystem::temp_directory_path();
-        boost::filesystem::path p{fileDir / boost::filesystem::unique_path("%%%%-%%%%-%%%%.csv")};
+        fs::path fileDir = fs::temp_directory_path();
+        fs::path p = armnnUtils::Filesystem::NamedTempFile("Armnn-QuantizationCreateTempCsvFileTest-TempFile.csv");
 
-        boost::filesystem::path tensorInput1{fileDir / boost::filesystem::unique_path("input_0_0.raw")};
-        boost::filesystem::path tensorInput2{fileDir / boost::filesystem::unique_path("input_1_0.raw")};
-        boost::filesystem::path tensorInput3{fileDir / boost::filesystem::unique_path("input_2_0.raw")};
+        fs::path tensorInput1{fileDir / "input_0_0.raw"};
+        fs::path tensorInput2{fileDir / "input_1_0.raw"};
+        fs::path tensorInput3{fileDir / "input_2_0.raw"};
 
         try
         {
-            boost::filesystem::ofstream ofs{p};
+            std::ofstream ofs{p};
 
-            boost::filesystem::ofstream ofs1{tensorInput1};
-            boost::filesystem::ofstream ofs2{tensorInput2};
-            boost::filesystem::ofstream ofs3{tensorInput3};
+            std::ofstream ofs1{tensorInput1};
+            std::ofstream ofs2{tensorInput2};
+            std::ofstream ofs3{tensorInput3};
 
 
             for(auto entry : csvData.at(0))
@@ -95,17 +91,17 @@
         {
             try
             {
-                boost::filesystem::remove(*m_CsvFile);
+                fs::remove(m_CsvFile.value());
             }
             catch (std::exception &e)
             {
-                std::cerr << "Unable to delete file [" << *m_CsvFile << "] : " << e.what() << std::endl;
+                std::cerr << "Unable to delete file [" << m_CsvFile.value() << "] : " << e.what() << std::endl;
                 BOOST_TEST(false);
             }
         }
     }
 
-    boost::optional<boost::filesystem::path> m_CsvFile;
+    armnn::Optional<fs::path> m_CsvFile;
 };