BiocFile-class: BiocFile objects

Description Accessor Methods Coercion Related functions Author(s) See Also Examples

Description

A BiocFile object is the base class for classes representing files accessible with rtracklayer. It wraps a resource (either a path, URL or connection). We can represent a list of BiocFile objects with a BiocFileList.

Accessor Methods

In the code snippets below, x represents a BiocFile object.

path(x): Gets the path, as a character vector, to the resource represented by the BiocFile object, if possible.

resource(x): Gets the low-level resource, either a character vector (a path or URL) or a connection.

fileFormat(x): Gets a string identifying the file format. Can also be called directly on a character file path, in which case it uses a heuristic based on the file extension.

Coercion

as.character(x): Returns the path of the file as a character vector.

Related functions

FileForFormat(path, format = file_ext(path)): Determines the file type of path and returns a high-level file object such as BamFile, BEDFile, BigWigFile etc..

bestFileFormat(x): Returns the best possible file format for a given file. This function searches through loaded packages for "File" classes that contain S4 methods for 'export' and 'import' for that class.

decompress(x): Returns a decompressed representation of a CompressedFile or character object.

Author(s)

Michael Lawrence

See Also

Implementing classes include: BigWigFile, TwoBitFile, BEDFile, GFFFile, and WIGFile.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
  ## For our examples, we create a class called CSVFILE that extends BiocFile
  .CSVFile <- setClass("CSVFile", contains = "BiocFile")

  ## Constructor
  CSVFile <-
      function(resource)
  {
      .CSVFile(resource = resource)
  }

  setMethod("import", "CSVFile",
      function(con, format, text, ...)
  {
      read.csv(resource(con), ...)
  })

  ## Define export
  setMethod("export", c("data.frame", "CSVFile"),
      function(object, con, format, ...)
  {
      write.csv(object, resource(con), ...)
  })

  ## Recommend CSVFile class for .csv files
  temp <- tempfile(fileext = ".csv")
  FileForFormat(temp)

  ## Create CSVFile
  csv <- CSVFile(temp)

  ## Display path of file
  path(csv)

  ## Display resource of file
  resource(csv)

BiocIO documentation built on Nov. 11, 2020, 2:01 a.m.