[Genabel-commits] r625 - in pkg/VariABEL: . R src

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Fri Dec 17 10:25:45 CET 2010


Author: maksim
Date: 2010-12-17 10:25:45 +0100 (Fri, 17 Dec 2010)
New Revision: 625

Modified:
   pkg/VariABEL/DESCRIPTION
   pkg/VariABEL/NAMESPACE
   pkg/VariABEL/R/var.test.gwaa.R
   pkg/VariABEL/src/gtps_container.cpp
   pkg/VariABEL/src/supplementary_functions.cpp
   pkg/VariABEL/src/supplementary_functions.h
   pkg/VariABEL/src/tags
   pkg/VariABEL/src/var_homogeneity_test_C.cpp
   pkg/VariABEL/src/var_homogeneity_tests.cpp
   pkg/VariABEL/src/var_homogeneity_tests.h
Log:
The linear regression on a squared trait with prior mean centralization is included. Itearatot is used for data obtaining.

Modified: pkg/VariABEL/DESCRIPTION
===================================================================
--- pkg/VariABEL/DESCRIPTION	2010-12-16 23:06:08 UTC (rev 624)
+++ pkg/VariABEL/DESCRIPTION	2010-12-17 09:25:45 UTC (rev 625)
@@ -1,13 +1,12 @@
-Package: VarABEL
+Package: VariABEL
 Type: Package
-Title: genome-wide SNP association analysis
-Version: 1.5-0
+Title: Testing of genotypic variance heterogeneity to detect potentially interacting SNP.
+Version: 0.0-1
 Date: 2010-02-18
-Author: Yurii Aulchenko, Maksim Struchalin
-Maintainer: Yurii Aulchenko <i.aoultchenko at erasmusmc.nl>
-Depends: R (>= 2.4.0), methods, MASS
-Suggests: qvalue, genetics, haplo.stats, DatABEL
-Description: a package for genome-wide association analysis between 
-             quantitative or binary traits and single-nucleiotide
-             polymorphisms (SNPs). 
+Author: Maksim Struchalin
+Maintainer: Maksim Struchalin <m.struchalin at erasmusmc.nl>
+Depends: 
+Suggests: 
+Description: Presence of interaction between a SNP and another SNP (or another factor) can result into heterogeneity of variance for a SNP involved into
+						 interaction. Detecting of such heterogeneity for a given can give prior knowlidge for constructing a genetic model underlying complex trait.
 License: GPL (>= 2)

Modified: pkg/VariABEL/NAMESPACE
===================================================================
--- pkg/VariABEL/NAMESPACE	2010-12-16 23:06:08 UTC (rev 624)
+++ pkg/VariABEL/NAMESPACE	2010-12-17 09:25:45 UTC (rev 625)
@@ -1,8 +1,9 @@
-useDynLib(VarABEL)
+useDynLib(VariABEL)
 
 
 export(
 	var.meta.gwaa,
-	var.test.gwaa
+	var.test.gwaa,
+	test_databel
        )
 

Modified: pkg/VariABEL/R/var.test.gwaa.R
===================================================================
--- pkg/VariABEL/R/var.test.gwaa.R	2010-12-16 23:06:08 UTC (rev 624)
+++ pkg/VariABEL/R/var.test.gwaa.R	2010-12-17 09:25:45 UTC (rev 625)
@@ -24,90 +24,120 @@
 #_____________________________________________________________________________________________________________________________
 #Available for user function for genome-wide testing variance homogeneity of trait's distribution.
 #
