View Javadoc

1   /*
2    * Copyright 2006 - 2012 Christina Bohk and Roland Ewald
3    *  
4    * Licensed under the Apache License, Version 2.0 (the "License"); 
5    * you may not use this file except in compliance with the License. 
6    * You may obtain a copy of the License at 
7    *  
8    *  http://www.apache.org/licenses/LICENSE-2.0
9    *  
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
13   * See the License for the specific language governing permissions and 
14   * limitations under the License. 
15   */
16  package p3j.pppm;
17  
18  import james.core.model.IModel;
19  
20  import java.util.List;
21  import java.util.Map;
22  
23  import p3j.pppm.parameters.ParameterInstance;
24  import p3j.pppm.sets.SetType;
25  
26  /**
27   * Currently this is a simple marker interface.
28   * 
29   * 
30   * @author Christina Bohk
31   * @author Roland Ewald
32   * 
33   */
34  public interface IProjectionModel extends IModel {
35  
36  	/**
37  	 * Gets the number of projected years.
38  	 * 
39  	 * @return the number of years
40  	 */
41  	int getYears();
42  
43  	/**
44  	 * Gets the number of projected generations.
45  	 * 
46  	 * @return the number of generations
47  	 */
48  	int getGenerations();
49  
50  	/**
51  	 * Gets the map parameter instance => Settype.
52  	 * 
53  	 * @return the map from parameter instance to Settypes
54  	 */
55  	Map<ParameterInstance, SetType> getInstanceSetTypes();
56  
57  	/**
58  	 * Gets the maximum age.
59  	 * 
60  	 * @return the maximum age
61  	 */
62  	int getMaximumAge();
63  
64  	/**
65  	 * Returns list of all {@link SetType} objects, the custom ones and the
66  	 * default one.
67  	 * 
68  	 * @return list of all {@link SetType} objects defined in this scenario (at
69  	 *         least the default {@link SetType} is defined)
70  	 */
71  	List<SetType> getAllSetTypes();
72  
73  }