LotSizingDataModel.Core 2.0.1
Core domain model, shared abstractions and XML-serializable entities.
Loading...
Searching...
No Matches
IPlanningHorizonAware.cs
Go to the documentation of this file.
2
3/// <summary>
4/// Defines a model object containing data indexed by planning period.
5///
6/// Implementations must resize all their period-dependent data when
7/// the planning horizon changes.
8///
9/// This interface enables bulk resizing of time-dependent properties
10/// across multiple related objects.
11/// </summary>
12public interface IPlanningHorizonAware
13{
14 /// <summary>
15 /// Gets the number of planning periods currently represented
16 /// by the object's time-dependent data.
17 /// </summary>
18 int PlanningHorizon { get; }
19
20 /// <summary>
21 /// Resizes every time-dependent series contained in the object.
22 ///
23 /// Existing values must be preserved whenever possible.
24 /// Newly created periods receive an appropriate default value.
25 /// Values beyond a shortened horizon are discarded.
26 /// </summary>
27 /// <param name="periodCount">
28 /// New number of planning periods.
29 /// </param>
30 void ResizeTimeSeries(int periodCount);
31}
Defines a model object containing data indexed by planning period.
int PlanningHorizon
Gets the number of planning periods currently represented by the object's time-dependent data.
void ResizeTimeSeries(int periodCount)
Resizes every time-dependent series contained in the object.