(* $Id: netcompression.mli 1610 2011-05-30 08:03:45Z gerd $ *) (** Registry for compression algorithms *) (** This registry is initially empty. The {!Netgzip} module can be used to register the [gzip] algorithm, just run {[ Netgzip.init() ]} to get this effect. *) val register : iana_name:string -> ?encoder:(unit -> Netchannels.io_obj_channel) -> ?decoder:(unit -> Netchannels.io_obj_channel) -> unit -> unit (** Registers a compression algorithm. The algorithm is given as a pair of functions returning {!Netchannels.io_obj_channel}. *) val lookup_encoder : iana_name:string -> unit -> Netchannels.io_obj_channel (** Returns the encoder, or raises [Not_found] *) val lookup_decoder : iana_name:string -> unit -> Netchannels.io_obj_channel (** Returns the decoder, or raises [Not_found] *) val all_encoders : unit -> string list val all_decoders : unit -> string list (** The iana names of all encoders and decoders, resp. *)