useDynLib(BioC_graph)

importClassesFrom(methods, ANY, character, list, logical, matrix,
                  missing, "NULL", numeric, oldClass, vector)
importMethodsFrom(methods, coerce, initialize, show)
importFrom(methods, "@<-", as, callGeneric, is, isVirtualClass, new,
           slot, "slot<-", slotNames, validObject)
importFrom(stats, as.dist, dhyper, phyper, runif)
importFrom(tools, package.dependencies)
importFrom(utils, CRAN.packages, modifyList)

exportClasses(distGraph,
      clusterGraph, graph, graphNEL, file, connection, gzfile, bzfile, url,
      graphAM, attrData, simpleEdge, edgeSet, edgeSetNEL, edgeSetAM, multiGraph,
      renderInfo) 

exportMethods(DFS, Dist, acc, addEdge, addNode, adj,
      clearNode, clusteringCoefficient, combineNodes, complement, connComp,
      degree, dumpGXL, edgeL, edgeMatrix, edgeNames, edgeWeights, edgemode,
      "edgemode<-", edges, "nodes<-", fromGXL, inEdges, initialize,
      intersection, intersection2, isAdjacent, isConnected, isDirected, join,
      nodes, numNodes, numEdges, removeEdge, removeNode, show, subGraph,
      threshold, toGXL, union, validateGXL, coerce, toDotR, attrDefaults,
      "attrDefaults<-", edgeDataDefaults, "edgeDataDefaults<-",
      nodeDataDefaults, "nodeDataDefaults<-", edgeData, "edgeData<-", nodeData,
      "nodeData<-", attrDataItem, "attrDataItem<-",
      "removeAttrDataItem<-", ugraph, leaves, updateGraph)


export(boundary, buildRepDepGraph, calcProb, calcSumProb,
       duplicatedEdges, graph2SparseM, listEdges,
       randomEGraph, randomGraph, randomNodeGraph,
       validGraph, eWV, pathWeights, .dropEdges, 
       aveNumEdges, sparseM2Graph, gxlTreeNEL,
       ftM2adjM, ftM2graphNEL, .ftM2other, int2ftM, 
       ftM2int, aM2bpG, mostEdges, numNoEdges, reverseEdgeDirections, ugraphOld) 

export(graph.par, graph.par.get, graphRenderInfo,
       nodeRenderInfo, edgeRenderInfo, parRenderInfo,
       "nodeRenderInfo<-", "edgeRenderInfo<-", "parRenderInfo<-",
       "graphRenderInfo<-")

S3method(write,tlp)
