本文整理汇总了C#中ISpeciesCohortBoolArray类的典型用法代码示例。如果您正苦于以下问题:C# ISpeciesCohortBoolArray类的具体用法?C# ISpeciesCohortBoolArray怎么用?C# ISpeciesCohortBoolArray使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ISpeciesCohortBoolArray类属于命名空间,在下文中一共展示了ISpeciesCohortBoolArray类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MarkCohortsForDeath
//---------------------------------------------------------------------
#region ISpeciesCohortsDisturbance members
/// <summary>
/// Mark which cohorts for a species are to be cut (harvested).
/// </summary>
public void MarkCohortsForDeath(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isKilled)
{
CohortSelector.Harvest(cohorts, isKilled);
int numKilled = 0;
for (int i = 0; i < isKilled.Count; i++)
{
if (isKilled[i])
{
cohortCounts.IncrementCount(cohorts.Species);
numKilled++;
}
}
if (isDebugEnabled)
{
if (numKilled > 0)
{
string ageList = "";
int i = 0;
foreach (ICohort cohort in cohorts)
{
if (isKilled[i])
ageList += string.Format(" {0}", cohort.Age);
i++;
}
log.DebugFormat(" Cut {0} :{1}", cohorts.Species.Name, ageList);
}
}
}
示例2: OldestOfSelectedSpecies
//---------------------------------------------------------------------
public void OldestOfSelectedSpecies(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
if (cohorts.Species == SelectedSpecies)
// Oldest is first cohort
isDamaged[0] = true;
}
示例3: Harvest
//---------------------------------------------------------------------
/// <summary>
/// Selects which of a species' cohorts are harvested.
/// </summary>
public void Harvest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
SelectCohorts.Method selectionMethod;
if (selectionMethods.TryGetValue(cohorts.Species, out selectionMethod))
selectionMethod(cohorts, isHarvested);
}
示例4: All
//---------------------------------------------------------------------
/// <summary>
/// Selects all of a species' cohorts for harvesting.
/// </summary>
public static void All(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
//loop through all cohorts and mark as harvested
for (int i = 0; i < isHarvested.Count; i++)
isHarvested[i] = true;
}
示例5: AllExceptOldest
//---------------------------------------------------------------------
/// <summary>
/// Selects all of a species' cohorts for harvesting except the oldest.
/// </summary>
public static void AllExceptOldest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
// Oldest is first (so start at i = 1 instead of i = 0)
for (int i = 1; i < isHarvested.Count; i++)
isHarvested[i] = true;
}
示例6: AllExceptYoungest
//---------------------------------------------------------------------
public void AllExceptYoungest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
// Youngest is the last cohort (at index Count - 1)
for (int i = 0; i < (isDamaged.Count - 1); i++)
isDamaged[i] = true;
}
示例7: AllOfSelectedSpecies
//---------------------------------------------------------------------
public void AllOfSelectedSpecies(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
if (cohorts.Species == SelectedSpecies) {
for (int i = 0; i < isDamaged.Count; i++)
isDamaged[i] = true;
}
}
示例8: AllExceptYoungest
//---------------------------------------------------------------------
/// <summary>
/// Selects all of a species' cohorts for harvesting except the
/// youngest.
/// </summary>
public static void AllExceptYoungest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
// Youngest is last.
int youngestIndex = isHarvested.Count - 1;
for (int i = 0; i < youngestIndex; i++)
isHarvested[i] = true;
}
示例9: SelectCohorts
//---------------------------------------------------------------------
/// <summary>
/// Selects which of a species' cohorts are harvested.
/// </summary>
public void SelectCohorts(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
int i = 0;
foreach (ICohort cohort in cohorts) {
AgeRange? notUsed;
if (agesAndRanges.Contains(cohort.Age, out notUsed))
isHarvested[i] = true;
i++;
}
}
示例10: SelectCohorts
//---------------------------------------------------------------------
/// <summary>
/// Selects which of a species' cohorts are harvested.
/// </summary>
public void SelectCohorts(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
int i = 0;
foreach (ICohort cohort in cohorts) {
if (ages.Contains(cohort.Age))
isHarvested[i] = true;
else {
foreach (AgeRange range in ranges) {
if (range.Contains(cohort.Age)) {
isHarvested[i] = true;
break;
}
}
}
i++;
}
}
示例11: Every2ndCohort
//---------------------------------------------------------------------
public void Every2ndCohort(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
int N = 2;
// Every Nth cohort, working from youngest to oldest
int youngestIndex = isDamaged.Count - 1;
for (int i = youngestIndex - (N - 1); i >= 0; i -= N)
isDamaged[i] = true;
}
示例12: SelectCohorts
//---------------------------------------------------------------------
/// <summary>
/// Selects which of a species' cohorts are harvested.
/// </summary>
public void SelectCohorts(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
// TODO
throw new System.NotImplementedException();
}
示例13: Youngest
//---------------------------------------------------------------------
/// <summary>
/// Selects the youngest of a species' cohorts for harvesting.
/// </summary>
public static void Youngest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
// Youngest is last.
isHarvested[isHarvested.Count - 1] = true;
}
示例14: Oldest
//---------------------------------------------------------------------
/// <summary>
/// Selects the oldest of a species' cohorts for harvesting.
/// </summary>
public static void Oldest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
// Oldest is first.
isHarvested[0] = true;
}
示例15:
//---------------------------------------------------------------------
void ISpeciesCohortsDisturbance.Damage(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
cohortSelector.Harvest(cohorts, isDamaged);
}