useDynLib(GenABEL)

#import(methods)
#import(genetics)
#importClasses(genetics)

export(
	add.plot,
	add.phdata,
	arrange_probabel_phe,
	as.character.gwaa.data,
	as.character.snp.coding,
	as.character.snp.data,
	as.character.snp.strand,
	as.data.frame.gwaa.data,
	as.double.gwaa.data,
	as.double.snp.data,
	as.genotype,
	as.genotype.gwaa.data,
	as.genotype.snp.data,
	as.hsgeno,
	as.hsgeno.gwaa.data,
	as.hsgeno.snp.data,
	autosomal,
	blurGenotype,
	catable,
	ccfast,
	checkPackageVersionOnCRAN,
	check.marker,
	check.trait,
	cocohet,
	convert.snp.affymetrix,
	convert.snp.illumina,
	convert.snp.mach,
	convert.snp.ped,
	convert.snp.tped,
	convert.snp.text,
	crnames,
	chi2_CG,
	del.phdata,
	descriptives.marker,
	descriptives.scan,
	descriptives.trait,
	dprfast,
	egscore,
	egscore.old,
	emp.ccfast,
	emp.qtscore,
	estlambda,
	export.impute,
	export.merlin,
	export.plink,
	extract.annotation.impute,
	extract.annotation.mach,
	findRelatives,
	formetascore,
	GASurv,
	VIFGC,
	VIFGC_ovdom,
	generateOffspring,
	getLogLikelihoodGivenRelation,
	grammar,
	HWE.show,
	hom,
	hom.old,
	ibs,
	ibs.old,
	impute2databel,
	impute2mach,
	#LiLogCC,
	#LiLog,
	load.gwaa.data,
	mach2databel,
	makeTransitionMatrix,
	merge.gwaa.data,
	merge.snp.data,
	mlreg,
	mlreg.p,
	mmscore,
	npsubtreated,
	patch_strand,
	perid.summary,
	PGC,
	plot.check.marker,
	plot.scan.gwaa,
	plot.scan.gwaa.2D,
	polygenic,
	polygenic_hglm,
	r2fast,
	r2fast.old,
	recodeChromosome,
	reconstructNPs,
	redundant,
	refresh.gwaa.data,
	reg.gwaa,
	rhofast,
	rntransform,
	qtscore,
	qvaluebh95,
	save.gwaa.data,
	scan.glm,
	scan.glm.2D,
	scan.haplo,
	scan.haplo.2D,
	show.ncbi,
	snp.data,
	snp.names,
	snp.subset,
	sortmap.internal,
	sset,
	strand,
	summary.check.marker,
	#summary.gwaa.data,
	summary.snp.data,
	summary.snp.data_old,
	#summary.scan.gwaa,
	Xfix,
	ztransform
	#var.meta,
	#var.test.homogeneity
	#var.test.homogeneity.bartlett
       )

exportClasses(
	"gwaa.data",
	"scan.gwaa",
	"scan.gwaa.2D",
	"snp.coding",
	"snp.data",
	"snp.mx",
	"snp.strand",
	"snps.cell"
	)

exportMethods(
	"annotation",
	"chromosome",
	"coding",
	"coding<-",
	"effallele",
	"getcall",
	"getfamily",
	"gtdata",
	"lambda",
	"male",
	"nids",
	"nsnps",
	"results",
	"show",
	"snpnames",
	"idnames",
	"refallele",
	"strand",
	"strand<-",
	"map",
	"phdata",
	"phdata<-"
)

S3method(summary,check.marker)
S3method(summary,gwaa.data)
S3method(summary,snp.data)
S3method(summary,scan.gwaa)

S3method(plot,check.marker)
S3method(plot,scan.gwaa)
S3method(plot,scan.gwaa.2D)

#S4method('[',snp.data)
#S4method('[',gwaa.data)
#S4method('[',snp.mx)

S3method(as.character,gwaa.data)
S3method(as.character,snp.data)
S3method(as.data.frame,gwaa.data)
S3method(as.double,snp.data)
S3method(as.double,gwaa.data)
S3method(as.hsgeno,gwaa.data)
S3method(as.hsgeno,snp.data)
S3method(as.genotype,gwaa.data)
S3method(as.genotype,snp.data)
