summaryrefslogtreecommitdiffstats
path: root/obacklight/obacklight.ml
blob: f5eb29644b6da8442302ee51a37b769bf1713e80 (plain) (blame)
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
49
50
51
open Arg

(*
    Sett default path to sysfs
 *)
let default_sysfs_dir                    = ref "/sys"
let default_backlight_path               = ref (String.concat "" (List.append [!default_sysfs_dir]      ["/class/backlight/intel_backlight"]))
let default_backlight_maxbrightness_path = ref (String.concat "" (List.append [!default_backlight_path] ["/max_brightness"]))
let default_backlight_brightness_path    = ref (String.concat "" (List.append [!default_backlight_path] ["/brightness"]))

let set_backlight_path ()                 = default_backlight_path             := (String.concat "" (List.append [!default_sysfs_dir]      ["/class/backlight/intel_backlight"]))
let set_backlight_maxbrightness_path () = default_backlight_maxbrightness_path := (String.concat "" (List.append [!default_backlight_path] ["/max_brightness"]))
let set_backlight_brightness_path    () = default_backlight_brightness_path    := (String.concat "" (List.append [!default_backlight_path] ["/brightness"]))


let print_debug () = 
begin
    let _ = Printf.printf "sysfs:          %s\n" !default_sysfs_dir in
    let _ = Printf.printf "backlight:      %s\n" !default_backlight_path in
    let _ = Printf.printf "max_brightness: %s\n" !default_backlight_maxbrightness_path in
            Printf.printf "brightness:     %s\n" !default_backlight_brightness_path 
end

let set_sysfs_dir dir = 
begin
    (Printf.printf "Setting value of sysfs to %s\n" dir);
    default_sysfs_dir := dir;
    set_backlight_path ();
    set_backlight_maxbrightness_path ();
    set_backlight_brightness_path ()
end

let main = 
begin
    
    let speclist = 
    [
        ("-s",Arg.String (set_sysfs_dir),"Sysfs directory")
    ] in 
    let usage_msg = "set backlight value" in
    let _ = Arg.parse speclist print_endline usage_msg in
    (* If there is not argument print value of default path *)
    (* If there is 1 argument set value to brigthness *)
    
    print_debug ();
end

let () = main;;