6,8c6,7
< //#include <list>
< //#include <map>
< //#include <fstream>
---
> #include <cassert>
> 
12a12,15
> #include "StandSet.h"
> #include "AxsDefStruct.h"
> #include "ZoneStruct.h"
> #include "GroupStruct.h"
17d19
< // zones and groups have custody of their axsdefs and therefore call serialize on them
18a21
> // zones and groups have custody of their axsdefs and therefore call serialize on them
22,23d24
<     enum { LABEL_SIZE = FssimApp::MAX_LABEL_LENGTH };
< 
25,26c26,27
<     AxsDef(AXSDEF* pAXSDEFStruct = 0, ZONE* pZone = 0, GROUP* pGroup = 0)
<         : m_pStruct(pAXSDEFStruct), m_pZone(pZone), m_pGroup(pGroup)
---
>     AxsDef(AxsDefStruct* pAXSDEFStruct = 0, StandSet* pStandSet = 0)
>         : m_pStruct(pAXSDEFStruct), m_pStandSet(pStandSet)
28,40c29
<         if (0 != m_pZone && 0 == m_pGroup)
<         {
<             m_landUnitType = FssimApp::ZONE_TYPE;
<         }
<         else if(0 != m_pGroup && 0 == m_pZone)
<         {
<             m_landUnitType = FssimApp::GROUP_TYPE;
<         }
<         else if(0 != m_pGroup && 0 != m_pZone)
<         {
<             string message = "Make up your mind: land unit type can't be both zone and group!";
<             throw (message);
<         }
---
>         assert(m_pStandSet != 0);
43c32
<     virtual ~AxsDef(); // destructor
---
>     virtual ~AxsDef() {} // destructor
45,46c34,35
<     void serialize( Serializer& binaryArchive ); //throw (FileException);
<     AXSDEF* getStruct() { return m_pStruct; }
---
>     void serialize( Serializer& binaryArchive );
>     AxsDefStruct* getStruct() { return m_pStruct; }
48,49c37
<     void recreateStruct(/*ZONE* zone, GROUP* group,*/ // passed from member variables
<                             int utype, int start, int end, double percent, int sign, int age);
---
>     void recreateStruct(int start, int end, double percent, int sign, int age);
52c40
<     AXSDEF* m_pStruct;
---
>     AxsDefStruct* m_pStruct;
54,55c42
<     ZONE* m_pZone; // each AxsDef is owned by either a zone
<     GROUP* m_pGroup; // or a group
---
>     StandSet* m_pStandSet; // each AxsDef is owned by either a zone or a group
57,58d43
<     FssimApp::LandUnitType m_landUnitType;
< 
62,69c47
<     // AgeArea is not serialized (defaults to 0 until simulation)
< 
<     //int m_index;
<     //static int m_AxsDefCount;
< 
<     //static map<string, int> m_labelIndex;
<     //typedef map<string, int>::iterator AIndexIterator;
<     //typedef map<string, int>::const_iterator AConstIndexIterator;
---
>     // pAgeArea is not serialized (defaults to 0 until simulation)
