aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/world/output/video/resolution.lux
blob: fd6a1a9de996c901c3320ae0f2247b91e5161ab1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
(.using
 [library
  [lux (.except)
   [abstract
    [equivalence (.only Equivalence)]
    [hash (.only Hash)]]
   [data
    ["[0]" product]]
   [math
    [number
     ["[0]" nat]]]]])

(type: .public Resolution
  (Record
   [#width Nat
    #height Nat]))

(def: .public hash
  (Hash Resolution)
  (product.hash nat.hash nat.hash))

(def: .public equivalence
  (Equivalence Resolution)
  (at ..hash equivalence))

... https://en.wikipedia.org/wiki/Display_resolution#Common_display_resolutions
(with_template [<name> <width> <height>]
  [(def: .public <name>
     Resolution
     [#width <width>
      #height <height>])]

  [svga        800  600]
  [wsvga      1024  600]
  [xga        1024  768]
  [xga+       1152  864]
  [wxga_16:9  1280  720]
  [wxga_5:3   1280  768]
  [wxga_16:10 1280  800]
  [sxga       1280 1024]
  [wxga+      1440  900]
  [hd+        1600  900]
  [wsxga+     1680 1050]
  [fhd        1920 1080]
  [wuxga      1920 1200]
  [wqhd       2560 1440]
  [uhd_4k     3840 2160]
  )