R/classes.R

#' check_hVariant
#' @description h5Variant validator
#' @param object h5Variant object
#' @author Leandro Roser \email{learoser@@gmail.com}
#' @keywords internal

check_h5Variant <- function(object) {
    errors <- list()
    for(object in c(object@h5_location, object@map_location)) {
        if(!file.exists(object)) {
            errors <- c(errors,paste0(object, " file does not exists"))
        }
    }
    if(length(errors) == 0) TRUE else errors
}

#' h5Variant class
#' @name h5Variant-class
#' @keywords internal
#' @slot  h5_location location of hdf5 file
#' @slot  map_location location of map bed file
#' @author Leandro Roser \email{learoser@@gmail.com}
#' @aliases h5Variant-class

setClass("h5Variant", slots = c(h5_location = "character",
    map_location = "character",
    dimension = "list",
    block_size = "integer",
    type = "character"
    ),
    prototype = list(h5_location = character(),
        map_location = character(),
        dimension = alist(data=, 
                          chunksize =,
                          blocksize =,
                          rownames =, 
                          colnames =, 
                          seqnames =,
                          seqlevels =, 
                          map =),
        block_size = integer(),
        type = character()),
    contains = "Seqinfo",
    validity = check_h5Variant)
leandroroser/h5Variant documentation built on May 8, 2019, 3:14 a.m.