Initialization function
authorPaul Hoffman <phoffman@nygenome.org>
Fri, 20 Oct 2017 22:05:32 +0000 (18:05 -0400)
committerPaul Hoffman <phoffman@nygenome.org>
Fri, 20 Oct 2017 22:05:32 +0000 (18:05 -0400)
R/loom.R

index 3aa4be58ae2d37d234b9f35e97d07a19caf15ef1..77c29d45fcbf798b8e8e53ccfb9835dcf2afff29 100644 (file)
--- a/R/loom.R
+++ b/R/loom.R
@@ -1,12 +1,33 @@
-#' @import methods
 #' @import h5
+#' @importFrom methods setClass setMethod setGeneric callNextMethod
 NULL
 
 #' A class for loom
 #'
+#' @name loom-class
+#' @rdname loom-class
 #' @exportClass loom
 #'
 loom <- setClass(
   Class = 'loom',
+  slots = c(
+    version = 'ANY'
+  ),
   contains = 'H5File'
-)
\ No newline at end of file
+)
+
+#' @importFrom utils packageVersion
+#'
+setMethod(
+  f = 'initialize',
+  signature = 'loom',
+  definition = function(.Object, name, mode = 'a') {
+    .Object <- callNextMethod(
+      .Object,
+      name = name,
+      mode = mode
+    )
+    .Object@version <- packageVersion(pkg = 'loom')
+    return(.Object)
+  }
+)