示例#1
0
 public CDMethod(String Name, String Type)
 {
     this.Name                  = Name;
     this.ReturnType            = Type;
     this.CallCountInOALProgram = 0;
     this.OALCode               = "";
     this.Parameters            = new List <CDParameter>();
     this.ExecutableCode        = null;
 }
示例#2
0
        public override Boolean Execute(OALProgram OALProgram, EXEScope Scope)
        {
            //OALProgram.RequestNextStep();
            OALProgram.ThreadSyncer.RequestStep(this, Scope, null);

            //Filip, ak mas null v executablecode tak vrat true inak toto dole
            EXEScopeMethod ExecutableCode = OALProgram.ExecutionSpace.getClassByName(this.CalledClass).getMethodByName(this.CalledMethod).ExecutableCode;

            if (ExecutableCode != null)
            {
                return(ExecutableCode.SynchronizedExecute(OALProgram, Scope));
            }

            return(true);
        }
示例#3
0
        public override Boolean PreExecute(AnimationCommandStorage ACS, OALProgram OALProgram, EXEScope Scope)
        {
            OALProgram.ThreadSyncer.RequestStep(this, Scope, ACS);

            //ACS.AddAnimationStep(new AnimationCommand(Scope, this));

            //Filip, ak mas null v executablecode tak vrat true inak toto dole
            EXEScopeMethod ExecutableCode = OALProgram.ExecutionSpace.getClassByName(this.CalledClass).getMethodByName(this.CalledMethod).ExecutableCode;

            if (ExecutableCode != null)
            {
                return(ExecutableCode.PreExecute(ACS, OALProgram, Scope));
            }

            return(true);
        }