+ changed interface array_function to array_class
authorfabio <fabio@e1793c9e-67f9-0310-80fc-b846ff1f7b36>
Thu, 6 Dec 2007 12:04:46 +0000 (12:04 +0000)
committerfabio <fabio@e1793c9e-67f9-0310-80fc-b846ff1f7b36>
Thu, 6 Dec 2007 12:04:46 +0000 (12:04 +0000)
+ removed bug in alignmentscores

git-svn-id: http://svn.tuebingen.mpg.de/ag-raetsch/projects/QPalma@6935 e1793c9e-67f9-0310-80fc-b846ff1f7b36

QPalmaDP/QPalmaDP.i
QPalmaDP/qpalma_dp.cpp

index b0e8647..73b4054 100644 (file)
 %include "penalty_info.h"
 %include "qpalma_dp.h"
 
+%array_class(int, intArray) ;
+%array_class(double, doubleArray) ;
+/*
 %array_functions(int, intArray) ;
 %array_functions(double, doubleArray) ;
+*/
 %array_class(Pre_score, Pre_scoreArray) ;
 
 %pythoncode
 %{
 
 def createDoubleArrayFromList(list):
-   array = new_doubleArray(len(list))
+   #array = new_doubleArray(len(list))
+   array = doubleArray(len(list))
    for i in range(len(list)):
-      doubleArray_setitem(array, i, list[i])
+   #   doubleArray_setitem(array, i, list[i])
+      array[i] = list[i]
    return array
 
 def createIntArrayFromList(list):
-   array = new_intArray(len(list))
+   #array = new_intArray(len(list))
+   array = intArray(len(list))
    for i in range(len(list)):
-      intArray_setitem(array, i, list[i])
+      #intArray_setitem(array, i, list[i])
+      array[i] = list[i]
    return array
 
 def createListFromIntArray(array, array_len):
@@ -48,4 +56,3 @@ def createListFromDoubleArray(array, array_len):
    return list
 
 %} 
-
index 42ede4e..cb6cb8c 100644 (file)
@@ -113,16 +113,23 @@ void Alignment::myalign(int nr_paths_p, char* dna, int dna_len_p, char* est,
   /***************************************************************************/
   int result_length; //Eine Variable fuer alle Matrizen
 
+  printf("before init of splice_align and rest...\n");
+
   splice_align = new int[(dna_len-1)*nr_paths];
   est_align = new int[(est_len-1)*nr_paths];
   mmatrix_param = new int[(mlen*mlen)*nr_paths];
-  alignmentscores[nr_paths]; //alignment score for each path/matrix
+  alignmentscores = new double[nr_paths]; //alignment score for each path/matrix
+
+  printf("Lengths are %d %d %d...\n",dna_len,est_len,mlen);
+  printf("before memset...\n");
 
   memset((char*)splice_align, -1, (dna_len-1)*nr_paths*sizeof(int)); // fills splice_align with zeros
   memset((char*)est_align, -1, (est_len-1)*nr_paths*sizeof(int)); // fills est_align with zeros
   memset((char*)mmatrix_param, 0, mlen*mlen*nr_paths*sizeof(int)); //fills mmatrix_param with zeros
   memset(alignmentscores, -1, nr_paths*sizeof(double)); //fills alignmentscores with zeros
   
+  printf("after memset...\n");
+
   for (int z=0; z<nr_paths; z++) {      
     result_length = 0 ;
     
@@ -174,16 +181,6 @@ void Alignment::myalign(int nr_paths_p, char* dna, int dna_len_p, char* est,
     
   } //end of z
 
-  printf("Store return arguments...\n");
-
-   
-  // spliceAlign
-  // estAlign
-  // weightmatch
-  // alignmentScore
-  // dnaest
-
-
   printf("Leaving myalign...\n");
 }