ibaPDA Plugin Руководство
касательно интерфейса IPluginFunction приводятся в следующей главе. Эта функция
вызывается системой ibaPDA для каждого выражения, в котором она используется.
3.2.4 Функция ClearAllFunctionObjects()
Эта функция вызывается, если сбор данных в ibaPDA остановлен. Она позволяет
плагину очистить ресурсы, которые были задействованы для вычислений.
3.3 Реализация IPluginFunction
Функция плагина должна реализовываться классом, производным от IPluginFunction.
Функция всегда имеет один результат типа double и может иметь несколько
аргументов типа double. В синтаксисе C# определение интерфейса IPluginFunction
выглядит следующим образом:
public interface IPluginFunction
{
void Initialize(Int64 xBegin, Int64 xBase, double[] inputs);
double Calculate(Int64 x, double[] inputs);
}
А в синтаксисе VB.NET – таким образом:
Public Interface IPluginFunction
Sub Initialize(ByVal xBegin As Int64, ByVal xBase As Int64,
ByVal inputs As Double())
Function Calculate(ByVal x As Int64, ByVal inputs As Double())
As Double
End Interface
3.3.1 Функция Initialize()
Эта функция вызывается системой ibaPDA один раз при запуске сбора данных.
xBegin - это штамп времени первого измеренного значения, выраженного в виде
количества 100-наносекундных тактов. xBase - это опорное время всех входов и
выхода функции. Оно также выражается как количество 100-наносекундных тактов.
Массив входов содержит первое измеренное значение каждого аргумента функции.
Эта функция должна выполнять все инициализации, необходимые для вычисления.
3.3.2 Функция Calculate()
Эта функция вызывается для каждого измеренного значения. На входе она получает
значения аргументов и вычисляет результат функции. Штамп времени x - это
текущий штамп времени (всегда выражается в 100-наносекундных тактах). Массив
входов содержит значения каждого аргумента функции на текущем штампе времени
x. Эта функция будет часто вызываться в процессе сбора данных ibaPDA, поэтому
она должна быть максимально оптимизирована.
3.4 Установка плагина
Установить плагин, чтобы система ibaPDA могла его использовать, - очень просто.
Плагин нужно просто скопировать в правильную папку. Библиотеку dll нужно
скопировать во вложенную папку Plugins в папке сервера ibaPDA (по умолчанию:
c:\Program Files\iba\ibaPda\Server\Plugins). Все dll, находящиеся в папке Plugins,
загружаются системой ibaPDA при запуске. Если вы копируете dll в папку во время,
когда ibaPDA уже запущена, то необходимо выполнить перезапуск системы, чтобы
новый плагин загрузился.
Версия 1.3 9