Changeset: 68321602a10e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=68321602a10e
Modified Files:
        monetdb5/extras/crackers/crackers_holistic.c
        monetdb5/extras/crackers/crackers_holistic.h
        monetdb5/extras/crackers/crackers_selecthol_ops.mx
Branch: holindex
Log Message:

Function deleteNode is added.
This function is used when we want to remove a node with negative weight from 
the list.


diffs (80 lines):

diff --git a/monetdb5/extras/crackers/crackers_holistic.c 
b/monetdb5/extras/crackers/crackers_holistic.c
--- a/monetdb5/extras/crackers/crackers_holistic.c
+++ b/monetdb5/extras/crackers/crackers_holistic.c
@@ -130,6 +130,23 @@ changeWeight(FrequencyNode* node,int N,i
 
 }
 
+void
+deleteNode(FrequencyNode* head,int bat_id)
+{
+       FrequencyNode* temp;
+       temp=head;
+       while((temp->next != NULL))
+       {
+               if(temp->next->bid == bat_id)
+               {
+                       temp->next=temp->next->next;    
+                       break;
+               }
+               temp=temp->next;
+       }
+
+}
+
 str 
 CRKinitFrequencyStruct(int *vid,int *bid)
 {
diff --git a/monetdb5/extras/crackers/crackers_holistic.h 
b/monetdb5/extras/crackers/crackers_holistic.h
--- a/monetdb5/extras/crackers/crackers_holistic.h
+++ b/monetdb5/extras/crackers/crackers_holistic.h
@@ -33,6 +33,7 @@ crackers_export void printFrequencyStruc
 crackers_export FrequencyNode* searchBAT(FrequencyNode* head,int bat_id);
 crackers_export double changeWeight(FrequencyNode* node,int N,int L1);
 crackers_export int findMax(FrequencyNode* head);
+crackers_export void deleteNode(FrequencyNode* head,int bat_id);
 
 crackers_export str CRKinitHolistic(int *ret);
 crackers_export str CRKinitFrequencyStruct(int *vid,int *bid);
diff --git a/monetdb5/extras/crackers/crackers_selecthol_ops.mx 
b/monetdb5/extras/crackers/crackers_selecthol_ops.mx
--- a/monetdb5/extras/crackers/crackers_selecthol_ops.mx
+++ b/monetdb5/extras/crackers/crackers_selecthol_ops.mx
@@ -21,7 +21,7 @@ All Rights Reserved.
 
 @c
 /*
- * @a Martin Kersten, Stratos Idreos, Stefan Manegold
+ * @a Martin Kersten, Stratos Idreos, Stefan Manegold, Eleni Petraki
  * @d March 2006 - July 2007
  * @* Select Operators
  *
@@ -307,7 +307,7 @@ createView:
        
        int countBatElements;
        int L1=8192; /*KiloBytes*/
-       int maxWB=0;
+       /*int maxWB=0;*/
 
        /*k and randomoid are used for DD1R*/
        @1 k,temp_h;
@@ -320,7 +320,7 @@ createView:
 
        /*fprintf(stderr,"This is from selcrack_HOL operators\n");*/    
        /*fprintf(stderr,"BBPsize=%d maxWB=%d",BBPsize,maxWB);*/        
-       fprintf(stderr,"maxWB=%d",maxWB);
+       /*fprintf(stderr,"maxWB=%d",maxWB);*/
        if (@2_GT(low,hgh,@3@1))
                throw(MAL, "crackers.crack", "illegal range");
        
@@ -561,8 +561,10 @@ createView:
        countBatElements=BATcount(b);
        /*fprintf(stderr,"BATcount(b)=%d\n",countBatElements);*/
        FN->weight = changeWeight(FN,countBatElements,L1);
+       if(FN->weight <0)
+               deleteNode(FrequencyStructA,FN->bid);
        /*printFrequencyStruct(FrequencyStruct);*/
-       maxWB=findMax(FrequencyStructA);
+       /*maxWB=findMax(FrequencyStructA);*/
        /*fprintf(stderr,"MAXWB=%d\n",maxWB);*/
        @:CreateResult()@
        return MAL_SUCCEED;
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to