Пример #1
0
        public double GetSignal()
        {
            IntPtr    pAddressOfFunctionToCall = DllMethods.GetProcAddress(_pDll, "getInputs");
            GetInputs getInputs =
                (GetInputs)Marshal.GetDelegateForFunctionPointer(pAddressOfFunctionToCall, typeof(GetInputs));

            return(getInputs(_portNumber));
        }
Пример #2
0
        public void SetSignal(double value)
        {
            IntPtr    pAddressOfFunctionToCall = DllMethods.GetProcAddress(_pDll, "setInputs");
            SetInputs setinputs =
                (SetInputs)Marshal.GetDelegateForFunctionPointer(pAddressOfFunctionToCall, typeof(SetInputs));

            setinputs(_portNumber, value);
        }
Пример #3
0
        private void Terminate()
        {
            IntPtr    pAddressOfFunctionToCall = DllMethods.GetProcAddress(_pDll, "terminate");
            terminate Terminate =
                (terminate)Marshal.GetDelegateForFunctionPointer(pAddressOfFunctionToCall, typeof(terminate));

            Terminate();
        }
Пример #4
0
        private void Initialze()
        {
            IntPtr     pAddressOfFunctionToCall = DllMethods.GetProcAddress(_pDll, "initialize");
            initialize Initialize =
                (initialize)Marshal.GetDelegateForFunctionPointer(pAddressOfFunctionToCall, typeof(initialize));

            Initialize();
        }
Пример #5
0
        public void Step()
        {
            foreach (var inSignal in _inSignals)
            {
                inSignal.Update();
            }
            IntPtr pAddressOfFunctionToCall = DllMethods.GetProcAddress(_pDll, "step");
            step   Step =
                (step)Marshal.GetDelegateForFunctionPointer(pAddressOfFunctionToCall, typeof(step));

            Step();
            foreach (var outSignal in _outSignals)
            {
                outSignal.Update();
            }
        }