Example #1
0
        protected static void StaticRegisterJobStep(StepID CurrentStep, IIgorModule Module, IgorRuntimeUtils.JobStepFunc StepFunction)
        {
            List <JobStep> NewSteps = new List <JobStep>();
            StepID         Priority = new StepID();

            foreach (KeyValuePair <StepID, List <JobStep> > CurrentPriority in JobSteps)
            {
                if (CurrentPriority.Key.StepPriority == CurrentStep.StepPriority)
                {
                    NewSteps = CurrentPriority.Value;
                    Priority = CurrentPriority.Key;

                    break;
                }
            }

            NewSteps.Add(new JobStep(Module, StepFunction));

            if (JobSteps.ContainsKey(Priority))
            {
                JobSteps[Priority] = NewSteps;
            }
            else
            {
                JobSteps.Add(CurrentStep, NewSteps);
            }
        }
Example #2
0
 public virtual void RegisterJobStep(StepID CurrentStep, IIgorModule Module, IgorRuntimeUtils.JobStepFunc StepFunction)
 {
     StaticRegisterJobStep(CurrentStep, Module, StepFunction);
 }