module Dn_store: sig
.. end
The directory containing the store. There are two files:
- config: first line contains the identity string. Second line
contains the block size
- data: one big file with the data blocks
class type dn_store_config = object
.. end
val init_store : dn_store_config -> string -> int64 -> unit
init_dn_store config identity size
:
Initializes the store. The directory must already exist. The files
config
and data
must not exist.
type
dn_store
val open_store : dn_store_config -> dn_store
Opens the store
val close_store : dn_store -> unit
Closes the store
val get_identity : dn_store -> string
Returns the identity string
val get_blocksize : dn_store -> int
Returns the block size
val get_size : dn_store -> int64
Returns the number of blocks
val read_block : dn_store -> int64 -> int -> Netsys_mem.memory -> int -> int -> unit
read_block st block blockpos mem mpos len
: Reads the bytes
blockpos
to blockpos+len-1
from block
into the range
mpos
to mpos+len-1
of mem
.
val write_block : dn_store -> int64 -> Netsys_mem.memory -> int -> unit
write_block st block blockpos mem mpos
: Writes a complete block out.
The block data are in mem
from byte position mpos
to
mpos+blocksize-1
. The data is written into block
.
val will_read_block : dn_store -> int64 -> unit
will_read_block st block
: announces that this block will be read
in the near future
val sync : dn_store -> unit
Syncs the store to disk