-"var.test.gwaa" <- function(genotype, trait, testname, analysis_type)
+"var.test.gwaa" <- function(formula, genodata, phenodata, testname="sqlm", analysis_type="AAvsABvsBB")
 {
-#test statistics for each SNP is stored here. There is column names: "snpname", "chisq_df2", "chisq_df1"
-results <- data.frame()
 
 
+if(testname == "bartlett") {testname <- 0}
+else if(testname == "levene") {testname <- 1}
+else if(testname == "likelihood") {testname <- 2}
+else if(testname == "kolmogorov_smirnov") {testname <- 3}
+else if(testname == "sqlm") {testname <- 4}
+else {stop(paste(testname, "is unsupportive type of test. Only levene, and sqlm are supported."))}
 
-		
-# Check wether the class and value of input parameters is appropriate
-#_____________________________________________________________		
-if(!is(genotype, "snp.data") & !is(genotype, "numeric"))
+
+if(analysis_type == "AAvsABvsBB") {analysis_type <- 0}
+else if(analysis_type == "AAvsABandBB") {analysis_type <- 1}
+else if(analysis_type == "ABvsAAandBB") {analysis_type <- 2}
+else if(analysis_type == "BBvsAAandAB") {analysis_type <- 3}
+else {stop(paste(analysis_type, "is unsupportive type of analysis. Only AAvsABvsBB, AAvsABandBB, ABvsAAandBB, and BBvsAAandAB are supported."))} 
+
+
+MAR <- 2
+OUT <- "R" 
+FUN <- "variance_homogeneity_test_C_wrapper"
+
+design_matrix <- model.matrix(formula, data = phenodata)
+trat_name <- as.character(formula[[2]])
+trait <- phenodata[,trat_name]
+idnum <- length(trait)
+design_matrix_df <- data.frame(design_matrix)
+design_matrix_df$snp <- 0 #will be filled into iterator
+
+
+p <- dim(design_matrix_df)[2] #covariates number + 1
+
+print(design_matrix_df)
+gtNrow <- NA
+gtNcol <- NA
+
+#Stolen from MixABEL:
+if(class(genodata) == "snp.data")
 	{
-	stop("VarABEL, var.test.gwaa: Wrong class of input parameter \"genotype\".")
+	gtNrow <- dim(genodata)[1]
+	gtNcol <- dim(genodata)[2]
+	genodata <- as.raw(genodata at gtps)
 	}
-
-if(!is(trait, "numeric"))
+	else if (class(genodata) == "matrix") 
 	{
-	stop("VarABEL, var.test.gwaa: Wrong class of input parameter \"trait\".")
+	gtNrow <- dim(genodata)[1]
+	gtNcol <- dim(genodata)[2]
+	storage.mode(genodata) <- "double"
 	}
-
-if(!is(testname, "character"))
+	else if (class(genodata)=="databel") 
 	{
-	stop("VarABEL, var.test.gwaa: Wrong class of input parameter \"testname\". It should be \"character\".")
+	gtNrow <- dim(genodata)[1]
+	gtNcol <- dim(genodata)[2]
+	genodata <- genodata at data
 	}
+	else
+ 	{
+	stop(paste("genodata class not recognised ('",class(genodata),"')",sep=""))
+	}
 
+														 
 
-#_____________________________________________________________		
 
+results_C <- .Call("iterator", genodata,
+														 as.integer(gtNrow), as.integer(gtNcol),
+													 	 as.character(FUN),
+														 as.character(OUT), 
+														 as.integer(MAR),
+														 as.integer(1),
+														 as.integer(17), #iterator additional inputa parameters number
+														 as.double(trait),
+														 as.double(data.matrix(design_matrix_df)),
+														 as.integer(p),
+														 as.integer(analysis_type),
+														 as.integer(testname),
+														 double(p),#betas 
+														 double(p),#se 
+														 double(1),#chi2
+														 integer(1),#df
+														 double(idnum),#residuals
+														 double(idnum),#qty 
+														 integer(p),#jpvt
+														 double(p),#qraux
+														 double(2*p),#work
+														 double(p*p),#v
+														 double(p*p),#x_for_ch2inv
+														 integer(idnum)
+														 )
 
 
+if(class(genodata) == "snp.data")
+	{
+	
+	}
 
-return_val <-  .Call("variance_homogeneity_test_C_old_data_type",
-									as.raw(genotype at gtps),
-									as.double(trait),
-									as.integer(genotype at nids), 
-									as.integer(genotype at nsnps),
-									analysis_type,
-									testname)
+results_df <- data.frame(results_C)
 
+cov_names <- colnames(design_matrix_df)
+print("1")
+output_column_names <- c("chisq", "df", "Intercept_effect", "Intercept_sd")
+print("2")
 
+for(i in 2:p)
+	{
+	output_column_names <- c(output_column_names, paste(cov_names[i], "_effect", sep=""))
+	output_column_names <- c(output_column_names, paste(cov_names[i], "_sd", sep=""))
+	}
 
+colnames(results_df) <- output_column_names
 
-result_df <- data.frame(chisq=return_val[[1]], df=return_val[[2]])
-
-
-#output <- .Call("interaction_rare_recesive_allele_C_", as.raw(data at gtps), as.integer(data at nids), as.integer(snp_number),
-#			 																								 as.integer(trait),
-#																											 as.integer(window), 
-#																											 return_all_result,
-#																											 test,
-#																											 as.integer(min_expected_cut_off))
-
-
+print(results_df)
 }
-##Perform variance analysis
-##_____________________________________________________________		
-#
-#if(is(genotype, "snp.data"))
-#	{
-#	nids  <- genotype at nid
-#	nsnps <- genotype at gtdata@nsnps
-#	MAR <- 1
-#	OUT <- "R"
-#
-#	FUN <- test_C_function_name[testname] #choose name of variance homogeneity test
-#
-#	#Run choosen variance homogeneity test
-#	results_C <- .Call("iterator", as.raw(genotype at gtps),
-#				 												 as.integer(nids), as.integer(nsnps),
-#								            		 as.character(FUN),
-#																 as.character(OUT), 
-#																 as.integer(MAR),
-#																 as.integer(0),
-#														     package="VarABEL")
-#	}
-#
-#
-#
-#return results
-#}
-##End of var.test.gwaa function
-##_____________________________________________________________________________________________________________________________
 
 
 
 
-

