Update coding style.
[master-thesis.git] / Parasitemia / ParasitemiaUI / Types.fs
index fa99d90..ada2a1f 100644 (file)
@@ -11,69 +11,83 @@ open Newtonsoft.Json
 
 open ParasitemiaCore.UnitsOfMeasure
 
-let healthyRBColor = Color.FromRgb(255uy, 255uy, 0uy) // Yellow-green.
-let infectedRBColor = Color.FromRgb(255uy, 0uy, 40uy) // Red with a bit of blue.
-
-type RBC = {
-    num: int
-
-    [<JsonIgnore>]
-    mutable infected: bool
-
-    [<JsonIgnore>]
-    mutable setManually: bool
-
-    center: Point
-    size: Size
-    infectedArea: int }
-
-type SourceImage = {
-    mutable num: int
-    mutable name: string
-
-    mutable config: ParasitemiaCore.Config.Config
-    mutable dateLastAnalysis: DateTime // UTC.
-    img: Image<Bgr, byte>
-    mutable rbcs: RBC list
-
-    mutable healthyRBCBrightness: float32
-    mutable infectedRBCBrightness: float32 } with
-
-    member this.HealthyRBCColor: SolidColorBrush =
-        let mutable color = healthyRBColor * this.healthyRBCBrightness
-        color.A <- 255uy;
-        SolidColorBrush(color)
-
-    member this.InfectedRBCColor: SolidColorBrush =
-        let mutable color = infectedRBColor * this.infectedRBCBrightness
-        color.A <- 255uy;
-        SolidColorBrush(color)
-
-type PredefinedPPI = {
-    ppi: int<ppi>
-    label: string } with
-    override this.ToString() =
-        sprintf "%s: %d" this.label this.ppi
-
-type SensorSize = {
-    w: float<mm>
-    h: float<mm>
-    label: string } with
-    override this.ToString () =
-        sprintf "%g mm × %g mm%s" this.w this.h (if this.label = "" then "" else " (" + this.label + ")")
-
-let defaultPredefinedPPI = [
-    { ppi = 230000<ppi>; label = "50×" }
-    { ppi = 460000<ppi>; label = "100×" } ]
-
-let defaultSensorSizes = [
-    { w = 3.2<mm>;  h = 2.4<mm>;  label = "1/4″" }
-    { w = 4.8<mm>;  h = 3.6<mm>;  label = "1/3″" }
-    { w = 5.76<mm>; h = 4.29<mm>; label = "1/2.5″" }
-    { w = 6.4<mm>;  h = 4.8<mm>;  label = "1/2″" }
-    { w = 7.18<mm>; h = 5.32<mm>; label = "1/1.8″" }
-    { w = 7.6<mm>;  h = 5.7<mm>;  label = "1/1.7″" }
-    { w = 8.8<mm>;  h = 6.6<mm>;  label = "2/3″" }
-    { w = 13.2<mm>; h = 8.8<mm>;  label = "1″" } ]
+let healthyRBColor = Color.FromRgb (255uy, 255uy, 0uy) // Yellow-green.
+let infectedRBColor = Color.FromRgb (255uy, 0uy, 40uy) // Red with a bit of blue.
+
+type RBC =
+    {
+        num : int
+
+        [<JsonIgnore>]
+        mutable infected : bool
+
+        [<JsonIgnore>]
+        mutable setManually : bool
+
+        center : Point
+        size : Size
+        infectedArea : int
+    }
+
+type SourceImage =
+    {
+        mutable num : int
+        mutable name : string
+
+        mutable config : ParasitemiaCore.Config.Config
+        mutable dateLastAnalysis : DateTime // UTC.
+        img : Image<Bgr, byte>
+        mutable rbcs : RBC list
+
+        mutable healthyRBCBrightness : float32
+        mutable infectedRBCBrightness : float32
+    }
+    with
+        member this.HealthyRBCColor : SolidColorBrush =
+            let mutable color = healthyRBColor * this.healthyRBCBrightness
+            color.A <- 255uy
+            SolidColorBrush (color)
+
+        member this.InfectedRBCColor : SolidColorBrush =
+            let mutable color = infectedRBColor * this.infectedRBCBrightness
+            color.A <- 255uy
+            SolidColorBrush (color)
+
+type PredefinedPPI =
+    {
+        ppi : int<ppi>
+        label : string
+    }
+    with
+        override this.ToString () =
+            sprintf "%s: %d" this.label this.ppi
+
+type SensorSize =
+    {
+        w : float<mm>
+        h : float<mm>
+        label : string
+    }
+    with
+        override this.ToString () =
+            sprintf "%g mm × %g mm%s" this.w this.h (if this.label = "" then "" else " (" + this.label + ")")
+
+let defaultPredefinedPPI =
+    [
+        { ppi = 230000<ppi>; label = "50×" }
+        { ppi = 460000<ppi>; label = "100×" }
+    ]
+
+let defaultSensorSizes =
+    [
+        { w = 3.2<mm>;  h = 2.4<mm>;  label = "1/4″" }
+        { w = 4.8<mm>;  h = 3.6<mm>;  label = "1/3″" }
+        { w = 5.76<mm>; h = 4.29<mm>; label = "1/2.5″" }
+        { w = 6.4<mm>;  h = 4.8<mm>;  label = "1/2″" }
+        { w = 7.18<mm>; h = 5.32<mm>; label = "1/1.8″" }
+        { w = 7.6<mm>;  h = 5.7<mm>;  label = "1/1.7″" }
+        { w = 8.8<mm>;  h = 6.6<mm>;  label = "2/3″" }
+        { w = 13.2<mm>; h = 8.8<mm>;  label = "1″" }
+    ]