useDynLib(Matrix, .registration=TRUE) ## Import non-base functions we need explicitly, ## notably for which we define methods: importFrom("lattice", levelplot) importFrom("graphics", image) importFrom("utils", head, tail) importFrom("stats", cov2cor, update) importFrom("grid", grid.rect, gpar, grob) ## Currently, group generics need to be explicitly imported (Bug?): importFrom("methods", Arith, Compare, Logic, Math, Math2, Summary, Complex) ## Generics and functions defined in this package export("Cholesky", "Diagonal", ".symDiagonal", "Hilbert", "Matrix", "spMatrix", "Schur", "band", "bdiag", "colMeans", "colSums", ## these needed a "..." added "rowMeans", "rowSums", "drop0", "expand", "expm", "facmul", "forceSymmetric", # "isTriangular", # "isDiagonal", "lu", "norm", "nearPD", "nnzero", "printSpMatrix", "rcond", "readHB", "readMM", "symmpart", "skewpart", "tcrossprod", "tril", "triu", "unpack", # "writeHB", "writeMM", "xtabs" ) ## substitute for using cbind() / rbind() export("cBind", "rBind") ## workaround S4-Group(generic|method) quirk: R/AllGeneric.R ## needs setGeneric(*, group=) and this for all non-Primitives : ## "Math" if(getRversion() < "2.6.0" || R.version$`svn rev` < 42093) { ## these are not yet primitive export("log", "gamma", "lgamma") } if(!is.primitive(round)) { export( ## "Math2" "round", "signif") } if(!is.primitive(max)) { export( ## "Summary" "max", "min", "range", "prod", "sum", "any", "all") } exportClasses( ## Class unions: "index", "replValue", # if we don't export it, things fail in dispatch "atomicVector", "number", ## LOGIC "logic", ## --- 'Matrix' mother and all its daughters : --------------- "Matrix", ## also intermediate `virtual' ones: "dMatrix", "lMatrix", "nMatrix", ## not yet used, but as sub-classes; ## must provide them for 'hierarchy-analysis': "iMatrix", "zMatrix", "denseMatrix", "sparseMatrix", "compMatrix", "diagonalMatrix", "generalMatrix", "symmetricMatrix", "triangularMatrix", "dsparseMatrix", "lsparseMatrix", "nsparseMatrix", "TsparseMatrix", "CsparseMatrix", "RsparseMatrix", "ddenseMatrix", "ldenseMatrix", "ndenseMatrix", "dgCMatrix", "dgRMatrix", "dgTMatrix", "dgeMatrix", "dpoMatrix", "dppMatrix", "dsCMatrix", "dsRMatrix", "dsTMatrix", "dspMatrix", "dsyMatrix", "dtCMatrix", "dtRMatrix", "dtTMatrix", "dtpMatrix", "dtrMatrix", "ddiMatrix", "lgeMatrix", "lspMatrix", "lsyMatrix", "ltpMatrix", "ltrMatrix", "ldiMatrix", "ngeMatrix", "nspMatrix", "nsyMatrix", "ntpMatrix", "ntrMatrix", "lgCMatrix", "lgRMatrix", "lgTMatrix", "lsCMatrix", "lsRMatrix", "lsTMatrix", "ltCMatrix", "ltRMatrix", "ltTMatrix", "ngCMatrix", "ngRMatrix", "ngTMatrix", "nsCMatrix", "nsRMatrix", "nsTMatrix", "ntCMatrix", "ntRMatrix", "ntTMatrix", "pMatrix", "corMatrix", # unused ## --- inheriting "Matrix", but also factorizations: "BunchKaufman", "pBunchKaufman", "Cholesky", "pCholesky", ## "LDL", ## --- 'MatrixFactorization' mother and all its daughters : --- "MatrixFactorization", "LU", "denseLU", "sparseLU", "CHMfactor", "CHMsuper", "CHMsimpl", "dCHMsuper", "dCHMsimpl", "nCHMsuper",# unused "nCHMsimpl",# unused "sparseQR", "Schur", "sparseVector", ## --- and daughters : --- "dsparseVector", "isparseVector", "lsparseVector", "nsparseVector", "zsparseVector", "xsparseVector" # the class union of all 'x' lost sparseVector's ) exportMethods(## for both own and "other" generics: ## Group Methods "Arith", "Compare", "Logic", "Math", "Math2", "Ops", "Summary", "!", "+",# for dgT(Matrix) only "%*%", "all", "any", "BunchKaufman", "Cholesky", "Schur", "as.array", "as.matrix", "as.vector", "as.numeric", "as.logical", "band", "chol", "colMeans", "colSums", "cov2cor", "coerce", "crossprod", "determinant", "diag", "diff", "dim", "dim<-", "dimnames", "dimnames<-", "drop", "expand", "expm", "head", "image", "forceSymmetric", "isSymmetric", ## "isDiagonal", ## "isTriangular", "is.na", "kronecker", "length", "norm", "print",# print(x, ...) when show(x) is not sufficient "qr", "qr.R", "qr.qy", "qr.qty", "qr.coef", "qr.resid", "qr.fitted", "rcond", "rowMeans", "rowSums", "show", "solve", "summary", "symmpart", "skewpart", "t", "tail", "tcrossprod", "tril", "triu", "update", "zapsmall" ) exportMethods("rbind2") exportMethods("cbind2") S3method(print, sparseSummary)