Modified: pkg/VariABEL/src/gtps_container.cpp
===================================================================
--- pkg/VariABEL/src/gtps_container.cpp	2010-12-16 23:06:08 UTC (rev 624)
+++ pkg/VariABEL/src/gtps_container.cpp	2010-12-17 09:25:45 UTC (rev 625)
@@ -105,7 +105,7 @@
 {
 get_our_byte_number_and_local_person_number(id_position, snp_position); //calculate our_byte_number value
 
-char our_byte_vallue = gtps_array[our_byte_number-1];
+//char our_byte_vallue = gtps_array[our_byte_number-1];
 
 
 
@@ -129,7 +129,7 @@
 	
 std::cout<<"gtps_array[0]="<<int(gtps_array[0])<<"\n";
 
-for(int i=0 ; i<nbytes_for_one_snp; i++)
+for(unsigned int i=0 ; i<nbytes_for_one_snp; i++)
 	{
 	gtps_for_one_snp[i]=gtps_array[our_byte_number-1+i];
 	}
@@ -151,6 +151,7 @@
 {
 if(do_we_have_strand_and_codding_arrays) return strand_array[snp_position-1]; 
 else std::cout<<"gtps_container::get_strand: You can not get strand since you create object with constructor gtps_container(char * gtps_array_raw, unsigned id_numbers, unsigned snp_numbers)\n";
+return char(0);
 }
 
 
@@ -159,6 +160,7 @@
 {
 if(do_we_have_strand_and_codding_arrays) return coding_array[snp_position-1]; 
 else std::cout<<"gtps_container::get_strand: You can not get strand since you create object with constructor gtps_container(char * gtps_array_raw, unsigned id_numbers, unsigned snp_numbers)\n";
+return char(0);
 }
 
 

Modified: pkg/VariABEL/src/supplementary_functions.cpp
===================================================================
--- pkg/VariABEL/src/supplementary_functions.cpp	2010-12-16 23:06:08 UTC (rev 624)
+++ pkg/VariABEL/src/supplementary_functions.cpp	2010-12-17 09:25:45 UTC (rev 625)
@@ -195,7 +195,7 @@
 
 Snp_store_type::iterator iter_map = snps_storage->find(snp->snpname);
 
-char delim=' ';
+//char delim=' ';
 
 
 
@@ -862,10 +862,9 @@
 
 
 
-
 //The function break_trait_up_into_groups takes phenotype and snp, break the phenotype up on three genotypic groups.
 //_________________________________________________________________________________________________
-void break_trait_up_into_groups(std::list<my_small_vector> *trait_groups, int* snp, double *trait, unsigned* nids, analysis_type_enum analys_type, int * is_trait_na)
+void break_trait_up_into_groups(std::list<my_small_vector> *trait_groups, double* snp, double *trait, long unsigned* nids, int analys_type, int * is_trait_na)
 {
 
 std::vector<double> NA, AA, AB, BB; // here we will store trait for different genotype group
@@ -875,8 +874,16 @@
 		//std::cout<<"break_trait_up_into_groups: trait["<<id<<"]="<<trait[id]<<", is_trait_na["<<id<<"]="<<is_trait_na[id]<<", snp["<<id<<"]="<<snp[id]<<"\n";	
 		if(is_trait_na[id] == 1) continue;
 
+	//get bestguess:
+	//________________		
+	static int snp_value;
+	if(snp[id]>=0. && snp[id]<0.5 ) snp_value=0;
+	if(snp[id]>=0.5 && snp[id]<=1.5 ) snp_value=1;
+	if(snp[id]>1.5 && snp[id]<=2. ) snp_value=2;
+	//________________		
+
 		//spread ids trait among genotype group
-		switch(snp[id])
+		switch(snp_value)
 			{
 			case 0:
 				{
@@ -937,12 +944,12 @@
 
 //_________________________________________________
 
-	unsigned NA_size = NA.size();
+//	unsigned NA_size = NA.size();
 	unsigned AA_size = AA.size();
 	unsigned AB_size = AB.size();
 	unsigned BB_size = BB.size();
 
-	double *na, *aa, *ab, *bb;
+	double /**na,*/ *aa, *ab, *bb;
 
 
 		if(AA_size > 1)
@@ -997,7 +1004,6 @@
 
 
 
-
 //________________________________________________________
 // For qsort function
 int compare_doubles(const void *a, const void *b)

Modified: pkg/VariABEL/src/supplementary_functions.h
===================================================================
--- pkg/VariABEL/src/supplementary_functions.h	2010-12-16 23:06:08 UTC (rev 624)
+++ pkg/VariABEL/src/supplementary_functions.h	2010-12-17 09:25:45 UTC (rev 625)
@@ -97,7 +97,7 @@
 			}
 
 	double * vector; 
-	unsigned long number; //amount of cells in vector
+	long number; //amount of cells in vector
 
 
 	};
@@ -138,9 +138,6 @@
 
 
 
-enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};
-enum testname_enum {bartlett, levene, likelihood, kolmogorov_smirnov};
-
 bool include_snp(Snp_store_type *, snp_var_data*, std::ofstream & warnings_file, char *testname); //include snp into common storage
 snp_var_data* snp_var_meta(snp_var_data* , snp_var_data*, char* testname); //metaanalysis of two snps
 bool is_na(const VARIABLE_TYPE val, const VARIABLE_TYPE na_reference=NA_value); //is numerical value recognized as NA 
@@ -161,6 +158,21 @@
 bool snp_filter(snp_var_data* snp,  std::ofstream & warnings_file, bool exclude_whole_snp, unsigned threshold, bool do_warnings_output);
 bool check_files_format(const char** filenames, unsigned file_amount, unsigned skip_first_lines_amount, char delim);
 
-void break_trait_up_into_groups(std::list<my_small_vector> *trait_groups, int* snp, double *trait, unsigned* nids, analysis_type_enum analys_type_, int * is_trait_na);
+void break_trait_up_into_groups(std::list<my_small_vector> *trait_groups, double* snp, double *trait, long unsigned* nids, int analys_type, int * is_trait_na);
 
+
+const short unsigned int AAvsABvsBB = 0;
+const short unsigned int AAvsABandBB = 1;
+const short unsigned int ABvsAAandBB = 2;
+const short unsigned int BBvsAAandAB = 3;
+
+const short unsigned int bartlett = 0;
+const short unsigned int levene = 1;
+const short unsigned int likelihood = 2;
+const short unsigned int kolmogorov_smirnov = 3;
+const short unsigned int sqlm=4;
+
+
+
+
 #endif

Modified: pkg/VariABEL/src/tags
===================================================================
--- pkg/VariABEL/src/tags	2010-12-16 23:06:08 UTC (rev 624)
+++ pkg/VariABEL/src/tags	2010-12-17 09:25:45 UTC (rev 625)
@@ -4,105 +4,899 @@
 !_TAG_PROGRAM_NAME	Exuberant Ctags	//
 !_TAG_PROGRAM_URL	http://ctags.sourceforge.net	/official site/
 !_TAG_PROGRAM_VERSION	5.6	//
+AAvsABandBB	VARlib/supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
 AAvsABandBB	supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
+AAvsABvsBB	VARlib/supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
 AAvsABvsBB	supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
+ABvsAAandBB	VARlib/supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
 ABvsAAandBB	supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
+AbstractMatrix	AbstractMatrix.h	/^class AbstractMatrix {$/;"	c
+AbstractMatrix	fvlib/AbstractMatrix.h	/^class AbstractMatrix {$/;"	c
+AbstractMatrixRFinalizer	AbstractMatrix_R.cpp	/^	static void AbstractMatrixRFinalizer(SEXP x) {$/;"	f	file:
+AbstractMatrixRFinalizer	DAlib/AbstractMatrix_R.cpp	/^	static void AbstractMatrixRFinalizer(SEXP x) {$/;"	f	file:
+BBvsAAandAB	VARlib/supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
 BBvsAAandAB	supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	e	enum:analysis_type_enum
+CHAR_NAN	CastUtils.cpp	/^char CHAR_NAN;$/;"	v
+CHAR_NAN	fvlib/CastUtils.cpp	/^char CHAR_NAN;$/;"	v
+COPY_AND_COMPARE	CastUtils.h	38;"	d
+COPY_AND_COMPARE	fvlib/CastUtils.h	38;"	d
+COUNTS	VARlib/supplementary_functions.h	/^	int COUNTS[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
 COUNTS	supplementary_functions.h	/^	int COUNTS[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
+CPP_dqrls	AbstractMatrix_R.cpp	/^	void CPP_dqrls($/;"	f
+CPP_dqrls	DAlib/AbstractMatrix_R.cpp	/^	void CPP_dqrls($/;"	f
+DB_CREATE	FileVector.h	26;"	d
+DB_CREATE	fvlib/FileVector.h	26;"	d
+DB_EXCL	FileVector.h	27;"	d
+DB_EXCL	fvlib/FileVector.h	27;"	d
+DB_RDONLY	FileVector.h	28;"	d
+DB_RDONLY	fvlib/FileVector.h	28;"	d
+DEBUG_LEVEL	Logger.h	17;"	d
+DEBUG_LEVEL	fvlib/Logger.h	17;"	d
+DOUBLE	const.h	13;"	d
+DOUBLE	fvlib/const.h	13;"	d
+ERROR_LEVEL	Logger.h	18;"	d
+ERROR_LEVEL	fvlib/Logger.h	18;"	d
+ErrorExit	Logger.h	/^class ErrorExit {};$/;"	c
+ErrorExit	fvlib/Logger.h	/^class ErrorExit {};$/;"	c
+FILEVECTOR_DATA_FILE_SUFFIX	FileVector.h	/^const string FILEVECTOR_DATA_FILE_SUFFIX = ".fvd";$/;"	v
+FILEVECTOR_DATA_FILE_SUFFIX	fvlib/FileVector.h	/^const string FILEVECTOR_DATA_FILE_SUFFIX = ".fvd";$/;"	v
+FILEVECTOR_INDEX_FILE_SUFFIX	FileVector.h	/^const string FILEVECTOR_INDEX_FILE_SUFFIX = ".fvi";$/;"	v
+FILEVECTOR_INDEX_FILE_SUFFIX	fvlib/FileVector.h	/^const string FILEVECTOR_INDEX_FILE_SUFFIX = ".fvi";$/;"	v
+FLOAT	const.h	12;"	d
+FLOAT	fvlib/const.h	12;"	d
+FV_AUTHORS	frversion.h	6;"	d
+FV_AUTHORS	fvlib/frversion.h	6;"	d
+FV_RELEASEDATE	frversion.h	5;"	d
+FV_RELEASEDATE	fvlib/frversion.h	5;"	d
+FV_VERSION	frversion.h	4;"	d
+FV_VERSION	fvlib/frversion.h	4;"	d
+FileHeader	frutil.h	/^    FileHeader () {$/;"	f	class:FileHeader
+FileHeader	frutil.h	/^class FileHeader$/;"	c
+FileHeader	fvlib/frutil.h	/^    FileHeader () {$/;"	f	class:FileHeader
+FileHeader	fvlib/frutil.h	/^class FileHeader$/;"	c
+FileVector	FileVector.h	/^	FileVector(char *iFilename, unsigned long cachesizeMb) : filename(string(iFilename)){$/;"	f	class:FileVector
+FileVector	FileVector.h	/^	FileVector(char *iFilename, unsigned long cachesizeMb, bool iReadOnly) : filename(string(iFilename)), readOnly(iReadOnly) {$/;"	f	class:FileVector
+FileVector	FileVector.h	/^	FileVector(string iFilename, unsigned long cachesizeMb) : filename (iFilename) {$/;"	f	class:FileVector
+FileVector	FileVector.h	/^	FileVector(string iFilename, unsigned long cachesizeMb, bool iReadOnly) : filename(iFilename), readOnly(iReadOnly) {$/;"	f	class:FileVector
+FileVector	FileVector.h	/^class FileVector: public AbstractMatrix {$/;"	c
+FileVector	fvlib/FileVector.h	/^	FileVector(char *iFilename, unsigned long cachesizeMb) : filename(string(iFilename)){$/;"	f	class:FileVector
+FileVector	fvlib/FileVector.h	/^	FileVector(char *iFilename, unsigned long cachesizeMb, bool iReadOnly) : filename(string(iFilename)), readOnly(iReadOnly) {$/;"	f	class:FileVector
+FileVector	fvlib/FileVector.h	/^	FileVector(string iFilename, unsigned long cachesizeMb) : filename (iFilename) {$/;"	f	class:FileVector
+FileVector	fvlib/FileVector.h	/^	FileVector(string iFilename, unsigned long cachesizeMb, bool iReadOnly) : filename(iFilename), readOnly(iReadOnly) {$/;"	f	class:FileVector
+FileVector	fvlib/FileVector.h	/^class FileVector: public AbstractMatrix {$/;"	c
+FilteredAndAbstractRFinalizer	DAlib/FilteredMatrix_R.cpp	/^    static void FilteredAndAbstractRFinalizer(SEXP x) {$/;"	f	file:
+FilteredAndAbstractRFinalizer	FilteredMatrix_R.cpp	/^    static void FilteredAndAbstractRFinalizer(SEXP x) {$/;"	f	file:
+FilteredMatrix	FilteredMatrix.h	/^    FilteredMatrix(AbstractMatrix &matrix) : nestedMatrix(&matrix) {$/;"	f	class:FilteredMatrix
+FilteredMatrix	FilteredMatrix.h	/^class FilteredMatrix : public AbstractMatrix {$/;"	c
+FilteredMatrix	fvlib/FilteredMatrix.h	/^    FilteredMatrix(AbstractMatrix &matrix) : nestedMatrix(&matrix) {$/;"	f	class:FilteredMatrix
+FilteredMatrix	fvlib/FilteredMatrix.h	/^class FilteredMatrix : public AbstractMatrix {$/;"	c
+FilteredMatrixRFinalizer	DAlib/FilteredMatrix_R.cpp	/^    static void FilteredMatrixRFinalizer(SEXP x) {$/;"	f	file:
+FilteredMatrixRFinalizer	FilteredMatrix_R.cpp	/^    static void FilteredMatrixRFinalizer(SEXP x) {$/;"	f	file:
+FixedChar	frutil.h	/^    FixedChar(){$/;"	f	class:FixedChar
+FixedChar	frutil.h	/^    FixedChar(string s){$/;"	f	class:FixedChar
+FixedChar	frutil.h	/^class FixedChar$/;"	c
+FixedChar	fvlib/frutil.h	/^    FixedChar(){$/;"	f	class:FixedChar
+FixedChar	fvlib/frutil.h	/^    FixedChar(string s){$/;"	f	class:FixedChar
+FixedChar	fvlib/frutil.h	/^class FixedChar$/;"	c
+GENO	VARlib/supplementary_functions.h	/^	std::string GENO[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
 GENO	supplementary_functions.h	/^	std::string GENO[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
+GENO_TYPES_NUM	VARlib/supplementary_functions.h	39;"	d
+GENO_TYPES_NUM	VARlib/var_meta_gwaa_C.cpp	79;"	d	file:
 GENO_TYPES_NUM	supplementary_functions.h	39;"	d
 GENO_TYPES_NUM	var_meta_gwaa_C.cpp	79;"	d	file:
+INT	const.h	11;"	d
+INT	fvlib/const.h	11;"	d
+INT_NAN	CastUtils.cpp	/^int INT_NAN;$/;"	v
+INT_NAN	fvlib/CastUtils.cpp	/^int INT_NAN;$/;"	v
+Logger	Logger.h	/^    Logger(int iErrorLevel) : errorLevel(iErrorLevel), enabled(true) {}$/;"	f	class:Logger
+Logger	Logger.h	/^    Logger(int iErrorLevel, bool iEnabled) : errorLevel(iErrorLevel), enabled(iEnabled) {}$/;"	f	class:Logger
+Logger	Logger.h	/^class Logger {$/;"	c
+Logger	fvlib/Logger.h	/^    Logger(int iErrorLevel) : errorLevel(iErrorLevel), enabled(true) {}$/;"	f	class:Logger
+Logger	fvlib/Logger.h	/^    Logger(int iErrorLevel, bool iEnabled) : errorLevel(iErrorLevel), enabled(iEnabled) {}$/;"	f	class:Logger
+Logger	fvlib/Logger.h	/^class Logger {$/;"	c
+MEAN	VARlib/supplementary_functions.h	/^	VARIABLE_TYPE MEAN[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
 MEAN	supplementary_functions.h	/^	VARIABLE_TYPE MEAN[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
+MESSAGE_LEVEL	Logger.h	16;"	d
+MESSAGE_LEVEL	fvlib/Logger.h	16;"	d
+MethodConvStruct	ITERlib/iterator_functions.h	/^	struct MethodConvStruct {$/;"	s
+MethodConvStruct	iterator_functions.h	/^	struct MethodConvStruct {$/;"	s
+NAMELENGTH	const.h	18;"	d
+NAMELENGTH	fvlib/const.h	18;"	d
+NA_value	VARlib/constants.h	/^const VARIABLE_TYPE NA_value = -999.999; \/\/ which numeric value is ised as NA$/;"	v
 NA_value	constants.h	/^const VARIABLE_TYPE NA_value = -999.999; \/\/ which numeric value is ised as NA$/;"	v
+NA_value_int	VARlib/constants.h	/^const int NA_value_int = -999; \/\/ which numeric value is ised as NA$/;"	v
 NA_value_int	constants.h	/^const int NA_value_int = -999; \/\/ which numeric value is ised as NA$/;"	v
+PART_SIZE	frutil.cpp	162;"	d	file:
+PART_SIZE	fvlib/frutil.cpp	162;"	d	file:
+REPORT_EVERY	convert_util.cpp	15;"	d	file:
+REPORT_EVERY	fvlib/convert_util.cpp	15;"	d	file:
+RESERVEDSPACE	const.h	5;"	d
+RESERVEDSPACE	fvlib/const.h	5;"	d
+RealHandlerWrapper	RealHandlerWrapper.h	/^    RealHandlerWrapper(): useCount(0) {}$/;"	f	class:RealHandlerWrapper
+RealHandlerWrapper	RealHandlerWrapper.h	/^class RealHandlerWrapper {$/;"	c
+RealHandlerWrapper	fvlib/RealHandlerWrapper.h	/^    RealHandlerWrapper(): useCount(0) {}$/;"	f	class:RealHandlerWrapper
+RealHandlerWrapper	fvlib/RealHandlerWrapper.h	/^class RealHandlerWrapper {$/;"	c
+ReusableFileHandle	ReusableFileHandle.h	/^    ReusableFileHandle() : isOk(false),curPos(0),$/;"	f	class:ReusableFileHandle
+ReusableFileHandle	ReusableFileHandle.h	/^    ReusableFileHandle(RealHandlerWrapper *iRealHandlerWrapper, bool iIsOk,$/;"	f	class:ReusableFileHandle
+ReusableFileHandle	ReusableFileHandle.h	/^    ReusableFileHandle(const ReusableFileHandle &rfh) :$/;"	f	class:ReusableFileHandle
+ReusableFileHandle	ReusableFileHandle.h	/^class ReusableFileHandle {$/;"	c
+ReusableFileHandle	fvlib/ReusableFileHandle.h	/^    ReusableFileHandle() : isOk(false),curPos(0),$/;"	f	class:ReusableFileHandle
+ReusableFileHandle	fvlib/ReusableFileHandle.h	/^    ReusableFileHandle(RealHandlerWrapper *iRealHandlerWrapper, bool iIsOk,$/;"	f	class:ReusableFileHandle
+ReusableFileHandle	fvlib/ReusableFileHandle.h	/^    ReusableFileHandle(const ReusableFileHandle &rfh) :$/;"	f	class:ReusableFileHandle
+ReusableFileHandle	fvlib/ReusableFileHandle.h	/^class ReusableFileHandle {$/;"	c
+SD	VARlib/supplementary_functions.h	/^	VARIABLE_TYPE SD[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
 SD	supplementary_functions.h	/^	VARIABLE_TYPE SD[GENO_TYPES_NUM];$/;"	m	struct:snp_var_data
-SMV_BARTLETT_TEST_H	var_homogeneity_tests.h	2;"	d
+SHORT_INT	const.h	9;"	d
+SHORT_INT	fvlib/const.h	9;"	d
+SHORT_INT_NAN	CastUtils.cpp	/^short int SHORT_INT_NAN;$/;"	v
+SHORT_INT_NAN	fvlib/CastUtils.cpp	/^short int SHORT_INT_NAN;$/;"	v
+SIGNED_CHAR	const.h	14;"	d
+SIGNED_CHAR	fvlib/const.h	14;"	d
+SMV_CONSTANTS_H	VARlib/constants.h	3;"	d
 SMV_CONSTANTS_H	constants.h	3;"	d
+SMV_DOMETA_C_H	VARlib/inverse_variance_metaanalysis.h	19;"	d
 SMV_DOMETA_C_H	inverse_variance_metaanalysis.h	19;"	d
+SMV_GTPS_CONTAINER_H	VARlib/gtps_container.h	19;"	d
 SMV_GTPS_CONTAINER_H	gtps_container.h	19;"	d
+SMV_SUPPLEMENTARY_FUNCTIONS_H	VARlib/supplementary_functions.h	19;"	d
 SMV_SUPPLEMENTARY_FUNCTIONS_H	supplementary_functions.h	19;"	d
+SMV_VAR_HOMOGENEITY_TESTS_H	VARlib/var_homogeneity_tests.h	2;"	d
+SMV_VAR_HOMOGENEITY_TESTS_H	var_homogeneity_tests.h	2;"	d
+Snp_store_type	VARlib/supplementary_functions.h	/^typedef std::map<std::string, snp_var_data*> Snp_store_type; \/\/use std::string as key because for some reason it doesn't want to work with const char*$/;"	t
 Snp_store_type	supplementary_functions.h	/^typedef std::map<std::string, snp_var_data*> Snp_store_type; \/\/use std::string as key because for some reason it doesn't want to work with const char*$/;"	t
+Transposer	Transposer.h	/^Transposer(){ square_size =10000;};$/;"	f	class:Transposer
+Transposer	Transposer.h	/^Transposer(int opt_square_size){ square_size=opt_square_size;};$/;"	f	class:Transposer
+Transposer	Transposer.h	/^class Transposer$/;"	c
+Transposer	fvlib/Transposer.h	/^Transposer(){ square_size =10000;};$/;"	f	class:Transposer
+Transposer	fvlib/Transposer.h	/^Transposer(int opt_square_size){ square_size=opt_square_size;};$/;"	f	class:Transposer
+Transposer	fvlib/Transposer.h	/^class Transposer$/;"	c
+UNSIGNED_CHAR	const.h	15;"	d
+UNSIGNED_CHAR	fvlib/const.h	15;"	d
+UNSIGNED_CHAR_NAN	CastUtils.cpp	/^unsigned char UNSIGNED_CHAR_NAN;$/;"	v
+UNSIGNED_CHAR_NAN	fvlib/CastUtils.cpp	/^unsigned char UNSIGNED_CHAR_NAN;$/;"	v
+UNSIGNED_INT	const.h	10;"	d
+UNSIGNED_INT	fvlib/const.h	10;"	d
+UNSIGNED_INT_NAN	CastUtils.cpp	/^unsigned int UNSIGNED_INT_NAN;$/;"	v
+UNSIGNED_INT_NAN	fvlib/CastUtils.cpp	/^unsigned int UNSIGNED_INT_NAN;$/;"	v
+UNSIGNED_SHORT_INT	const.h	8;"	d
+UNSIGNED_SHORT_INT	fvlib/const.h	8;"	d
+UNSIGNED_SHORT_INT_NAN	CastUtils.cpp	/^unsigned short int UNSIGNED_SHORT_INT_NAN;$/;"	v
+UNSIGNED_SHORT_INT_NAN	fvlib/CastUtils.cpp	/^unsigned short int UNSIGNED_SHORT_INT_NAN;$/;"	v
+VARIABLE_TYPE	VARlib/supplementary_functions.h	38;"	d
+VARIABLE_TYPE	VARlib/var_meta_gwaa_C.cpp	78;"	d	file:
 VARIABLE_TYPE	supplementary_functions.h	38;"	d
 VARIABLE_TYPE	var_meta_gwaa_C.cpp	78;"	d	file:
+WRITE_SPEED_PROPORTION	AbstractMatrix.h	12;"	d
+WRITE_SPEED_PROPORTION	fvlib/AbstractMatrix.h	12;"	d
+Z	VARlib/supplementary_functions.h	/^	double Z; \/\/homogeneity test$/;"	m	struct:snp_var_data
 Z	supplementary_functions.h	/^	double Z; \/\/homogeneity test$/;"	m	struct:snp_var_data
+Z_2df	VARlib/supplementary_functions.h	/^	double Z_2df; \/\/homogeneity test 2df only$/;"	m	struct:snp_var_data
 Z_2df	supplementary_functions.h	/^	double Z_2df; \/\/homogeneity test 2df only$/;"	m	struct:snp_var_data
+_	VARlib/inverse_variance_metaanalysis.cpp	30;"	d	file:
+_	VARlib/inverse_variance_metaanalysis.cpp	33;"	d	file:
+_	VARlib/var_homogeneity_test_C.cpp	34;"	d	file:
+_	VARlib/var_homogeneity_test_C.cpp	37;"	d	file:
+_	VARlib/var_meta_gwaa_C.cpp	71;"	d	file:
+_	VARlib/var_meta_gwaa_C.cpp	74;"	d	file:
 _	inverse_variance_metaanalysis.cpp	30;"	d	file:
 _	inverse_variance_metaanalysis.cpp	33;"	d	file:
 _	var_homogeneity_test_C.cpp	34;"	d	file:
 _	var_homogeneity_test_C.cpp	37;"	d	file:
 _	var_meta_gwaa_C.cpp	71;"	d	file:
 _	var_meta_gwaa_C.cpp	74;"	d	file:
+__AbstractMatrix__	AbstractMatrix.h	2;"	d
+__AbstractMatrix__	fvlib/AbstractMatrix.h	2;"	d
+__CONST_H__	const.h	2;"	d
+__CONST_H__	fvlib/const.h	2;"	d
+__CONVERT_UTIL__	convert_util.h	2;"	d
+__CONVERT_UTIL__	fvlib/convert_util.h	2;"	d
+__CastUtils__	CastUtils.h	2;"	d
+__CastUtils__	fvlib/CastUtils.h	2;"	d
+__DAUTIL_H__	DAlib/dautil.h	2;"	d
+__DAUTIL_H__	dautil.h	2;"	d
+__FRUTIL__	frutil.h	2;"	d
+__FRUTIL__	fvlib/frutil.h	2;"	d
+__FRVECTOR__	FileVector.h	2;"	d
+__FRVECTOR__	fvlib/FileVector.h	2;"	d
+__FRVERSION__	frversion.h	2;"	d
+__FRVERSION__	fvlib/frversion.h	2;"	d
+__FilteredMatrix__	FilteredMatrix.h	2;"	d
+__FilteredMatrix__	fvlib/FilteredMatrix.h	2;"	d
+__ITERATOR_FUNCTIONS_H__	ITERlib/iterator_functions.h	2;"	d
+__ITERATOR_FUNCTIONS_H__	iterator_functions.h	2;"	d
+__LOGGER__	Logger.h	2;"	d
+__LOGGER__	fvlib/Logger.h	2;"	d
+__RSTAFF_H__	DAlib/Rstaff.h	2;"	d
+__RSTAFF_H__	Rstaff.h	2;"	d
+__RealHandlerWrapper__	RealHandlerWrapper.h	2;"	d
+__RealHandlerWrapper__	fvlib/RealHandlerWrapper.h	2;"	d
+__ReusableFileHandle__	ReusableFileHandle.h	2;"	d
+__ReusableFileHandle__	fvlib/ReusableFileHandle.h	2;"	d
+___TRANSPOSE___	Transposer.h	2;"	d
+___TRANSPOSE___	fvlib/Transposer.h	2;"	d
+addVariable	FileVector.cpp	/^void FileVector::addVariable(void *invec, string varName) {$/;"	f	class:FileVector
+addVariable	FilteredMatrix.cpp	/^void FilteredMatrix::addVariable(void * invec, string varname) {$/;"	f	class:FilteredMatrix
+addVariable	fvlib/FileVector.cpp	/^void FileVector::addVariable(void *invec, string varName) {$/;"	f	class:FileVector
+addVariable	fvlib/FilteredMatrix.cpp	/^void FilteredMatrix::addVariable(void * invec, string varname) {$/;"	f	class:FilteredMatrix
+addVariableAs	AbstractMatrix.h	/^    void addVariableAs(DT * outvec, string varname)$/;"	f	class:AbstractMatrix
+addVariableAs	fvlib/AbstractMatrix.h	/^    void addVariableAs(DT * outvec, string varname)$/;"	f	class:AbstractMatrix
+all	Logger.cpp	6;"	d	file:
+all	fvlib/Logger.cpp	6;"	d	file:
+analysis_type_enum	VARlib/supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	g
 analysis_type_enum	supplementary_functions.h	/^enum analysis_type_enum {AAvsABvsBB, AAvsABandBB, ABvsAAandBB, BBvsAAandAB};$/;"	g
-bartlett_test	var_homogeneity_tests.cpp	/^double bartlett_test(snp_var_data * snp, bool all_genogroup_only)$/;"	f
-bartlett_test	var_homogeneity_tests.cpp	/^double bartlett_test(std::list<my_small_vector> * samples, bool all_genogroup_only)$/;"	f
-break_trait_up_into_groups	supplementary_functions.cpp	/^void break_trait_up_into_groups(std::list<my_small_vector> *trait_groups, int* snp, double *trait, unsigned* nids, char* analys_type_, int * is_trait_na)$/;"	f
+assignDoubleMatrix	AbstractMatrix_R.cpp	/^	SEXP assignDoubleMatrix(SEXP ptr, SEXP obsIndexes, SEXP varIndexes, SEXP values, SEXP direction){$/;"	f
+assignDoubleMatrix	DAlib/AbstractMatrix_R.cpp	/^	SEXP assignDoubleMatrix(SEXP ptr, SEXP obsIndexes, SEXP varIndexes, SEXP values, SEXP direction){$/;"	f
+bartlett	VARlib/supplementary_functions.h	/^enum testname_enum {bartlett, levene, likelihood, kolmogorov_smirnov};$/;"	e	enum:testname_enum
+bartlett	supplementary_functions.h	/^enum testname_enum {bartlett, levene, likelihood, kolmogorov_smirnov};$/;"	e	enum:testname_enum
+bartlett_test	VARlib/var_homogeneity_tests.cpp	/^chisq_df bartlett_test(snp_var_data * snp)$/;"	f
+bartlett_test	VARlib/var_homogeneity_tests.cpp	/^chisq_df bartlett_test(std::list<my_small_vector> * samples)$/;"	f
+bartlett_test	var_homogeneity_tests.cpp	/^chisq_df bartlett_test(snp_var_data * snp)$/;"	f
+bartlett_test	var_homogeneity_tests.cpp	/^chisq_df bartlett_test(std::list<my_small_vector> * samples)$/;"	f
+bitsPerRecord	frutil.h	/^	unsigned int bitsPerRecord;$/;"	m	class:FileHeader
+bitsPerRecord	fvlib/frutil.h	/^	unsigned int bitsPerRecord;$/;"	m	class:FileHeader
+blockWriteOrRead	RealHandlerWrapper.cpp	/^void RealHandlerWrapper::blockWriteOrRead(unsigned long iLength, char* data, bool writeAction) {$/;"	f	class:RealHandlerWrapper
+blockWriteOrRead	ReusableFileHandle.cpp	/^void ReusableFileHandle::blockWriteOrRead(unsigned long length, char* data, bool writeAction){$/;"	f	class:ReusableFileHandle
+blockWriteOrRead	frutil.cpp	/^void blockWriteOrRead(fstream& file, unsigned long length, char* data, bool writeAction){$/;"	f
+blockWriteOrRead	fvlib/RealHandlerWrapper.cpp	/^void RealHandlerWrapper::blockWriteOrRead(unsigned long iLength, char* data, bool writeAction) {$/;"	f	class:RealHandlerWrapper
+blockWriteOrRead	fvlib/ReusableFileHandle.cpp	/^void ReusableFileHandle::blockWriteOrRead(unsigned long length, char* data, bool writeAction){$/;"	f	class:ReusableFileHandle
+blockWriteOrRead	fvlib/frutil.cpp	/^void blockWriteOrRead(fstream& file, unsigned long length, char* data, bool writeAction){$/;"	f
+break_trait_up_into_groups	VARlib/supplementary_functions.cpp	/^void break_trait_up_into_groups(std::list<my_small_vector> *trait_groups, int* snp, double *trait, unsigned* nids, analysis_type_enum analys_type, int * is_trait_na)$/;"	f
+break_trait_up_into_groups	supplementary_functions.cpp	/^void break_trait_up_into_groups(std::list<my_small_vector> *trait_groups, int* snp, double *trait, unsigned* nids, analysis_type_enum analys_type, int * is_trait_na)$/;"	f
+bufToString	CastUtils.cpp	/^string bufToString(short int dataType, char *data, string nanString){$/;"	f
+bufToString	fvlib/CastUtils.cpp	/^string bufToString(short int dataType, char *data, string nanString){$/;"	f
+bytesPerRecord	frutil.h	/^	unsigned int bytesPerRecord;$/;"	m	class:FileHeader
+bytesPerRecord	fvlib/frutil.h	/^	unsigned int bytesPerRecord;$/;"	m	class:FileHeader
+cacheAllNames	FileVector.cpp	/^void FileVector::cacheAllNames(bool doCache) {$/;"	f	class:FileVector
+cacheAllNames	FilteredMatrix.cpp	/^void FilteredMatrix::cacheAllNames(bool doCache) {$/;"	f	class:FilteredMatrix
[TRUNCATED]

To get the complete diff run:
    svnlook diff /svnroot/genabel -r 625


More information about the Genabel-commits mailing list