Merge branch 'master' of gburri.org:master-thesis
[master-thesis.git] / Parasitemia / ParasitemiaUI / Utils.fs
index 7a30174..e7c9784 100644 (file)
@@ -27,6 +27,7 @@ let sensorSizesFilepath = Path.Combine (roamingDir, sensorSizesFilename)
 
 let private savePredefinedPPIToFile (predefinedPPI : PredefinedPPI list) =
     try
+        Directory.CreateDirectory roamingDir |> ignore
         use file = new StreamWriter (predefinedPPIFilepath)
         file.Write (JsonConvert.SerializeObject (predefinedPPI, JsonSerializerSettings (Formatting = Formatting.Indented)))
     with
@@ -35,6 +36,7 @@ let private savePredefinedPPIToFile (predefinedPPI : PredefinedPPI list) =
 
 let private saveSensorSizesToFile (sensorSizes : SensorSize list) =
     try
+        Directory.CreateDirectory roamingDir |> ignore
         use file = new StreamWriter (sensorSizesFilepath)
         file.Write (JsonConvert.SerializeObject (sensorSizes, JsonSerializerSettings (Formatting = Formatting.Indented)))
     with
@@ -46,7 +48,7 @@ let predefinedPPI : PredefinedPPI list =
         use file = new StreamReader (predefinedPPIFilepath)
         JsonConvert.DeserializeObject<PredefinedPPI list> (file.ReadToEnd ())
     with
-    | ex ->
+    | _ex ->
         savePredefinedPPIToFile defaultPredefinedPPI
         defaultPredefinedPPI
 
@@ -55,6 +57,21 @@ let sensorSizes : SensorSize list =
         use file = new StreamReader (sensorSizesFilepath)
         JsonConvert.DeserializeObject<SensorSize list> (file.ReadToEnd ())
     with
-    | ex ->
+    | _ex ->
         saveSensorSizesToFile defaultSensorSizes
         defaultSensorSizes
+
+let argsHelp =
+    let programName = System.AppDomain.CurrentDomain.FriendlyName
+    "Usage of Parasitemia:\n" +
+    "Non-interactive mode:\n" +
+    (sprintf "  %s (--folder <folder>|--file <file>) --output <folder> [--debug]\n" programName) +
+    "    --folder <folder> : an input folder containing images to analyze\n" +
+    "    --file <file> : an image file to be analyzed\n" +
+    "    --output <folder> : a folder to put the results\n" +
+    "    --debug : output more information like intermediate images (it takes more CPU and memory)\n" +
+
+    "Interactive mode:\n" +
+    (sprintf "  %s [<document-file>] [--debug]\n" programName) +
+    "    <document-file> : a PIAZ file to automatically open at startup\n" +
+    "    --debug : output information like intermediate images in the current directory (it takes more CPU and memory)"
\ No newline at end of file