Exemplo n.º 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);
            }
        }
Exemplo n.º 2
0
 public JobStep(IIgorModule Module, IgorRuntimeUtils.JobStepFunc Function)
 {
     ModuleInst = Module;
     StepFunction = Function;
 }
Exemplo n.º 3
0
 public virtual void RegisterJobStep(StepID CurrentStep, IIgorModule Module, IgorRuntimeUtils.JobStepFunc StepFunction)
 {
     StaticRegisterJobStep(CurrentStep, Module, StepFunction);
 }