4c4,7
< #include "list.h"
---
> 
> #include "populate.h"
> 
> //#include "list.h"
6,8c9,11
< #include "func.h"
< #include "init.h"
< #include "util.h"
---
> //#include "func.h"
> //#include "init.h"
> //#include "util.h"
14c17
< 	CLASS	*class;
---
> 	TIMBER_CLASS	*timber_class;
84c87
< 			class = (CLASS *)list_next(au->classlist);
---
> 			timber_class = (TIMBER_CLASS *)list_next(au->classlist);
90c93
< 			while (class != NULL)
---
> 			while (timber_class != NULL)
95c98
<     			    printf("\ntimber_class class_type: %d", class->class_type);
---
>     			    printf("\ntimber_class class_type: %d", timber_class->class_type);
97c100
< 				if (class->class_type!=INACTIVE) {
---
> 				if (timber_class->class_type!=INACTIVE) {
99,104c102,107
< 					zone0->area += class->area;
< 					zone->area += class->area;
< 					/* only certain class types contribute for cover */
< 					if ((class->class_type==OPERABLE)||
< 					    (class->class_type==INOPERABLE)||
< 					    (class->class_type==DEFERRED)) {
---
> 					zone0->area += timber_class->area;
> 					zone->area += timber_class->area;
> 					/* only certain timber_class types contribute for cover */
> 					if ((timber_class->class_type==OPERABLE)||
> 					    (timber_class->class_type==INOPERABLE)||
> 					    (timber_class->class_type==DEFERRED)) {
108c111
< 							axs->BaseArea += class->area;
---
> 							axs->BaseArea += timber_class->area;
111c114
< 								for ( x=class->age-class->width+1; x<=class->age; ++x ) {
---
> 								for ( x=timber_class->age-timber_class->width+1; x<=timber_class->age; ++x ) {
113c116
< 									axs->AgeArea[y] += (class->area/class->width);
---
> 									axs->AgeArea[y] += (timber_class->area/timber_class->width);
119,120c122,123
< 					class->floatgrouplist = (LIST_PTR *)list_reset(class->floatgrouplist);
< 					group = (GROUP *)list_next(class->floatgrouplist);
---
> 					timber_class->floatgrouplist = (LIST_PTR *)list_reset(timber_class->floatgrouplist);
> 					group = (GROUP *)list_next(timber_class->floatgrouplist);
122,126c125,129
< 						group->area += class->area;
< 						/* only certain class types contribute for cover */
< 						if ((class->class_type==OPERABLE)||
< 						    (class->class_type==INOPERABLE)||
< 						    (class->class_type==DEFERRED)) {
---
> 						group->area += timber_class->area;
> 						/* only certain timber_class types contribute for cover */
> 						if ((timber_class->class_type==OPERABLE)||
> 						    (timber_class->class_type==INOPERABLE)||
> 						    (timber_class->class_type==DEFERRED)) {
130,132c133,135
< 								axs->BaseArea += class->area;
<                                 /*printf("\nparent_zone->id (populate_areas): %d", class->parent_zone->id);
<                                 printf("\nparent_au->id (populate_areas): %d", class->parent_au->id);
---
> 								axs->BaseArea += timber_class->area;
>                                 /*printf("\nparent_zone->id (populate_areas): %d", timber_class->parent_zone->id);
>                                 printf("\nparent_au->id (populate_areas): %d", timber_class->parent_au->id);
137c140
< 									for ( x=class->age-class->width+1; x<=class->age; ++x ) {
---
> 									for ( x=timber_class->age-timber_class->width+1; x<=timber_class->age; ++x ) {
139c142
< 										axs->AgeArea[y] += (class->area/class->width);
---
> 										axs->AgeArea[y] += (timber_class->area/timber_class->width);
145c148
< 						group = (GROUP *)list_next(class->floatgrouplist);
---
> 						group = (GROUP *)list_next(timber_class->floatgrouplist);
147,148c150,151
< 					class->staticgrouplist = (LIST_PTR *)list_reset(class->staticgrouplist);
< 					group = (GROUP *)list_next(class->staticgrouplist);
---
> 					timber_class->staticgrouplist = (LIST_PTR *)list_reset(timber_class->staticgrouplist);
> 					group = (GROUP *)list_next(timber_class->staticgrouplist);
150,154c153,157
< 						group->area += class->area;
< 						/* only certain class types contribute for cover */
< 						if ((class->class_type==OPERABLE)||
< 						    (class->class_type==INOPERABLE)||
< 						    (class->class_type==DEFERRED)) {
---
> 						group->area += timber_class->area;
> 						/* only certain timber_class types contribute for cover */
> 						if ((timber_class->class_type==OPERABLE)||
> 						    (timber_class->class_type==INOPERABLE)||
> 						    (timber_class->class_type==DEFERRED)) {
158c161
< 								axs->BaseArea += class->area;
---
> 								axs->BaseArea += timber_class->area;
161c164
< 									for ( x=class->age-class->width+1; x<=class->age; ++x ) {
---
> 									for ( x=timber_class->age-timber_class->width+1; x<=timber_class->age; ++x ) {
163c166
< 										axs->AgeArea[y] += (class->area/class->width);
---
> 										axs->AgeArea[y] += (timber_class->area/timber_class->width);
169c172
< 						group = (GROUP *)list_next(class->staticgrouplist);
---
> 						group = (GROUP *)list_next(timber_class->staticgrouplist);
172c175
< 				class = (CLASS *)list_next(au->classlist);
---
> 				timber_class = (TIMBER_CLASS *)list_next(au->classlist);
180,181c183,184
< void
< PopulateClassGroupLists(CLASS *class, int period, int when) {
---
> // extern inlined
> void PopulateClassGroupLists(TIMBER_CLASS *timber_class, int period, int when) {
184,185c187,188
< 	class->parent_au->EligibleGroupList = (LIST_PTR *)list_reset(class->parent_au->EligibleGroupList);
< 	group = (GROUP *)list_next(class->parent_au->EligibleGroupList);
---
> 	timber_class->parent_au->EligibleGroupList = (LIST_PTR *)list_reset(timber_class->parent_au->EligibleGroupList);
> 	group = (GROUP *)list_next(timber_class->parent_au->EligibleGroupList);
187c190
< 		if (func_group_membership(group, period, when, class->parent_zone->label, class->parent_au->label, class->parent_block->label, class->age, class->width, class->class_type)==TRUE) {
---
> 		if (func_group_membership(group, period, when, timber_class->parent_zone->label, timber_class->parent_au->label, timber_class->parent_block->label, timber_class->age, timber_class->width, timber_class->class_type)==TRUE) {
189c192
< 				testgroup = (GROUP *)list_find(class->staticgrouplist, group->id);
---
> 				testgroup = (GROUP *)list_find(timber_class->staticgrouplist, group->id);
191c194
< 					class->staticgrouplist = (LIST_PTR *)list_insert(class->staticgrouplist, group, group->id);
---
> 					timber_class->staticgrouplist = (LIST_PTR *)list_insert(timber_class->staticgrouplist, group, group->id);
194c197
< 				testgroup = (GROUP *)list_find(class->floatgrouplist, group->id);
---
> 				testgroup = (GROUP *)list_find(timber_class->floatgrouplist, group->id);
196c199
< 					class->floatgrouplist = (LIST_PTR *)list_insert(class->floatgrouplist, group, group->id);
---
> 					timber_class->floatgrouplist = (LIST_PTR *)list_insert(timber_class->floatgrouplist, group, group->id);
203c206
< 		group = (GROUP *)list_next(class->parent_au->EligibleGroupList);
---
> 		group = (GROUP *)list_next(timber_class->parent_au->EligibleGroupList);
207,208c210
< void
< populate_groups(int period, int when) {
---
> void populate_groups(int period, int when) {
211c213
< 	CLASS	*class;
---
> 	TIMBER_CLASS	*timber_class;
223,228c225,230
< 			class = (CLASS *)list_next(au->classlist);
< 			while (class != NULL) {
< 				if (class->class_type != INACTIVE) {
< 					class->floatgrouplist = (LIST_PTR *)list_done(class->floatgrouplist);
< 					class->floatgrouplist = NULL;
< 					PopulateClassGroupLists(class, period, when);
---
> 			timber_class = (TIMBER_CLASS *)list_next(au->classlist);
> 			while (timber_class != NULL) {
> 				if (timber_class->class_type != INACTIVE) {
> 					timber_class->floatgrouplist = (LIST_PTR *)list_done(timber_class->floatgrouplist);
> 					timber_class->floatgrouplist = NULL;
> 					PopulateClassGroupLists(timber_class, period, when);
230c232
< 				class = (CLASS *)list_next(au->classlist);
---
> 				timber_class = (TIMBER_CLASS *)list_next(au->classlist);
