Split out the kernel symbol detection code.
[virt-mem.git] / lib / virt_mem.mli
index d0ead0d..eae488e 100644 (file)
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *)
 
-type ksym = string
-  (** A kernel symbol name. *)
-
-type image =
-    int option
-    * string
-    * Virt_mem_utils.architecture
-    * ([`Wordsize], [`Endian], [`HasMapping]) Virt_mem_mmap.t
-  (** A memory image from a domain. *)
-
-type image_with_ksyms =
-    int option
-    * string
-    * Virt_mem_utils.architecture
-    * ([`Wordsize], [`Endian], [`HasMapping]) Virt_mem_mmap.t
-    * (ksym -> Virt_mem_mmap.addr)
-  (** An image after it has been processed to find kernel symbols.
-
-      The tuple fields are:
-      - domain ID (if known)
-      - name, usually the domain name
-      - architecture (eg. I386)
-      - kernel memory map (wordsize & endianness already determined)
-      - a function to look up kernel symbols.  It raises [Not_found]
-        if a kernel symbol could not be found or if the kernel symbol
-        table could not be found at all.
-  *)
-
 val register :
   ?external_cmd:bool ->
   ?extra_args:(Arg.key * Arg.spec * Arg.doc) list ->
   ?argcheck:(bool -> unit) ->
-  ?beforeksyms:(bool -> image list -> unit) ->
-  ?run:(bool -> image_with_ksyms list -> unit) ->
+  ?beforeksyms:(bool -> Virt_mem_types.image0 list -> unit) ->
+  ?run:(bool -> Virt_mem_types.image1 list -> unit) ->
   string -> string -> Arg.usage_msg ->
   unit
   (** Tools register themselves with this call.