#Rcell Namespace

#load 
export(load.cellID.data,load.cell.data)
export(is.cell.data)

#as.cell.data
export(as.cell.data)
S3method(as.cell.data, list)
S3method(as.cell.data, default)

#merge
S3method(merge, cell.data)
S3method(merge, cell.image)
export(load.pdata)

#transform
S3method(transform, cell.data)
S3method(transformBy, cell.data)
S3method(transformBy, data.frame)
S3method(transformBy, default)
export(transformBy)

#aggregate
importFrom(stats,aggregate)
S3method(aggregate, cell.data)
S3method(aggregateBy, cell.data)
S3method(aggregateBy, data.frame)
S3method(aggregateBy, default)
export(aggregateBy)

#reshape
export(reshape,creshape)
S3method(reshape, cell.data)
S3method(reshape, data.frame)
S3method(reshape, default)

#flatten
S3method(flatten, data.frame)
S3method(flatten, default)
export(flatten)
export(conform)
export(write.delim)

#update
export(update_n.tot)
export(update_img.path)

#select.cells
export(select.cells)
export(select.vars, remove.vars)

#subset
S3method(subset, cell.data)
S3method(subset, cell.image)
S3method("[", cell.data)

#as.data.frame
S3method(as.data.frame, cell.data)
export(cdata)
S3method("[[", cell.data)

#QC.filter
export(QC.filter,QC.undo,QC.reset,QC.execute)

#print
S3method(print, cell.data)
S3method(print, summary.cell.data)
S3method(summary, cell.data)

#with
S3method(with, cell.data)

#cplot
export(cplot,cplotmean,cplotmeans,clayer,clayermean,clayermeans)
export(cplotmedian,clayermedian)
S3method(plot, cell.data)
export(caxis, zoom, xzoom, yzoom)
export(vplayout)

#ggplot
export(theme_Rcell, theme_invisible)

#cimage
export(cimage,get.cell.image,is.cell.image,img.desc,show.img,show.image)
export("img.desc<-")
S3method(cimage, cell.data)
S3method(cimage, cell.image)
S3method(cimage, default)
S3method(get.cell.image, cell.data)
S3method(get.cell.image, data.frame)
S3method(get.cell.image, default)
S3method(summary, cell.image)
S3method(print, summary.cell.image)
S3method(print, cell.image)
S3method(plot, Image)

export(read.cell.image,write.cell.image)
export(cnormalize, ciciply, add.nucleus.boundary, add.maj.min.axis)
export(drawCross,drawLine,drawText)
export(.conflicts.OK)
export(revFactor)

#grid functions
importFrom(grid,grid.newpage,pushViewport,viewport,grid.layout)

#Depends functions
importFrom(plyr,.,ddply,dlply,ldply,join)
importFrom(reshape,melt,cast,funstofun,recast)
import(ggplot2)
import(proto)
