--- trunk/OOPSE/libBASS/Globals.cpp 2003/08/13 19:21:53 693 +++ trunk/OOPSE/libBASS/Globals.cpp 2003/08/20 19:11:51 704 @@ -49,6 +49,8 @@ #define G_ZCONSTIME 28 #define G_NZCONSTRAINTS 29 #define G_ZCONSTOL 30 +#define G_ZCONSFORCEPOLICY 31 +#define G_SEED 32 Globals::Globals(){ @@ -91,6 +93,9 @@ Globals::Globals(){ addHash( "zconsTime", G_ZCONSTIME); addHash( "nZconstraints", G_NZCONSTRAINTS); addHash( "zconsTol", G_ZCONSTOL); + addHash( "zconsForcePolicy", G_ZCONSFORCEPOLICY); + addHash( "seed", G_SEED); + // define some default values @@ -129,6 +134,7 @@ Globals::Globals(){ have_n_zConstraints = 0; have_zConstraints = 0; have_zcons_tol = 0; + have_seed = 0; } @@ -1036,8 +1042,70 @@ int Globals::globalAssign( event* the_event ){ } break; + case G_ZCONSFORCEPOLICY: + switch( the_type ){ + + case STRING: + strcpy(zconsForcePolicy, the_event->evt.asmt.rhs.sval); + for(int i = 0; zconsForcePolicy[i] != '\0'; i++) + { + zconsForcePolicy[i] = toupper(zconsForcePolicy[i]); + } + have_zcons_force_policy = 1; + return 1; + break; + + case DOUBLE: + the_event->err_msg = + strdup( "Global error. zconsForcePolicy is not a double or int.\n" ); + return 0; + break; + + case INT: + the_event->err_msg = + strdup( "Global error. zconsForcePolicy is not a double or int.\n" ); + return 0; + break; + + default: + the_event->err_msg = + strdup( "Global error. zconsForcePolicy unrecognized.\n" ); + return 0; + break; + } + break; // add more token cases here. + case G_SEED: + switch( the_type ){ + + case STRING: + the_event->err_msg = + strdup( "Global error. seed is not a string.\n" ); + return 0; + return 0; + break; + + case DOUBLE: + have_seed = 1; + seed = (int)the_event->evt.asmt.rhs.dval; + return 1; + break; + + case INT: + have_seed = 1; + seed = the_event->evt.asmt.rhs.ival ; + return 1; + break; + + default: + the_event->err_msg = + strdup( "Global error. seed unrecognized.\n" ); + return 0; + break; + } + break; + // add more token cases here. } }