## ----setup, include=FALSE-----------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)

## ----install-cran, eval=FALSE-------------------------------------------------
# install.packages("nemoR")

## ----load---------------------------------------------------------------------
library(nemoR)

## ----make-manifest------------------------------------------------------------
manifest <- nemo_manifest_from_urls(
  urls = c(
    "https://example.com?file=processed_counts.h5ad",
    "https://example.com?file=parameters.json"
  ),
  collection_id = "example-collection",
  file_id = c("example-counts", "example-parameters")
)

manifest$data_type <- c("counts", "parameters")
manifest$size <- c(5 * 1024^2, 2048)
manifest

## ----validate-----------------------------------------------------------------
nemo_validate_manifest(manifest)
nemo_download_plan(manifest, max_size_gb = 1)

## ----status-columns-----------------------------------------------------------
manifest[, c("file_id", "file_name", "download_status", "checksum_verified")]

## ----checksum-----------------------------------------------------------------
tmp <- tempfile()
writeLines("nemo", tmp)

checksum <- unname(tools::md5sum(tmp))
checksum
identical(checksum, unname(tools::md5sum(tmp)))

## ----download-real-files, eval=FALSE------------------------------------------
# downloaded <- nemo_download(
#   manifest,
#   destdir = "nemo_downloads",
#   max_size_gb = 5,
#   verify_checksum = TRUE
# )
# 
# nemo_write_manifest(downloaded, file.path("nemo_downloads", "nemo_manifest.tsv"))

## ----load-downloaded-files, eval=FALSE----------------------------------------
# downloaded <- nemo_read_manifest("nemo_downloads/nemo_manifest.tsv")
# sce <- nemo_load(downloaded, format = "SingleCellExperiment")
# seurat_obj <- nemo_load(downloaded, format = "Seurat")

## ----session-info-------------------------------------------------------------
sessionInfo()

