/[xulu]/trunk.bakup/defaults/plugin/GeoModelCodeGenerator/StepModel.tpl
ViewVC logotype

Annotation of /trunk.bakup/defaults/plugin/GeoModelCodeGenerator/StepModel.tpl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (hide annotations)
Wed Feb 25 11:54:01 2009 UTC (15 years, 9 months ago) by mojays
Original Path: trunk/defaults/plugin/GeoModelCodeGenerator/StepModel.tpl
File size: 3601 byte(s)
First Commit, corresponds to Revision 1008 of Wikisquare-SVN 
1 mojays 2 package $FIELD(Package);
2    
3     $LOOP(ClassImport)
4     import $FIELD(ClassImport);
5     $ENDLOOP()
6    
7     /**
8     * Diese Klasse stellt eine Implementierung des Modells {@linkplain $FIELD(ModelName)}
9     * dar. Dieses benoetigt $FIELD(ResourceCount) Ressourcen, welche durch den
10     * {@linkplain $FIELD(ModelCMName)} spezifiziert werden:
11     * <ol>
12     $LOOP(Resources)
13     * <li><b>$FIELD(ResourceDesc) ({@code $FIELD(ResourceVar)}):</b>
14     * @todo Detaillierte Ressoucen-Beschreibung einfuegen
15     * </li>
16     $ENDLOOP() * </ol>
17     * @see $FIELD(ModelCMName)
18     * @author automatisch generiert durch {@link edu.bonn.xulu.plugin.appl.GeoModelCodeGenerator}
19     * @version 1.0
20     */
21     public class $FIELD(ModelName) extends $FIELD(ModelSuperClass) {
22     /** Speichert den ContentManager fuer das Modell.
23     * @see $FIELD(ModelCMName) */
24     protected $FIELD(ModelCMName) contManager;
25    
26     //********** Lese/Schreibrechte, die fuer den gesamten ***********
27     //********** Modellanlauf gehalten werden muessen ***********
28     $LOOP(PropertyResources)
29     private $FIELD(ResourceAccessType) $FIELD(ResourceAccessVar) = null; // $FIELD(PropertyResourceDesc)
30     $ENDLOOP()
31     //**************** Variablen mit denen gearbeitet wird *******************
32     $LOOP(Resources)
33     private $FIELD(ResourceVarType) $FIELD(ResourceVar) = null; // $FIELD(ResourceDesc)
34     $ENDLOOP()
35     /**
36     * Erzeugt eine neue Instanz des Modells.
37     */
38     public $FIELD(ModelName)() {
39     super( new $FIELD(ModelCMName)() );
40     contManager = ($FIELD(ModelCMName))super.contManager;
41     }
42    
43    
44     ////////////////////////////////////////////////////////////////////////
45     /////////////// Implementierung von AbstractXuluModel //////////////
46     ////////////////////////////////////////////////////////////////////////
47     /**
48     * Initialisiert das Model, indem die Ressourcen aus dem ContentManager
49     * geladen werden und mit Lese/Schreib-Rechten versehen werden. Zudem
50     * werden Referenzen auf die Ressourcen in lokalen Variablen
51     * gespeichert, um waehrend des Modellablaufs effizienter darauf zugreifen
52     * zu koennen.
53     */
54     public void performModelInit() {
55     if ( contManager == null )
56     return;
57     // Zugriffsrechte aus Ressourcen/Propertys holen
58     $LOOP(PropertyResources)
59     $FIELD(ResourceAccessVar) = null;
60     if ( contManager.getResource($FIELD(PropertyResourceNo)).getData() != null )
61     $FIELD(ResourceAccessVar) = (($FIELD(PropertyResourceType))contManager.getResource($FIELD(PropertyResourceNo)).getData())$FIELD(ResourceAccessAlloc);
62     $ENDLOOP()
63     // Variablen belegen mit denen gearbeitet wird
64     $LOOP(Resources)
65     $FIELD(ResourceVar) = $FIELD(ResourceVarAlloc);
66     $ENDLOOP()
67     // WICHTIG:
68     // An dieser Stelle die Anzahl an Modellschritten (aus einer
69     // Ressource) zuweisen, die das Modell laufen soll!
70     // Sonst laeuft das Modell nicht an!!
71     this.stepCount = 0;
72     }
73    
74     /**
75     * Gibt die Lese/Schreibrechte auf das Ein- und Ausgaberaster wieder frei.
76     * Interne Ressourcen brauchen keine aus dem Speicher entfernt werden.
77     */
78     public void performModelDispose() {
79     // Ressourcen wieder freigeben
80     $LOOP(PropertyResources)
81     releaseAccess($FIELD(ResourceAccessVar));
82     $ENDLOOP() }
83    
84     /**
85     * Fuehrt einen Schritt des Modellablaufs durch.
86     * @param stepNo zu modellierender Schritt (beginnend bei 1!)
87     */
88     public void performModelStep(int stepNo) {
89     // @todo An dieser Stelle den Ablauf eines Modellschritts implementieren
90    
91     // Ueber die Variable 'statusOut' koennen Status-Ausgaben im
92     // Modellfenster ausgegeben werden.
93     }
94     }

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26