Skip to content

Commit

Permalink
GSAGH-499: split function
Browse files Browse the repository at this point in the history
  • Loading branch information
SandeepArup committed Jan 31, 2025
1 parent ae6ac0d commit 59f05a3
Showing 1 changed file with 20 additions and 16 deletions.
36 changes: 20 additions & 16 deletions GsaGH/Components/4_Analysis/CreateAnalysisTask.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using System.Threading.Tasks;

using GH_IO.Serialization;
using GH_IO.Types;

using Grasshopper.Kernel;
using Grasshopper.Kernel.Parameters;
Expand Down Expand Up @@ -244,29 +245,32 @@ protected override void SolveInternal(IGH_DataAccess da) {

da.SetData(0, new GsaAnalysisTaskGoo(gsaAnalysisTask));
}
private bool StaticAndPdeltaCases(List<GH_ObjectWrapper> objectWrapper, ref List<GsaAnalysisCase> analysisCases) {
analysisCases = new List<GsaAnalysisCase>();
for (int i = 0; i < objectWrapper.Count; i++) {
GH_ObjectWrapper ghTypeWrapper = objectWrapper[i];
if (ghTypeWrapper == null) {
this.AddRuntimeWarning($"Analysis Case input (index: {i}) is null and has been ignored");
continue;
}

if (ghTypeWrapper.Value is GsaAnalysisCaseGoo goo) {
analysisCases.Add(goo.Value.Duplicate());
} else {
UnsupportedValueError(ghTypeWrapper);
return false;
}
}
return true;
}
private bool GetAnalysisCases(IGH_DataAccess da, out List<GsaAnalysisCase> cases) {
cases = null;
switch (_analysisTaskType) {
case AnalysisTaskType.Static:
case AnalysisTaskType.StaticPDelta:
var ghTypes = new List<GH_ObjectWrapper>();
if (da.GetDataList(_casesParamIndex, ghTypes)) {
cases = new List<GsaAnalysisCase>();
for (int i = 0; i < ghTypes.Count; i++) {
GH_ObjectWrapper ghTypeWrapper = ghTypes[i];
if (ghTypeWrapper == null) {
this.AddRuntimeWarning($"Analysis Case input (index: {i}) is null and has been ignored");
continue;
}

if (ghTypeWrapper.Value is GsaAnalysisCaseGoo goo) {
cases.Add(goo.Value.Duplicate());
} else {
UnsupportedValueError(ghTypeWrapper);
return false;
}
}
if (da.GetDataList(_casesParamIndex, ghTypes) && !StaticAndPdeltaCases(ghTypes, ref cases)) {
return false;
}
break;
case AnalysisTaskType.Footfall:
Expand Down

0 comments on commit 59f05a3

Please sign in to comment.