Nun gibt es durchaus Szenarien, wo die gleichen Berechnungen mit gleichen Eingängen und Ausgängen aber unterschiedlichen Datenquellen durchgeführt werden. Beispiel ist hier gerade der Beschattungsbaustein. Dieser müsste zumindest für jede Fassadenseite einmal angelegt werden (bei mir noch deutlich mehr).
Meine Frage ist: Könnte man prinzipiell den Bausteinen jeweils einen Hash an Datenquellen vorsetzen und diese auf die entsprechenden Ausgänge mappen - quasi einen "Hash-Baustein" entwickeln, welcher bei Bedarf den Baustein dann eben x-mal durchrechnet und das Ergebnis an die entsprechend gematchten Ausgänge weitergibt ?
Zum Beispiel ist die Datenquelle meines Beschattungsplugins ein hash in folgender Form (abgespeckt und gekürzt):
Code: Alles auswählen
my @AlleRolllaeden;
push @AlleRolllaeden, { name => "WZ Erker Mitte", winkel1 => 9, winkel2 => 169, wertZuBesch => 40, wertAufBesch => 0,wertZuNacht => 60, wertAufNacht => 0, sonnenAufUnter => 0, raumSollTemp => 22, GAraumSollTemp => "", GAraumIstTemp => "2/5/30", GAaufzu => "2/2/80", GAfahren => "2/2/83", GAstatus => "2/2/81", GAsperre => "2/2/89", Sperre => "Global_Jalousie_WZ_Erker_Mitte_Sperre" };
push @AlleRolllaeden, { name => "WZ Erker Seite", winkel1 => 9, winkel2 => 169, wertZuBesch => 40, wertAufBesch => 0,wertZuNacht => 60, wertAufNacht => 0, sonnenAufUnter => 0, raumSollTemp => 22, GAraumSollTemp => "", GAraumIstTemp => "2/5/30", GAaufzu => "2/2/70", GAfahren => "2/2/73", GAstatus => "2/2/71", GAsperre => "2/2/79", Sperre => "Global_Jalousie_WZ_Erker_Seite_Sperre" };
Code: Alles auswählen
foreach my $element (@AlleRolllaeden) {.....};