(************************************************************
 * WARNING!
 *
 * This file is generated by ocamlrpcgen from the source file
 * netplex_ctrl.x
 *
 ************************************************************)
module Make'Control(U'C:Rpc_client_pre.USE_CLIENT) : sig
  module V1 : sig
    open Netplex_ctrl_aux
    type t = U'C.t
    val _program : Rpc_program.t
    val ping : U'C.t -> t_Control'V1'ping'arg -> t_Control'V1'ping'res
    val ping'async :
            U'C.t ->
            t_Control'V1'ping'arg ->
            ((unit -> t_Control'V1'ping'res) -> unit) ->
            unit
    val poll : U'C.t -> t_Control'V1'poll'arg -> t_Control'V1'poll'res
    val poll'async :
            U'C.t ->
            t_Control'V1'poll'arg ->
            ((unit -> t_Control'V1'poll'res) -> unit) ->
            unit
    val accepted :
            U'C.t ->
            t_Control'V1'accepted'arg ->
            t_Control'V1'accepted'res
    val accepted'async :
            U'C.t ->
            t_Control'V1'accepted'arg ->
            ((unit -> t_Control'V1'accepted'res) -> unit) ->
            unit
    
  end
  
end

module Control : sig
  module V1 : sig
    open Netplex_ctrl_aux
    type t = Rpc_client.t
    val create_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.connector ->
            Rpc.protocol ->
            Rpc_client.t
    val create_portmapped_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            string ->
            Rpc.protocol ->
            Rpc_client.t
    val create_client2 :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.mode2 ->
            Rpc_client.t
    val _program : Rpc_program.t
    val ping : Rpc_client.t -> t_Control'V1'ping'arg -> t_Control'V1'ping'res
    val ping'async :
            Rpc_client.t ->
            t_Control'V1'ping'arg ->
            ((unit -> t_Control'V1'ping'res) -> unit) ->
            unit
    val poll : Rpc_client.t -> t_Control'V1'poll'arg -> t_Control'V1'poll'res
    val poll'async :
            Rpc_client.t ->
            t_Control'V1'poll'arg ->
            ((unit -> t_Control'V1'poll'res) -> unit) ->
            unit
    val accepted :
            Rpc_client.t ->
            t_Control'V1'accepted'arg ->
            t_Control'V1'accepted'res
    val accepted'async :
            Rpc_client.t ->
            t_Control'V1'accepted'arg ->
            ((unit -> t_Control'V1'accepted'res) -> unit) ->
            unit
    
  end
  
end

module Make'System(U'C:Rpc_client_pre.USE_CLIENT) : sig
  module V1 : sig
    open Netplex_ctrl_aux
    type t = U'C.t
    val _program : Rpc_program.t
    val ping : U'C.t -> t_System'V1'ping'arg -> t_System'V1'ping'res
    val ping'async :
            U'C.t ->
            t_System'V1'ping'arg ->
            ((unit -> t_System'V1'ping'res) -> unit) ->
            unit
    val lookup : U'C.t -> t_System'V1'lookup'arg -> t_System'V1'lookup'res
    val lookup'async :
            U'C.t ->
            t_System'V1'lookup'arg ->
            ((unit -> t_System'V1'lookup'res) -> unit) ->
            unit
    val send_message :
            U'C.t ->
            t_System'V1'send_message'arg ->
            t_System'V1'send_message'res
    val send_message'async :
            U'C.t ->
            t_System'V1'send_message'arg ->
            ((unit -> t_System'V1'send_message'res) -> unit) ->
            unit
    val log : U'C.t -> t_System'V1'log'arg -> t_System'V1'log'res
    val log'async :
            U'C.t ->
            t_System'V1'log'arg ->
            ((unit -> t_System'V1'log'res) -> unit) ->
            unit
    val call_plugin :
            U'C.t ->
            t_System'V1'call_plugin'arg ->
            t_System'V1'call_plugin'res
    val call_plugin'async :
            U'C.t ->
            t_System'V1'call_plugin'arg ->
            ((unit -> t_System'V1'call_plugin'res) -> unit) ->
            unit
    val register_container_socket :
            U'C.t ->
            t_System'V1'register_container_socket'arg ->
            t_System'V1'register_container_socket'res
    val register_container_socket'async :
            U'C.t ->
            t_System'V1'register_container_socket'arg ->
            ((unit -> t_System'V1'register_container_socket'res) -> unit) ->
            unit
    val lookup_container_sockets :
            U'C.t ->
            t_System'V1'lookup_container_sockets'arg ->
            t_System'V1'lookup_container_sockets'res
    val lookup_container_sockets'async :
            U'C.t ->
            t_System'V1'lookup_container_sockets'arg ->
            ((unit -> t_System'V1'lookup_container_sockets'res) -> unit) ->
            unit
    val activate_lever :
            U'C.t ->
            t_System'V1'activate_lever'arg ->
            t_System'V1'activate_lever'res
    val activate_lever'async :
            U'C.t ->
            t_System'V1'activate_lever'arg ->
            ((unit -> t_System'V1'activate_lever'res) -> unit) ->
            unit
    
  end
  
end

module System : sig
  module V1 : sig
    open Netplex_ctrl_aux
    type t = Rpc_client.t
    val create_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.connector ->
            Rpc.protocol ->
            Rpc_client.t
    val create_portmapped_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            string ->
            Rpc.protocol ->
            Rpc_client.t
    val create_client2 :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.mode2 ->
            Rpc_client.t
    val _program : Rpc_program.t
    val ping : Rpc_client.t -> t_System'V1'ping'arg -> t_System'V1'ping'res
    val ping'async :
            Rpc_client.t ->
            t_System'V1'ping'arg ->
            ((unit -> t_System'V1'ping'res) -> unit) ->
            unit
    val lookup :
            Rpc_client.t ->
            t_System'V1'lookup'arg ->
            t_System'V1'lookup'res
    val lookup'async :
            Rpc_client.t ->
            t_System'V1'lookup'arg ->
            ((unit -> t_System'V1'lookup'res) -> unit) ->
            unit
    val send_message :
            Rpc_client.t ->
            t_System'V1'send_message'arg ->
            t_System'V1'send_message'res
    val send_message'async :
            Rpc_client.t ->
            t_System'V1'send_message'arg ->
            ((unit -> t_System'V1'send_message'res) -> unit) ->
            unit
    val log : Rpc_client.t -> t_System'V1'log'arg -> t_System'V1'log'res
    val log'async :
            Rpc_client.t ->
            t_System'V1'log'arg ->
            ((unit -> t_System'V1'log'res) -> unit) ->
            unit
    val call_plugin :
            Rpc_client.t ->
            t_System'V1'call_plugin'arg ->
            t_System'V1'call_plugin'res
    val call_plugin'async :
            Rpc_client.t ->
            t_System'V1'call_plugin'arg ->
            ((unit -> t_System'V1'call_plugin'res) -> unit) ->
            unit
    val register_container_socket :
            Rpc_client.t ->
            t_System'V1'register_container_socket'arg ->
            t_System'V1'register_container_socket'res
    val register_container_socket'async :
            Rpc_client.t ->
            t_System'V1'register_container_socket'arg ->
            ((unit -> t_System'V1'register_container_socket'res) -> unit) ->
            unit
    val lookup_container_sockets :
            Rpc_client.t ->
            t_System'V1'lookup_container_sockets'arg ->
            t_System'V1'lookup_container_sockets'res
    val lookup_container_sockets'async :
            Rpc_client.t ->
            t_System'V1'lookup_container_sockets'arg ->
            ((unit -> t_System'V1'lookup_container_sockets'res) -> unit) ->
            unit
    val activate_lever :
            Rpc_client.t ->
            t_System'V1'activate_lever'arg ->
            t_System'V1'activate_lever'res
    val activate_lever'async :
            Rpc_client.t ->
            t_System'V1'activate_lever'arg ->
            ((unit -> t_System'V1'activate_lever'res) -> unit) ->
            unit
    
  end
  
end

module Make'Admin(U'C:Rpc_client_pre.USE_CLIENT) : sig
  module V2 : sig
    open Netplex_ctrl_aux
    type t = U'C.t
    val _program : Rpc_program.t
    val ping : U'C.t -> t_Admin'V2'ping'arg -> t_Admin'V2'ping'res
    val ping'async :
            U'C.t ->
            t_Admin'V2'ping'arg ->
            ((unit -> t_Admin'V2'ping'res) -> unit) ->
            unit
    val list : U'C.t -> t_Admin'V2'list'arg -> t_Admin'V2'list'res
    val list'async :
            U'C.t ->
            t_Admin'V2'list'arg ->
            ((unit -> t_Admin'V2'list'res) -> unit) ->
            unit
    val enable : U'C.t -> t_Admin'V2'enable'arg -> t_Admin'V2'enable'res
    val enable'async :
            U'C.t ->
            t_Admin'V2'enable'arg ->
            ((unit -> t_Admin'V2'enable'res) -> unit) ->
            unit
    val disable : U'C.t -> t_Admin'V2'disable'arg -> t_Admin'V2'disable'res
    val disable'async :
            U'C.t ->
            t_Admin'V2'disable'arg ->
            ((unit -> t_Admin'V2'disable'res) -> unit) ->
            unit
    val restart : U'C.t -> t_Admin'V2'restart'arg -> t_Admin'V2'restart'res
    val restart'async :
            U'C.t ->
            t_Admin'V2'restart'arg ->
            ((unit -> t_Admin'V2'restart'res) -> unit) ->
            unit
    val restart_all :
            U'C.t ->
            t_Admin'V2'restart_all'arg ->
            t_Admin'V2'restart_all'res
    val restart_all'async :
            U'C.t ->
            t_Admin'V2'restart_all'arg ->
            ((unit -> t_Admin'V2'restart_all'res) -> unit) ->
            unit
    val system_shutdown :
            U'C.t ->
            t_Admin'V2'system_shutdown'arg ->
            t_Admin'V2'system_shutdown'res
    val system_shutdown'async :
            U'C.t ->
            t_Admin'V2'system_shutdown'arg ->
            ((unit -> t_Admin'V2'system_shutdown'res) -> unit) ->
            unit
    val reopen_logfiles :
            U'C.t ->
            t_Admin'V2'reopen_logfiles'arg ->
            t_Admin'V2'reopen_logfiles'res
    val reopen_logfiles'async :
            U'C.t ->
            t_Admin'V2'reopen_logfiles'arg ->
            ((unit -> t_Admin'V2'reopen_logfiles'res) -> unit) ->
            unit
    val send_admin_message :
            U'C.t ->
            t_Admin'V2'send_admin_message'arg ->
            t_Admin'V2'send_admin_message'res
    val send_admin_message'async :
            U'C.t ->
            t_Admin'V2'send_admin_message'arg ->
            ((unit -> t_Admin'V2'send_admin_message'res) -> unit) ->
            unit
    
  end
  
end

module Admin : sig
  module V2 : sig
    open Netplex_ctrl_aux
    type t = Rpc_client.t
    val create_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.connector ->
            Rpc.protocol ->
            Rpc_client.t
    val create_portmapped_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            string ->
            Rpc.protocol ->
            Rpc_client.t
    val create_client2 :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.mode2 ->
            Rpc_client.t
    val _program : Rpc_program.t
    val ping : Rpc_client.t -> t_Admin'V2'ping'arg -> t_Admin'V2'ping'res
    val ping'async :
            Rpc_client.t ->
            t_Admin'V2'ping'arg ->
            ((unit -> t_Admin'V2'ping'res) -> unit) ->
            unit
    val list : Rpc_client.t -> t_Admin'V2'list'arg -> t_Admin'V2'list'res
    val list'async :
            Rpc_client.t ->
            t_Admin'V2'list'arg ->
            ((unit -> t_Admin'V2'list'res) -> unit) ->
            unit
    val enable :
            Rpc_client.t ->
            t_Admin'V2'enable'arg ->
            t_Admin'V2'enable'res
    val enable'async :
            Rpc_client.t ->
            t_Admin'V2'enable'arg ->
            ((unit -> t_Admin'V2'enable'res) -> unit) ->
            unit
    val disable :
            Rpc_client.t ->
            t_Admin'V2'disable'arg ->
            t_Admin'V2'disable'res
    val disable'async :
            Rpc_client.t ->
            t_Admin'V2'disable'arg ->
            ((unit -> t_Admin'V2'disable'res) -> unit) ->
            unit
    val restart :
            Rpc_client.t ->
            t_Admin'V2'restart'arg ->
            t_Admin'V2'restart'res
    val restart'async :
            Rpc_client.t ->
            t_Admin'V2'restart'arg ->
            ((unit -> t_Admin'V2'restart'res) -> unit) ->
            unit
    val restart_all :
            Rpc_client.t ->
            t_Admin'V2'restart_all'arg ->
            t_Admin'V2'restart_all'res
    val restart_all'async :
            Rpc_client.t ->
            t_Admin'V2'restart_all'arg ->
            ((unit -> t_Admin'V2'restart_all'res) -> unit) ->
            unit
    val system_shutdown :
            Rpc_client.t ->
            t_Admin'V2'system_shutdown'arg ->
            t_Admin'V2'system_shutdown'res
    val system_shutdown'async :
            Rpc_client.t ->
            t_Admin'V2'system_shutdown'arg ->
            ((unit -> t_Admin'V2'system_shutdown'res) -> unit) ->
            unit
    val reopen_logfiles :
            Rpc_client.t ->
            t_Admin'V2'reopen_logfiles'arg ->
            t_Admin'V2'reopen_logfiles'res
    val reopen_logfiles'async :
            Rpc_client.t ->
            t_Admin'V2'reopen_logfiles'arg ->
            ((unit -> t_Admin'V2'reopen_logfiles'res) -> unit) ->
            unit
    val send_admin_message :
            Rpc_client.t ->
            t_Admin'V2'send_admin_message'arg ->
            t_Admin'V2'send_admin_message'res
    val send_admin_message'async :
            Rpc_client.t ->
            t_Admin'V2'send_admin_message'arg ->
            ((unit -> t_Admin'V2'send_admin_message'res) -> unit) ->
            unit
    
  end
  
end

module Make'Semaphore(U'C:Rpc_client_pre.USE_CLIENT) : sig
  module V1 : sig
    open Netplex_ctrl_aux
    type t = U'C.t
    val _program : Rpc_program.t
    val ping : U'C.t -> t_Semaphore'V1'ping'arg -> t_Semaphore'V1'ping'res
    val ping'async :
            U'C.t ->
            t_Semaphore'V1'ping'arg ->
            ((unit -> t_Semaphore'V1'ping'res) -> unit) ->
            unit
    val increment :
            U'C.t ->
            t_Semaphore'V1'increment'arg ->
            t_Semaphore'V1'increment'res
    val increment'async :
            U'C.t ->
            t_Semaphore'V1'increment'arg ->
            ((unit -> t_Semaphore'V1'increment'res) -> unit) ->
            unit
    val decrement :
            U'C.t ->
            t_Semaphore'V1'decrement'arg ->
            t_Semaphore'V1'decrement'res
    val decrement'async :
            U'C.t ->
            t_Semaphore'V1'decrement'arg ->
            ((unit -> t_Semaphore'V1'decrement'res) -> unit) ->
            unit
    val get : U'C.t -> t_Semaphore'V1'get'arg -> t_Semaphore'V1'get'res
    val get'async :
            U'C.t ->
            t_Semaphore'V1'get'arg ->
            ((unit -> t_Semaphore'V1'get'res) -> unit) ->
            unit
    val create :
            U'C.t ->
            t_Semaphore'V1'create'arg ->
            t_Semaphore'V1'create'res
    val create'async :
            U'C.t ->
            t_Semaphore'V1'create'arg ->
            ((unit -> t_Semaphore'V1'create'res) -> unit) ->
            unit
    val destroy :
            U'C.t ->
            t_Semaphore'V1'destroy'arg ->
            t_Semaphore'V1'destroy'res
    val destroy'async :
            U'C.t ->
            t_Semaphore'V1'destroy'arg ->
            ((unit -> t_Semaphore'V1'destroy'res) -> unit) ->
            unit
    
  end
  
end

module Semaphore : sig
  module V1 : sig
    open Netplex_ctrl_aux
    type t = Rpc_client.t
    val create_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.connector ->
            Rpc.protocol ->
            Rpc_client.t
    val create_portmapped_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            string ->
            Rpc.protocol ->
            Rpc_client.t
    val create_client2 :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.mode2 ->
            Rpc_client.t
    val _program : Rpc_program.t
    val ping :
            Rpc_client.t ->
            t_Semaphore'V1'ping'arg ->
            t_Semaphore'V1'ping'res
    val ping'async :
            Rpc_client.t ->
            t_Semaphore'V1'ping'arg ->
            ((unit -> t_Semaphore'V1'ping'res) -> unit) ->
            unit
    val increment :
            Rpc_client.t ->
            t_Semaphore'V1'increment'arg ->
            t_Semaphore'V1'increment'res
    val increment'async :
            Rpc_client.t ->
            t_Semaphore'V1'increment'arg ->
            ((unit -> t_Semaphore'V1'increment'res) -> unit) ->
            unit
    val decrement :
            Rpc_client.t ->
            t_Semaphore'V1'decrement'arg ->
            t_Semaphore'V1'decrement'res
    val decrement'async :
            Rpc_client.t ->
            t_Semaphore'V1'decrement'arg ->
            ((unit -> t_Semaphore'V1'decrement'res) -> unit) ->
            unit
    val get :
            Rpc_client.t ->
            t_Semaphore'V1'get'arg ->
            t_Semaphore'V1'get'res
    val get'async :
            Rpc_client.t ->
            t_Semaphore'V1'get'arg ->
            ((unit -> t_Semaphore'V1'get'res) -> unit) ->
            unit
    val create :
            Rpc_client.t ->
            t_Semaphore'V1'create'arg ->
            t_Semaphore'V1'create'res
    val create'async :
            Rpc_client.t ->
            t_Semaphore'V1'create'arg ->
            ((unit -> t_Semaphore'V1'create'res) -> unit) ->
            unit
    val destroy :
            Rpc_client.t ->
            t_Semaphore'V1'destroy'arg ->
            t_Semaphore'V1'destroy'res
    val destroy'async :
            Rpc_client.t ->
            t_Semaphore'V1'destroy'arg ->
            ((unit -> t_Semaphore'V1'destroy'res) -> unit) ->
            unit
    
  end
  
end

module Make'Sharedvar(U'C:Rpc_client_pre.USE_CLIENT) : sig
  module V2 : sig
    open Netplex_ctrl_aux
    type t = U'C.t
    val _program : Rpc_program.t
    val ping : U'C.t -> t_Sharedvar'V2'ping'arg -> t_Sharedvar'V2'ping'res
    val ping'async :
            U'C.t ->
            t_Sharedvar'V2'ping'arg ->
            ((unit -> t_Sharedvar'V2'ping'res) -> unit) ->
            unit
    val create_var :
            U'C.t ->
            t_Sharedvar'V2'create_var'arg ->
            t_Sharedvar'V2'create_var'res
    val create_var'async :
            U'C.t ->
            t_Sharedvar'V2'create_var'arg ->
            ((unit -> t_Sharedvar'V2'create_var'res) -> unit) ->
            unit
    val set_value :
            U'C.t ->
            t_Sharedvar'V2'set_value'arg ->
            t_Sharedvar'V2'set_value'res
    val set_value'async :
            U'C.t ->
            t_Sharedvar'V2'set_value'arg ->
            ((unit -> t_Sharedvar'V2'set_value'res) -> unit) ->
            unit
    val get_value :
            U'C.t ->
            t_Sharedvar'V2'get_value'arg ->
            t_Sharedvar'V2'get_value'res
    val get_value'async :
            U'C.t ->
            t_Sharedvar'V2'get_value'arg ->
            ((unit -> t_Sharedvar'V2'get_value'res) -> unit) ->
            unit
    val delete_var :
            U'C.t ->
            t_Sharedvar'V2'delete_var'arg ->
            t_Sharedvar'V2'delete_var'res
    val delete_var'async :
            U'C.t ->
            t_Sharedvar'V2'delete_var'arg ->
            ((unit -> t_Sharedvar'V2'delete_var'res) -> unit) ->
            unit
    val wait_for_value :
            U'C.t ->
            t_Sharedvar'V2'wait_for_value'arg ->
            t_Sharedvar'V2'wait_for_value'res
    val wait_for_value'async :
            U'C.t ->
            t_Sharedvar'V2'wait_for_value'arg ->
            ((unit -> t_Sharedvar'V2'wait_for_value'res) -> unit) ->
            unit
    val dump : U'C.t -> t_Sharedvar'V2'dump'arg -> t_Sharedvar'V2'dump'res
    val dump'async :
            U'C.t ->
            t_Sharedvar'V2'dump'arg ->
            ((unit -> t_Sharedvar'V2'dump'res) -> unit) ->
            unit
    val shm_slot :
            U'C.t ->
            t_Sharedvar'V2'shm_slot'arg ->
            t_Sharedvar'V2'shm_slot'res
    val shm_slot'async :
            U'C.t ->
            t_Sharedvar'V2'shm_slot'arg ->
            ((unit -> t_Sharedvar'V2'shm_slot'res) -> unit) ->
            unit
    
  end
  
end

module Sharedvar : sig
  module V2 : sig
    open Netplex_ctrl_aux
    type t = Rpc_client.t
    val create_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.connector ->
            Rpc.protocol ->
            Rpc_client.t
    val create_portmapped_client :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            string ->
            Rpc.protocol ->
            Rpc_client.t
    val create_client2 :
            ?esys:Unixqueue.event_system ->
            ?program_number:Netnumber.uint4 -> 
            ?version_number:Netnumber.uint4 -> 
            Rpc_client.mode2 ->
            Rpc_client.t
    val _program : Rpc_program.t
    val ping :
            Rpc_client.t ->
            t_Sharedvar'V2'ping'arg ->
            t_Sharedvar'V2'ping'res
    val ping'async :
            Rpc_client.t ->
            t_Sharedvar'V2'ping'arg ->
            ((unit -> t_Sharedvar'V2'ping'res) -> unit) ->
            unit
    val create_var :
            Rpc_client.t ->
            t_Sharedvar'V2'create_var'arg ->
            t_Sharedvar'V2'create_var'res
    val create_var'async :
            Rpc_client.t ->
            t_Sharedvar'V2'create_var'arg ->
            ((unit -> t_Sharedvar'V2'create_var'res) -> unit) ->
            unit
    val set_value :
            Rpc_client.t ->
            t_Sharedvar'V2'set_value'arg ->
            t_Sharedvar'V2'set_value'res
    val set_value'async :
            Rpc_client.t ->
            t_Sharedvar'V2'set_value'arg ->
            ((unit -> t_Sharedvar'V2'set_value'res) -> unit) ->
            unit
    val get_value :
            Rpc_client.t ->
            t_Sharedvar'V2'get_value'arg ->
            t_Sharedvar'V2'get_value'res
    val get_value'async :
            Rpc_client.t ->
            t_Sharedvar'V2'get_value'arg ->
            ((unit -> t_Sharedvar'V2'get_value'res) -> unit) ->
            unit
    val delete_var :
            Rpc_client.t ->
            t_Sharedvar'V2'delete_var'arg ->
            t_Sharedvar'V2'delete_var'res
    val delete_var'async :
            Rpc_client.t ->
            t_Sharedvar'V2'delete_var'arg ->
            ((unit -> t_Sharedvar'V2'delete_var'res) -> unit) ->
            unit
    val wait_for_value :
            Rpc_client.t ->
            t_Sharedvar'V2'wait_for_value'arg ->
            t_Sharedvar'V2'wait_for_value'res
    val wait_for_value'async :
            Rpc_client.t ->
            t_Sharedvar'V2'wait_for_value'arg ->
            ((unit -> t_Sharedvar'V2'wait_for_value'res) -> unit) ->
            unit
    val dump :
            Rpc_client.t ->
            t_Sharedvar'V2'dump'arg ->
            t_Sharedvar'V2'dump'res
    val dump'async :
            Rpc_client.t ->
            t_Sharedvar'V2'dump'arg ->
            ((unit -> t_Sharedvar'V2'dump'res) -> unit) ->
            unit
    val shm_slot :
            Rpc_client.t ->
            t_Sharedvar'V2'shm_slot'arg ->
            t_Sharedvar'V2'shm_slot'res
    val shm_slot'async :
            Rpc_client.t ->
            t_Sharedvar'V2'shm_slot'arg ->
            ((unit -> t_Sharedvar'V2'shm_slot'res) -> unit) ->
            unit
    
  end
  
end


