export(
	rows,
	columns,
	"rows<-",
	"columns<-",
	"dimnames<-.biom",
	merge.biom,
	"[.biom",

	biomRequest,
	biom.environment,

	metadata.character,
	search.MGRAST,
	dir.MGRAST,

	t_NA2Zero,
	t_Threshold,
	t_Log,
	t_ColCenter,
	t_ColScale,
	transform.biom,

	boxplot.biom,
	princomp.biom,
  	image.biom,

	rowstats,
	rowstats.matrix,
	rowstats.biom,

	distx,
	distx.matrix,
	distx.biom,

	getMetRows,
	getMetColumns,
	subRow,
	subColumn,
	parMap,
	parAuto,

	readSet,
	scrubSet,
	scrapeSet,
	expandSet,

	demoSets,
	buildDemoSets,
	hazPackages,
	dependencies,
	stepper,
	step.through,
	collapse,
	
	.Last.lib)

S3method ("dimnames<-", biom)
S3method (merge, biom)
S3method ("[", biom)

S3method (biom, environment)

S3method (metadata, character)

S3method (transform, biom)

S3method (boxplot, biom)
S3method (princomp, biom)
S3method (image, biom)

S3method (rowstats, matrix)
S3method (rowstats, biom)

S3method (distx, matrix)
S3method (distx, biom)

#-----------------------------------------------------------------------------------------
#  package BIOM.utils is a strict dependency, declared in "Depends:"
#  also (this is a separate point) methods for class "biom" are used throughout,
#  so it makes sense to import the entire package namespace.
#-----------------------------------------------------------------------------------------
import (BIOM.utils)

#-----------------------------------------------------------------------------------------
#  package MGRASTer ought not to be considered a dependency, perhaps, yet is declared in "Depends:"
#  because its environment seems to fail if not loaded this way.  nonetheless, the
#  following namespace import might reasonably be removed, in favor of explicit references.
#-----------------------------------------------------------------------------------------
import (MGRASTer)

#-----------------------------------------------------------------------------------------
#  all other packages are optional, each providing specific and limited analysis functionality.
#  we adopt the approach described in this remark from the (forthcoming) R-ext manual:
#    "If the intention is to give an error 
#    if the suggested package is not available, 
#    simply use e.g. rgl::plot3d."
#  the following are exceptions, because the matR package namespace depends on them:
#-----------------------------------------------------------------------------------------
importFrom (graphics, boxplot)
importFrom (graphics, image)
importFrom (stats, princomp)

  importFrom("grDevices", "colorRamp", "colors", "rgb")
  importFrom("graphics", "abline", "close.screen", "grid", "plot",
             "points", "screen", "split.screen", "text")
  importFrom("stats", "anova", "aov", "kruskal.test", "sd", "t.test",
             "wilcox.test")
  importFrom("utils", "browseURL", "chooseBioCmirror",
             "chooseCRANmirror", "install.packages",
             "packageDescription", "packageVersion", "read.table",
             "setRepositories")
