Accelerator Independent Data Access / PVAccess 2.0
AIDA-PVA is the latest version of the AIDA framework. Built on top of EPICS 7 it enables client applications to programmatically access and manage any device or database on the SLAC Network using simple channel names.
Loading...
Searching...
No Matches
aidapvainit.m
1global aidapvainitdone;
2aidapva;
3
4if isempty(aidapvainitdone)
5 % setupjavapath(strcat(getenv('PHYSICS_TOP'),'/release/aida-pva-client/R1.0.0/lib/aida-pva-client.jar'))
6 % setupjavapath(strcat(getenv('PHYSICS_TOP'),'/release/epics-pvaccess/R1.0.0/lib/epics-pvaccess.jar'))
7 setupjavapath(strcat(getenv('PWD'),'/aida-pva-client.jar'))
8 setupjavapath(strcat(getenv('PWD'),'/epics-pvaccess.jar'))
9
10 % aida-pva-client imports - imports all methods but not enums, so we need to add enums indivudually later
11 import('edu.stanford.slac.aida.client.AidaPvaClientUtils.*');
12 import('edu.stanford.slac.aida.client.AidaType.*');
13
14 AIDA_BOOLEAN = [edu.stanford.slac.aida.client.AidaType.AIDA_BOOLEAN];
15 AIDA_BYTE = [edu.stanford.slac.aida.client.AidaType.AIDA_BYTE];
16 AIDA_CHAR = [edu.stanford.slac.aida.client.AidaType.AIDA_CHAR];
17 AIDA_SHORT = [edu.stanford.slac.aida.client.AidaType.AIDA_SHORT];
18 AIDA_INTEGER = [edu.stanford.slac.aida.client.AidaType.AIDA_INTEGER];
19 AIDA_LONG = [edu.stanford.slac.aida.client.AidaType.AIDA_LONG];
20 AIDA_FLOAT = [edu.stanford.slac.aida.client.AidaType.AIDA_FLOAT];
21 AIDA_DOUBLE = [edu.stanford.slac.aida.client.AidaType.AIDA_DOUBLE];
22 AIDA_STRING = [edu.stanford.slac.aida.client.AidaType.AIDA_STRING];
23 AIDA_BOOLEAN_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_BOOLEAN_ARRAY];
24 AIDA_BYTE_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_BYTE_ARRAY];
25 AIDA_CHAR_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_CHAR_ARRAY];
26 AIDA_SHORT_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_SHORT_ARRAY];
27 AIDA_INTEGER_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_INTEGER_ARRAY];
28 AIDA_LONG_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_LONG_ARRAY];
29 AIDA_FLOAT_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_FLOAT_ARRAY];
30 AIDA_DOUBLE_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_DOUBLE_ARRAY];
31 AIDA_STRING_ARRAY = [edu.stanford.slac.aida.client.AidaType.AIDA_STRING_ARRAY];
32 AIDA_TABLE = [edu.stanford.slac.aida.client.AidaType.AIDA_TABLE];
33
34 pvaSetM = @(channel, value) ML(edu.stanford.slac.aida.client.AidaPvaClientUtils.pvaSet(channel, value));
35
36 % Globals above only work when not inside a function so we need to do the same thing inside a function
37 % to define these globals for use in any function. After this you simply need run `aidapva` to
38 % import symbols into your scope.
39 aidapvafninit
40
41 aidapvainitdone = 1;
42 disp 'Aida PVA client initialization completed';
43end