00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #pragma once
00018 #include "mNode.h"
00019 #include "Node.h"
00020 namespace Recognition{
00024 class waNode
00025 {
00026 public:
00027 mNode *mn;
00028 Node *n;
00029
00030 float min1;
00031 float min2;
00032
00033 waNode(mNode *mn,Node *n){
00034 this->mn=mn;
00035 this->n=n;
00036 float one,two,three;
00037 mNode *t=mn;
00038 one=t->value;
00039 t=t->b;
00040 two=t->value;
00041 t=t->b;
00042 three=t->value;
00043 if(one==0)
00044 one=three;
00045 else if(two==0)
00046 two=three;
00047 if(one<two){
00048 min1=one;
00049 min2=two;
00050 }else {
00051 min1=two;
00052 min2=one;
00053 }
00054 while(t!=NULL){
00055 if(t->value!=0){
00056 if(t->value < min1){
00057 min2=min1;
00058 min1=t->value;
00059 } else if(t->value <min2){
00060 min2=t->value;
00061 }
00062 }
00063 t=t->b;
00064 }
00065 }
00066
00067 ~waNode(void)
00068 {
00069 }
00070
00071 void update(){
00072 float one,two,three;
00073 mNode *t=mn;
00074 one=t->value;
00075 t=t->b;
00076 two=t->value;
00077 t=t->b;
00078 three=t->value;
00079 if(one==0)
00080 one=three;
00081 else if(two==0)
00082 two=three;
00083 if(one<two){
00084 min1=one;
00085 min2=two;
00086 }else {
00087 min1=two;
00088 min2=one;
00089 }
00090 while(t!=NULL){
00091 if(t->value!=0){
00092 if(t->value < min1){
00093 min2=min1;
00094 min1=t->value;
00095 } else if(t->value <min2){
00096 min2=t->value;
00097 }
00098 }
00099 t=t->b;
00100 }
00101 }
00102
00103
00104 };}