Subversion Repositories public iLand

Rev

Rev 639 | Rev 667 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 639 Rev 664
Line 862... Line 862...
862
/** This function is called if a tree dies.
862
/** This function is called if a tree dies.
863
  @sa ResourceUnit::cleanTreeList(), remove() */
863
  @sa ResourceUnit::cleanTreeList(), remove() */
864
void Tree::die(TreeGrowthData *d)
864
void Tree::die(TreeGrowthData *d)
865
{
865
{
866
    setFlag(Tree::TreeDead, true); // set flag that tree is dead
866
    setFlag(Tree::TreeDead, true); // set flag that tree is dead
-
 
867
    mRU->treeDied();
867
    ResourceUnitSpecies &rus = mRU->resourceUnitSpecies(species());
868
    ResourceUnitSpecies &rus = mRU->resourceUnitSpecies(species());
868
    rus.statisticsDead().add(this, d); // add tree to statistics
869
    rus.statisticsDead().add(this, d); // add tree to statistics
869
    if (ru()->snag())
870
    if (ru()->snag())
870
        ru()->snag()->addMortality(this);
871
        ru()->snag()->addMortality(this);
871
}
872
}
872
873
873
void Tree::remove(double removeFoliage, double removeBranch, double removeStem )
874
void Tree::remove(double removeFoliage, double removeBranch, double removeStem )
874
{
875
{
875
    setFlag(Tree::TreeDead, true); // set flag that tree is dead
876
    setFlag(Tree::TreeDead, true); // set flag that tree is dead
-
 
877
    mRU->treeDied();
876
    ResourceUnitSpecies &rus = mRU->resourceUnitSpecies(species());
878
    ResourceUnitSpecies &rus = mRU->resourceUnitSpecies(species());
877
    rus.statisticsMgmt().add(this, 0);
879
    rus.statisticsMgmt().add(this, 0);
878
    if (ru()->snag())
880
    if (ru()->snag())
879
        ru()->snag()->addHarvest(this, removeStem, removeBranch, removeFoliage);
881
        ru()->snag()->addHarvest(this, removeStem, removeBranch, removeFoliage);
880
}
882
}