computation of ATTR_MAX
authorAleš Křenek <ljocha@ics.muni.cz>
Fri, 30 Nov 2007 15:50:59 +0000 (15:50 +0000)
committerAleš Křenek <ljocha@ics.muni.cz>
Fri, 30 Nov 2007 15:50:59 +0000 (15:50 +0000)
org.glite.lb.client-interface/interface/Event.h.T
org.glite.lb.client-interface/interface/JobStatus.h.T

index 2593a73..a85adb5 100644 (file)
@@ -70,6 +70,7 @@ public:
                $EventAttrNums{$_} = $evno++;
        }
 
+       my $max = 0;
        for (sort {$a cmp $b} getAllFields $event) {
                my $u = $_;
 # $u =~ s/([a-z])([A-Z])/$1_$2/g;
@@ -87,10 +88,12 @@ public:
                gen defined($EventAttrNums{$u}) ?
                        "$c\t\t$u = $EventAttrNums{$u},\n" :
                        "#error \"$u not defined in EventAttrNames\"\n";
+
+               $max = $EventAttrNums{$u} if defined($EventAttrNums{$u}) && $EventAttrNums{$u} > $max;
        }
+       $max++;
+       gen "\t\tATTR_MAX = $max        /**< Limit for checking attribute code validity. */\n";
 @@@}
-               ATTR_MAX /**< Limit for checking attribute code
-                           validity. */
        };
 
 @@@{
index fe26903..aee0a89 100644 (file)
@@ -66,6 +66,7 @@ public:
                $StatusAttrNums{$_} = $stno++;
        }
 
+       my $max = 0;
        selectType $status '_common_';
        for my $u (sort {$a cmp $b} getAllFields $status) {
                selectField $status $u;
@@ -76,9 +77,11 @@ public:
                gen defined($StatusAttrNums{$u}) ? 
                        "\t/** $f->{comment} */\n\t\t$u = $StatusAttrNums{$u},\n" :
                        "#error \"$u not defined in StatusAttrNames\"\n";
+               $max = $StatusAttrNums{$u} if defined($StatusAttrNums{$u}) && $StatusAttrNums{$u} > $max;
        }
+       $max++;
+       gen "\t\tATTR_MAX = $max /**< Limit for range checking. */\n";
 @@@}
-                ATTR_MAX /**< Limit for range checking. */
        };
 
 @@@{