module Protein: sig end
The definitions for the proteins in the Cytoplasm layer. Proteins
can exist in three different representations:
list
- an abstract representation in the module
Protein.Abstract that
can be used as the simplest useful encoding of a protein;
- an optimized representation in the module
Protein.Optimized
that serves as the program which runs a procunit in the Incubator
underlying the Cytoplasm;
- and the final representation in type
Protein.t, which represents
instances of proteins that can be fed to the Incubator.
module Abstract: sig end
Contains the lightweight, live internal representation of an
abstract protein.
module Wizard: sig end
Used to make abstract proteins with a table-driven interface.
module Optimized: sig end
The implementation of this module contains the meat of the protein
execution model.
type t
A concrete instance of an optimized protein. This is the type of
the object which is placed in the Incubator/Cytoplasm layers of the
Monod model.
val make : ?stats:bool -> Optimized.t -> t
make withstats op creates a concrete instance of the optimized
protein op. If withstats is true, the instance will collect
utilization statistics which can be extracted with get_stats below.
The default value of withstats is false, which makes for slightly
faster operation.
type globalstats = {
|
mutable click_count : int; |
|
mutable lb_unimate_count : int; |
|
mutable sb_unimate_count : int; |
}
exception No_statistical_collection
val get_stats : t -> globalstats
val to_pu : t -> Incubator.Procunit.t
to_pu opi is a processing unit which can be fed to the Incubator
layer.