package bimage

  1. Overview
  2. Docs

Expr implements an operation combinator which can be used to build operations from low-level functions

type _ t =
  1. | Kernel : Kernel.t -> float t
  2. | Input : int * int t * int t * int t -> float t
  3. | X : int t
  4. | Y : int t
  5. | C : int t
  6. | Int : int -> int t
  7. | Float : float -> float t
  8. | Bool : bool -> bool t
  9. | Float_of_int : int t -> float t
  10. | Int_of_float : float t -> int t
  11. | Fadd : float t * float t -> float t
  12. | Fsub : float t * float t -> float t
  13. | Fmul : float t * float t -> float t
  14. | Fdiv : float t * float t -> float t
  15. | Fpow : float t * float t -> float t
  16. | Fsqrt : float t -> float t
  17. | Fsin : float t -> float t
  18. | Fcos : float t -> float t
  19. | Ftan : float t -> float t
  20. | Fmod : float t * float t -> float t
  21. | Iadd : int t * int t -> int t
  22. | Isub : int t * int t -> int t
  23. | Imul : int t * int t -> int t
  24. | Idiv : int t * int t -> int t
  25. | Imod : int t * int t -> int t
  26. | Gt : 'a t * 'a t -> bool t
  27. | Eq : 'a t * 'a t -> bool t
  28. | Lt : 'a t * 'a t -> bool t
  29. | And : bool t * bool t -> bool t
  30. | Or : bool t * bool t -> bool t
  31. | Not : bool t -> bool t
  32. | If : bool t * 'a t * 'a t -> 'a t
val f : ?x:int Stdlib.ref -> ?y:int Stdlib.ref -> ?c:int Stdlib.ref -> float t -> ('a, 'b, 'c) Op.t
val eval : ?x:int Stdlib.ref -> ?y:int Stdlib.ref -> ?c:int Stdlib.ref -> float t -> ('a, 'b, 'c, 'd, 'e, 'f) filter

Convert an Expr to a filter

val int : int -> int t

Create an int Expr

val float : float -> float t

Create a float Expr

val int_of_float : float t -> int t
val float_of_int : int t -> float t
val x : int t
val y : int t
val c : int t
val kernel : Kernel.t -> float t
val input : int -> int t -> int t -> int t -> float t
val fadd : float t -> float t -> float t
val fsub : float t -> float t -> float t
val fmul : float t -> float t -> float t
val fdiv : float t -> float t -> float t
val iadd : int t -> int t -> int t
val isub : int t -> int t -> int t
val imul : int t -> int t -> int t
val idiv : int t -> int t -> int t
val pow : float t -> float t -> float t
val sqrt : float t -> float t
val sin : float t -> float t
val cos : float t -> float t
val tan : float t -> float t
val pi : unit -> float t
val and_ : bool t -> bool t -> bool t
val or_ : bool t -> bool t -> bool t
val not_ : bool t -> bool t
val if_ : bool t -> 'a t -> 'a t -> 'a t
val (+) : int t -> int t -> int t

Integer addition

val (-) : int t -> int t -> int t

Integer subtraction

val (*) : int t -> int t -> int t

Integer multiplacation

val (/) : int t -> int t -> int t

Integer division

val (+.) : float t -> float t -> float t

Float addition

val (-.) : float t -> float t -> float t

Float subtraction

val (*.) : float t -> float t -> float t

Float multiplication

val (/.) : float t -> float t -> float t

Float division

val (**) : float t -> float t -> float t

Pow